View Source on Github
Inherits from
Statement, Expression, EditableAttributes
alternative_blocks
Returns a list of alternative if/elif/else blocks for the current block.
condition
The condition expression for the if block. None if the block is an else block.
consequence_block
The code block that is executed if the condition is True.
else_statement
Returns the else block within the if-statement.
extended
Returns a SymbolGroup of all extended nodes associated with this element.
extended_source
Returns the source text representation of all extended nodes.
file
The file object that this Editable instance belongs to.
filepath
The file path of the file that this Editable instance belongs to.
function_calls
Returns all function calls within the if block statement and its alternative blocks.
index
The 0-based index of the statement in the parent code block.
is_elif_statement
Indicates whether the current block is an elif block.
is_else_statement
Indicates if the current block is an else block in an if/else statement chain.
is_if_statement
Returns whether the current block is an if block.
nested_code_blocks
Returns all nested code blocks within an if/elif/else statement block.
nested_statements
Returns a list of statement collections within nested code blocks.
parent
The parent node of this Editable instance.
parent_class
Find the class this node is contained in
parent_function
Find the function this node is contained in
parent_statement
Find the statement this node is contained in
resolved_value
Returns the resolved type of an Expression.
source
Text representation of the Editable instance.
variable_usages
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 itselfView Source on Github
Returns
edit
Replace the source of thisEditable with new_src.
View Source on Github
Parameters
new_src
required
fix_indentation
default:False
priority
default:0
dedupe
default:True
Returns
elif_statements
Returns all elif blocks within the if block.View Source on Github
Returns
A list of elif block statements. Empty list if no elif blocks exist.
find
Find and return matching nodes or substrings within an Editable instance.View Source on Github
Parameters
strings_to_match
required
exact
default:False
Returns
A list of Editable instances that match the search criteria.
find_string_literals
Returns a list of string literals within this node’s source that match any of the givenView Source on Github
Parameters
strings_to_match
required
fuzzy_match
default:False
Returns
A list of Editable objects representing the matching string literals.
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 usageView Source on Github
Parameters
var_name
required
fuzzy_match
default:False
Returns
List of Editable objects representing variable usage nodes matching the given name.
insert_after
Inserts code after this node.View Source on Github
Parameters
new_src
required
fix_indentation
default:False
newline
default:True
priority
default:0
dedupe
default:True
Returns
insert_before
Inserts text before this node’s source with optional indentation and newline handling.View Source on Github
Parameters
new_src
required
fix_indentation
default:False
newline
default:True
priority
default:0
dedupe
default:True
Returns
is_wrapped_in
Check if this node is contained another node of the given classView Source on Github
Returns
parent_of_type
Find the first ancestor of the node of the given type. Does not return itselfView Source on Github
Returns
parent_of_types
Find the first ancestor of the node of the given type. Does not return itselfView Source on Github
Returns
reduce_condition
Simplifies a conditional block by reducing its condition to a boolean value.View Source on Github
Parameters
bool_condition
required
Returns
remove
Deletes this Node and its related extended nodes (e.g. decorators, comments).View Source on Github
Parameters
delete_formatting
default:True
priority
default:0
dedupe
default:True
Returns
replace
Search and replace occurrences of text within this node’s source and its extended nodes.View Source on Github
Parameters
old
required
new
required
count
default:-1
is_regex
default:False
priority
default:0
Returns
The total number of replacements made.
search
Returns a list of all regex match ofregex_pattern, similar to python’s re.search().
View Source on Github
Parameters
regex_pattern
required
include_strings
default:True
include_comments
default:True
Returns
A list of Editable objects corresponding to the matches found.