Documentation Index
Fetch the complete documentation index at: https://graph-sitter.com/llms.txt
Use this file to discover all available pages before exploring further.
View Source on Github
Inherits from
PyHasBlock, SourceFile, HasBlock, Usable, File, Expression, Importable, Editable, HasNameAttributes
classes
Returns all Classes in the file.
code_block
Represents the block of code contained in the file.
content
strdecorators
Returns a list of decorators associated with this symbol.
directory
Directory | None
Returns the directory that contains this file.docstring
PyCommentGroup | None
Gets the function's docstring.extended
Returns a SymbolGroup of all extended nodes associated with this element.
extended_source
strextension
strfile
A property that returns the file object for non-source files.
file_path
strfilepath
strfull_name
str | Nonefunction_calls
Returns all function calls within the code block and its decorators.
functions
Returns all Functions in the file.
global_vars
Returns all GlobalVars in the file.
import_module_name
strimport_statements
Returns all ImportStatements in the file, where each import statement can contain
importers
Returns all imports that directly imports this file as a module.
imports
List of all Imports in this file.
inbound_imports
Returns all imports that are importing symbols contained in this file.
is_binary
boolis_decorated
boolname
str | Noneowners
set[str]parent
The parent node of this Editable instance.
parent_class
PyClass | None
Find the class this node is contained inparent_function
PyFunction | None
Find the function this node is contained inparent_statement
Statement | None
Find the statement this node is contained inpath
Pathprogramming_language
The programming language of the file. Set to ProgrammingLanguage.PYTHON.
resolved_value
Returns the resolved type of an Expression.
source
strstart_byte
intsymbols_sorted_topologically
Returns all Symbols in the file, sorted topologically (parents first). Robust to
variable_usages
Returns Editables for all TreeSitter node instances of variable usages within this node's
Methods
add_decorator
Adds a decorator to a function or method.View Source on Github
Parameters
new_decorator
strrequired
skip_if_exists
bool, optionaldefault:False
Returns
booladd_import
Adds an import to the file.View Source on Github
Parameters
imp
PySymbol | str
required
alias
str | Nonedefault:None
import_type
default:ImportType.UNKNOWN
is_type_import
booldefault:False
Returns
PyImport | None
add_symbol
Addssymbol to the file.
View Source on Github
Parameters
symbol
required
should_export
bool, optionaldefault:True
Returns
PySymbol | None
add_symbol_from_source
Adds a symbol to a file from a string representation.View Source on Github
Parameters
source
strrequired
Returns
Noneancestors
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 | Nonedefault:None
Returns
edit
Replace the source of this file with new_src.View Source on Github
Parameters
new_src
strrequired
fix_indentation
booldefault:False
priority
intdefault:0
dedupe
booldefault:True
Returns
Nonefind
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
booldefault:False
Returns
A list of Editable instances that match the search criteria.
find_by_byte_range
Finds all editable objects that overlap with the given byte range in the file.View Source on Github
Parameters
range
Rangerequired
Returns
A list of all Editable objects that overlap with the given range.
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
booldefault:False
Returns
flag
Adds a visual flag comment to the end of this Editable’s source text.View Source on Github
Returns
get_class
Returns a specific Class by full name. Returns None if not found.View Source on Github
Parameters
name
strrequired
Returns
PyClass | None
get_extensions
Returns the file extensions associated with Python files.View Source on Github
Returns
list[str]get_function
Returns a specific Function by name.View Source on Github
Parameters
name
strrequired
Returns
PyFunction | None
get_global_var
Returns a specific global var by name. Returns None if not found.View Source on Github
Parameters
name
strrequired
Returns
PyAssignment | None
get_import
Returns the import with matching alias. Returns None if not found.View Source on Github
Parameters
symbol_alias
strrequired
Returns
PyImport | None
get_import_insert_index
Determines the index position where a new import statement should be inserted in a Python file.View Source on Github
Parameters
import_string
strrequired
Returns
int | Noneget_import_string
Generates an import string for a symbol.View Source on Github
Parameters
alias
str | None, optionaldefault:None
module
str | None, optionaldefault:None
import_type
ImportType , optional
default:ImportType.UNKNOWN
is_type_import
bool, optionaldefault:False
Returns
strget_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_symbol
Gets a symbol by its name from the file.View Source on Github
Parameters
name
strrequired
Returns
PySymbol | None
get_variable_usages
Returns Editables for all TreeSitter nodes corresponding to instances of variable usageView Source on Github
Parameters
var_name
strrequired
fuzzy_match
booldefault:False
Returns
has_import
Returns True if the file has an import with the given alias.View Source on Github
Parameters
symbol_alias
strrequired
Returns
boolinsert_after
Inserts code after this node.View Source on Github
Parameters
new_src
strrequired
fix_indentation
bool, optionaldefault:False
newline
bool, optionaldefault:True
priority
int, optionaldefault:0
dedupe
bool, optionaldefault:True
Returns
Noneinsert_before
Inserts text before this node’s source with optional indentation and newline handling.View Source on Github
Parameters
new_src
strrequired
fix_indentation
booldefault:False
newline
booldefault:True
priority
intdefault:0
dedupe
booldefault:True
Returns
Noneis_child_of
Checks if this node is a descendant of the given editable instance in the AST.View Source on Github
Returns
boolis_wrapped_in
Check if this node is contained another node of the given classView Source on Github
Returns
boolparent_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
Noneremove
Removes the file from the file system and graph.View Source on Github
Returns
Nonerename
Renames a symbol and updates all its references in the codebase.View Source on Github
Parameters
new_name
strrequired
priority
intdefault:0
Returns
tuple[NodeId, NodeId]replace
Replace occurrences of text in the file.View Source on Github
Parameters
old
strrequired
new
strrequired
count
intdefault:-1
is_regex
booldefault:False
priority
intdefault:0
Returns
intsearch
Returns a list of all regex match ofregex_pattern, similar to python’s re.search().
View Source on Github
Parameters
regex_pattern
strrequired
include_strings
booldefault:True
include_comments
booldefault:True
Returns
A list of Editable objects corresponding to the matches found.
set_docstring
Sets or updates a docstring for a Python function or class.View Source on Github
Parameters
docstring
strrequired
auto_format
bool, optionaldefault:True
clean_format
bool, optionaldefault:True
force_multiline
bool, optionaldefault:False
Returns
Noneset_name
Sets the name of a code element.View Source on Github
Parameters
name
strrequired
Returns
Nonesymbol_can_be_added
Checks if a Python symbol can be added to this Python source file.View Source on Github
Parameters
symbol
required
Returns
boolsymbol_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
symbols
Returns all Symbols in the file, sorted by position in the file.View Source on Github
Returns
A list of all top-level symbols in the file, sorted by their position in the file. Symbols can be one of the following types: - Symbol: Base symbol class - TClass: Class definition - TFunction: Function definition - TGlobalVar: Global variable assignment - TInterface: Interface definition
update_filepath
Renames the file and updates all imports to point to the new location.View Source on Github
Parameters
new_filepath
strrequired
Returns
Noneusages
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.