View Source on Github

Inherits from

SymbolGroup, Editable

Attributes

extended

Returns a SymbolGroup of all extended nodes associated with this element.

extended_source

str

Returns the source text representation of all extended nodes.

file

The file object that this Editable instance belongs to.

file_node_id

NodeId

filepath

str

The file path of the file that this Editable instance belongs to.

function_calls

list[ FunctionCall ]

Returns a list of all function calls contained within this expression.

next_named_sibling

Editable | None

Returns the next named sibling of the last symbol in the group.

next_sibling

Editable | None

Returns the next sibling of the last symbol in the symbol group.

node_type

NodeType

parent

parent_class

Class | None

Find the class this node is contained in

parent_function

Function | None

Find the function this node is contained in

parent_statement

Statement | None

Find the statement this node is contained in

source

str

Get the source code content of the node.

symbols

list[ Editable ]

Returns the list of symbols in the group.

ts_node

TSNode

variable_usages

list[ Editable ]

Returns Editables for all TreeSitter node instances of variable usages within this node's

Methods

ancestors

Find all ancestors of the node of the given type. Does not return itself

View Source on Github

Returns

list[ Editable ]

edit

Edit the source for this Collection instance.

View Source on Github

Returns

None

find

Search for substrings in the given symbols that match strings_to_match.

View Source on Github

Parameters

strings_to_match
list[str] | str
required

The string or list of strings to search for.

exact
bool
default:False

If True, only return nodes that exactly match the query.

Returns

list[ Editable ]

A list of Editable objects representing each match found.

find_string_literals

Search for string literals matching given strings in the SymbolGroup.

View Source on Github

Parameters

strings_to_match
list[str]
required

List of strings to search for in string literals.

fuzzy_match
bool, optional
default:False

If True, performs fuzzy matching instead of exact matching.

Returns

list[ Editable ]

List of Editable nodes representing the matching string literals found within the symbols.

flag

Adds a visual flag comment to the end of this Editable’s source text.

View Source on Github

Returns

get_variable_usages

Returns Editables for all TreeSitter nodes corresponding to instances of variable usage

View Source on Github

Parameters

var_name
str
required

The variable name to search for.

fuzzy_match
bool
default:False

If True, matches variables where var_name is a substring. If False, requires exact match. Defaults to False.

Returns

list[ Editable ]

List of Editable objects representing variable usage nodes matching the given name.

index

Return the index of the first occurrence of value.

View Source on Github

Returns

int

insert

Adds value to the container that this node represents

View Source on Github

Returns

None

insert_after

Inserts source code after this node in the codebase.

View Source on Github

Parameters

new_src
str
required

The source code to insert.

fix_indentation
bool, optional
default:False

Adjust indentation to match current text.

newline
bool, optional
default:True

Add a newline before the inserted code.

priority
int, optional
default:0

Priority of the edit operation.

dedupe
bool, optional
default:True

Deduplicate identical edits.

Returns

None

insert_before

Inserts source code before this symbol group.

View Source on Github

Parameters

new_src
str
required

The source code to insert.

fix_indentation
bool, optional
default:False

Whether to adjust the indentation of the inserted code to match the current code. Defaults to False.

newline
bool, optional
default:True

Whether to add a newline after the inserted code. Defaults to True.

priority
int, optional
default:0

The priority of this edit operation. Higher priority edits are applied first. Defaults to 0.

dedupe
bool, optional
default:True

Whether to prevent duplicate insertions of the same code. Defaults to True.

Returns

None

is_wrapped_in

Check if this node is contained another node of the given class

View Source on Github

Returns

bool

parent_of_type

Find the first ancestor of the node of the given type. Does not return itself

View Source on Github

Returns

Editable | None

reduce_condition

Reduces an editable to the following condition

View Source on Github

Returns

None

remove

Removes an element from a Collection.

View Source on Github

Parameters

value
Editable | None
required

The element to remove from the Collection. If None, delegates to parent class.

Returns

None

This method doesn't return anything.

replace

Replaces all instances of a string with a new string in all symbols within the group.

View Source on Github

Parameters

old
str
required

The string to be replaced.

new
str
required

The string to replace with.

count
int, optional
default:-1

Maximum number of replacements to make. Defaults to -1 (replace all).

priority
int, optional
default:0

Priority of the replacement operation. Defaults to 0.

Returns

int

Number of replacements made.

Searches for regex matches in the codebase.

View Source on Github

Parameters

regex_pattern
str
required

The regular expression pattern to search for.

include_strings
bool, optional
default:True

Whether to include string literals in the search. Defaults to True.

include_comments
bool, optional
default:True

Whether to include comments in the search. Defaults to True.

Returns

list[ Editable ]

A list of Editable objects representing matched text nodes in the codebase.

Was this page helpful?