View Source on Github
Inherits from
Expression, EditableAttributes
assignment_statements
Returns list of top level assignment statements in the code block.
assignments
Returns all assignments in the code block across all nesting levels.
attributes
Returns a list of top level class attribute statements in the code block.
comments
Gets list of top level comments in the code block.
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 a list of all function calls in the code block.
if_blocks
Returns a list of top level if statements in the code block.
level
The indentation level of the code block.
local_var_assignments
Returns all local variable assignment in the code block, for all nest levels.
parent
The parent node of this Editable instance.
parent_block
The parent code block containing this block, or None if it is a top-level block.
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.
return_statements
Gets all return statements at the top level of the code block.
source
Text representation of the Editable instance.
statements
Gets a view of the top-level statements in the code block.
symbol_statements
Returns list of top level symbol statements in the code block.
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
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_assignments
Returns a list of assignments with the specified variable name.View Source on Github
Parameters
var_name
required
Returns
A list of Assignment objects that match the variable name.
get_attributes
Returns attributes from the code block, with the option to include or exclude privateView Source on Github
Parameters
private
required
Returns
A list of attribute statements matching the privacy criteria.
get_comment
Gets the first comment statement containing a specific text string.View Source on Github
Parameters
comment_src
required
Returns
The first comment statement containing the search text, or None if no matching comment is found.
get_local_var_assignment
Returns the first code statement that assigns a local variable with the specified name.View Source on Github
Parameters
var_name
required
Returns
The first matching local variable assignment, or None if no match is found.
get_local_var_assignments
Returns all instances of local variable assignments that match the specified variableView Source on Github
Parameters
var_name
required
fuzzy_match
default:False
Returns
List of Assignment objects representing local variable assignments that match the specified name criteria.
get_statements
Returns all statements of a given type up to the specified block level.View Source on Github
Parameters
statement_type
default:None
max_level
default:None
Returns
get_variable_usages
Returns all instances of variable usages in a code block.View Source on Github
Parameters
var_name
required
fuzzy_match
default:False
Returns
A sorted list of variable usage instances as Editable objects.
indent
Adjusts the indentation level of the entire code block.View Source on Github
Parameters
level
required
Returns
insert_after
Inserts source code at the bottom of the code block.View Source on Github
Parameters
new_src
required
fix_indentation
default:True
newline
default:True
Returns
insert_before
Inserts new source code at the top of the code block.View Source on Github
Parameters
new_src
required
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
Reduces an editable to the following conditionView Source on Github
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
rename_variable_usages
Renames all instances of variable usages in the code block.View Source on Github
Parameters
old_var_name
required
new_var_name
required
fuzzy_match
default:False
Returns
This method mutates the code block in place.
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.
unwrap
Extracts a code block from its parent wrapper container by removing the wrappingView Source on Github
Returns
wrap
Wraps a code block with a statement and indents it.View Source on Github
Parameters
before_src
required
after_src
default:""