Represents a single code statement, e.g. a function definition, an assignment, an if/else statement, etc.
Returns a SymbolGroup of all extended nodes associated with this element.
str
Returns the source text representation of all extended nodes.
The file object that this Editable instance belongs to.
str
The file path of the file that this Editable instance belongs to.
Returns a list of all function calls contained within this expression.
int
The 0-based index of the statement in the parent code block.
Returns all nested code blocks within the statement.
Returns a list of statement collections within nested code blocks.
The parent node of this Editable instance.
Find the class this node is contained in
Find the function this node is contained in
Find the statement this node is contained in
Returns the resolved type of an Expression.
str
Text representation of the Editable instance.
Returns Editables for all TreeSitter node instances of variable usages within this node's
Find all ancestors of the node of the given type. Does not return itself
Replace the source of this Editable
with new_src
.
str
The new source text to replace the current text with.
bool
If True, adjusts the indentation of `new_src` to match the current text's indentation level. Defaults to False.
int
The priority of the edit transaction. Higher priority edits are applied first. Defaults to 0.
bool
If True, deduplicates identical transactions. Defaults to True.
None
Find and return matching nodes or substrings within an Editable instance.
Union[list[str], str]
One or more strings to search for.
bool
If True, only return nodes whose source exactly matches one of the strings_to_match.
A list of Editable instances that match the search criteria.
Returns a list of string literals within this node’s source that match any of the given
list[str]
A list of strings to search for in string literals.
bool
If True, matches substrings within string literals. If False, only matches exact strings. Defaults to False.
Adds a visual flag comment to the end of this Editable’s source text.
Returns Editables for all TreeSitter nodes corresponding to instances of variable usage
str
The variable name to search for.
bool
If True, matches variables where var_name is a substring. If False, requires exact match. Defaults to False.
Inserts code after this node.
str
The source code to insert after this node.
bool, optional
Whether to adjust the indentation of new_src to match the current node. Defaults to False.
bool, optional
Whether to add a newline before the new_src. Defaults to True.
int, optional
Priority of the insertion transaction. Defaults to 0.
bool, optional
Whether to deduplicate identical transactions. Defaults to True.
None
Inserts text before this node’s source with optional indentation and newline handling.
str
The text to insert before this node.
bool
Whether to fix the indentation of new_src to match the current node. Defaults to False.
bool
Whether to add a newline after new_src. Defaults to True.
int
Transaction priority for managing multiple edits. Defaults to 0.
bool
Whether to deduplicate identical transactions. Defaults to True.
None
Checks if this node is a descendant of the given editable instance in the AST.
bool
Check if this node is contained another node of the given class
bool
Find the first ancestor of the node of the given type. Does not return itself
Find the first ancestor of the node of the given type. Does not return itself
Reduces an editable to the following condition
None
Deletes this Node and its related extended nodes (e.g. decorators, comments).
bool
Whether to delete surrounding whitespace and formatting. Defaults to True.
int
Priority of the removal transaction. Higher priority transactions are executed first. Defaults to 0.
bool
Whether to deduplicate removal transactions at the same location. Defaults to True.
None
Search and replace occurrences of text within this node’s source and its extended nodes.
str
The text or pattern to search for.
str
The text to replace matches with.
int, optional
Maximum number of replacements to make. Defaults to -1 (replace all).
bool, optional
Whether to treat 'old' as a regex pattern. Defaults to False.
int, optional
Priority of the replacement operation. Defaults to 0.
int
The total number of replacements made.
Returns a list of all regex match of regex_pattern
, similar to python’s re.search().
str
The regular expression pattern to search for.
bool
When False, excludes the contents of string literals from the search. Defaults to True.
bool
When False, excludes the contents of comments from the search. Defaults to True.
A list of Editable objects corresponding to the matches found.
Represents a single code statement, e.g. a function definition, an assignment, an if/else statement, etc.
Returns a SymbolGroup of all extended nodes associated with this element.
str
Returns the source text representation of all extended nodes.
The file object that this Editable instance belongs to.
str
The file path of the file that this Editable instance belongs to.
Returns a list of all function calls contained within this expression.
int
The 0-based index of the statement in the parent code block.
Returns all nested code blocks within the statement.
Returns a list of statement collections within nested code blocks.
The parent node of this Editable instance.
Find the class this node is contained in
Find the function this node is contained in
Find the statement this node is contained in
Returns the resolved type of an Expression.
str
Text representation of the Editable instance.
Returns Editables for all TreeSitter node instances of variable usages within this node's
Find all ancestors of the node of the given type. Does not return itself
Replace the source of this Editable
with new_src
.
str
The new source text to replace the current text with.
bool
If True, adjusts the indentation of `new_src` to match the current text's indentation level. Defaults to False.
int
The priority of the edit transaction. Higher priority edits are applied first. Defaults to 0.
bool
If True, deduplicates identical transactions. Defaults to True.
None
Find and return matching nodes or substrings within an Editable instance.
Union[list[str], str]
One or more strings to search for.
bool
If True, only return nodes whose source exactly matches one of the strings_to_match.
A list of Editable instances that match the search criteria.
Returns a list of string literals within this node’s source that match any of the given
list[str]
A list of strings to search for in string literals.
bool
If True, matches substrings within string literals. If False, only matches exact strings. Defaults to False.
Adds a visual flag comment to the end of this Editable’s source text.
Returns Editables for all TreeSitter nodes corresponding to instances of variable usage
str
The variable name to search for.
bool
If True, matches variables where var_name is a substring. If False, requires exact match. Defaults to False.
Inserts code after this node.
str
The source code to insert after this node.
bool, optional
Whether to adjust the indentation of new_src to match the current node. Defaults to False.
bool, optional
Whether to add a newline before the new_src. Defaults to True.
int, optional
Priority of the insertion transaction. Defaults to 0.
bool, optional
Whether to deduplicate identical transactions. Defaults to True.
None
Inserts text before this node’s source with optional indentation and newline handling.
str
The text to insert before this node.
bool
Whether to fix the indentation of new_src to match the current node. Defaults to False.
bool
Whether to add a newline after new_src. Defaults to True.
int
Transaction priority for managing multiple edits. Defaults to 0.
bool
Whether to deduplicate identical transactions. Defaults to True.
None
Checks if this node is a descendant of the given editable instance in the AST.
bool
Check if this node is contained another node of the given class
bool
Find the first ancestor of the node of the given type. Does not return itself
Find the first ancestor of the node of the given type. Does not return itself
Reduces an editable to the following condition
None
Deletes this Node and its related extended nodes (e.g. decorators, comments).
bool
Whether to delete surrounding whitespace and formatting. Defaults to True.
int
Priority of the removal transaction. Higher priority transactions are executed first. Defaults to 0.
bool
Whether to deduplicate removal transactions at the same location. Defaults to True.
None
Search and replace occurrences of text within this node’s source and its extended nodes.
str
The text or pattern to search for.
str
The text to replace matches with.
int, optional
Maximum number of replacements to make. Defaults to -1 (replace all).
bool, optional
Whether to treat 'old' as a regex pattern. Defaults to False.
int, optional
Priority of the replacement operation. Defaults to 0.
int
The total number of replacements made.
Returns a list of all regex match of regex_pattern
, similar to python’s re.search().
str
The regular expression pattern to search for.
bool
When False, excludes the contents of string literals from the search. Defaults to True.
bool
When False, excludes the contents of comments from the search. Defaults to True.
A list of Editable objects corresponding to the matches found.