View Source on Github
Inherits from
Usable, Editable, Importable, Expression, HasNameAttributes
alias
Editable | None
The alias of the imported symbol, if one exists.extended
Returns a SymbolGroup of all extended nodes associated with this element.
extended_source
str
file
The file object that this Editable instance belongs to.
filepath
str
from_file
SourceFile | None
Returns the SourceFile that an Import is importing from.full_name
str | None
function_calls
Returns a list of all function calls contained within this expression.
import_specifier
Returns the specific editable text representation of the import identifier within the
import_statement
The statement that this import is part of.
import_type
The type of import, indicating how the symbol is imported.
imported_exports
Returns the enumerated list of symbols imported from a module import.
imported_symbol
Returns the symbol directly being imported, including an indirect import and an External
is_dynamic
bool
module
Editable | None
The module from which the symbol is being imported, if applicable.name
str | None
namespace
str | None
parent
The parent node of this Editable instance.
parent_class
Class | None
Find the class this node is contained inparent_function
Function | None
Find the function this node is contained inparent_statement
Statement | None
Find the statement this node is contained inresolved_symbol
Returns the symbol, source file, or external module that this import ultimately resolves
resolved_value
Returns the resolved type of an Expression.
source
str
symbol_name
Editable | None
The name of the symbol being imported. For instance import a as b has a symbol_name of a.to_file
SourceFile that this import resides in.
to_file_id
NodeId
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
dependencies
Returns a list of symbols that this symbol depends on.View Source on Github
Parameters
usage_types
UsageType | None
default:UsageType.DIRECT
max_depth
int | None
default:None
Returns
edit
Replace the source of thisEditable
with new_src
.
View Source on Github
Parameters
new_src
str
required
fix_indentation
bool
default:False
priority
int
default:0
dedupe
bool
default:True
Returns
None
find
Find and return matching nodes or substrings within an Editable instance.View Source on Github
Parameters
strings_to_match
Union[list[str], str]
required
exact
bool
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
list[str]
required
fuzzy_match
bool
default:False
Returns
flag
Adds a visual flag comment to the end of this Editable’s source text.View Source on Github
Returns
get_name
Returns the name node of the object.View Source on Github
Returns
The name node of the object. Can be a Name node for simple names, a ChainedAttribute for names with namespaces (e.g., a.b), or None if the object has no name.
get_variable_usages
Returns Editables for all TreeSitter nodes corresponding to instances of variable usageView Source on Github
Parameters
var_name
str
required
fuzzy_match
bool
default:False
Returns
insert_after
Inserts code after this node.View Source on Github
Parameters
new_src
str
required
fix_indentation
bool, optional
default:False
newline
bool, optional
default:True
priority
int, optional
default:0
dedupe
bool, optional
default:True
Returns
None
insert_before
Inserts text before this node’s source with optional indentation and newline handling.View Source on Github
Parameters
new_src
str
required
fix_indentation
bool
default:False
newline
bool
default:True
priority
int
default:0
dedupe
bool
default:True
Returns
None
is_aliased_import
Returns True if this import is aliased.View Source on Github
Returns
bool
is_child_of
Checks if this node is a descendant of the given editable instance in the AST.View Source on Github
Returns
bool
is_module_import
Returns True if this import is importing an entire module/file.View Source on Github
Returns
bool
is_reexport
Returns true if the Import object is also an Export object.View Source on Github
Returns
bool
is_symbol_import
Returns True if this import is importing a symbol rather than a module.View Source on Github
Returns
bool
is_wildcard_import
Returns True if the import symbol is a wildcard import.View Source on Github
Returns
bool
is_wrapped_in
Check if this node is contained another node of the given classView Source on Github
Returns
bool
parent_of_type
Find the first ancestor of the node of the given type. Does not return itselfView Source on Github
Returns
Editable | None
parent_of_types
Find the first ancestor of the node of the given type. Does not return itselfView Source on Github
Returns
Editable | None
reduce_condition
Reduces an editable to the following conditionView Source on Github
Returns
None
remove
Remove this import from the import statement.View Source on Github
Parameters
delete_formatting
bool, optional
default:True
priority
int, optional
default:0
dedupe
bool, optional
default:True
Returns
None
rename
Renames the import symbol and updates all its usages throughout the codebase.View Source on Github
Parameters
new_name
str
required
priority
int, optional
default:0
Returns
tuple[NodeId, NodeId]
replace
Search and replace occurrences of text within this node’s source and its extended nodes.View Source on Github
Parameters
old
str
required
new
str
required
count
int, optional
default:-1
is_regex
bool, optional
default:False
priority
int, optional
default:0
Returns
int
search
Returns a list of all regex match ofregex_pattern
, similar to python’s re.search().
View Source on Github
Parameters
regex_pattern
str
required
include_strings
bool
default:True
include_comments
bool
default:True
Returns
A list of Editable objects corresponding to the matches found.
set_import_module
Sets the module of an import.View Source on Github
Parameters
new_module
str
required
Returns
None
set_import_symbol_alias
Sets alias or name of an import at the declaration level.View Source on Github
Parameters
new_alias
str
required
Returns
None
set_name
Sets the name of a code element.View Source on Github
Parameters
name
str
required
Returns
None
symbol_usages
Returns a list of symbols that use or import the exportable object.View Source on Github
Parameters
usage_types
UsageType | None
default:None
Returns
usages
Returns a list of usages of the exportable object.View Source on Github
Parameters
usage_types
UsageType | None
default:None
Returns
A sorted list of Usage objects representing where this exportable is used, ordered by source location in reverse.