FunctionCall
Abstract representation of a function invocation, e.g. in Python: ``` def f(): g() # FunctionCall ```
View source on GitHub
Inherits from
Attributes
args
Returns a list of arguments passed into the function invocation.
attribute_chain
Returns a list of elements in the chainedAttribute that the function call belongs in.
base
Returns the base object of this function call chain.
call_chain
Returns a list of all function calls in this function call chain, including this call. Does not include calls made after this one.
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.
full_name
Returns the full name of the object, including the namespace path.
function_calls
Returns a list of all function calls contained within this function call.
function_definition
Returns the resolved function definition that is being called.
function_definitions
Returns a list of callable objects that could potentially be the target of this function
is_awaited
Determine if this function call is ultimately awaited in the TypeScript AST.
name
Retrieves the base name of the object without namespace prefixes.
parent
The parent node of this Editable instance.
parent_class
Find the class this node is contained in
parent_function
Retrieves the parent function of the current function call.
parent_statement
Find the statement this node is contained in
predecessor
Returns the previous function call in a function call chain.
promise_chain
Return the promise chain associated with this function call, if a then call is found.
resolved_value
Returns the resolved type of an Expression.
source
Gets the source code representation of this FunctionCall.
successor
Returns the next function call in a function call chain.
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 itself
View source on GitHub
Returns
asyncify
Converts the function call to an async function call by wrapping it with 'await'.
View source on GitHub
Returns
convert_args_to_kwargs
Converts positional arguments in a function call to keyword arguments.
View source on GitHub
Parameters
excludedefault: 0Number of leading positional arguments to exclude from conversion. Defaults to 0.
Returns
edit
Replace the source of this Editable with new_src.
View source on GitHub
Parameters
new_srcrequiredThe new source text to replace the current text with.
fix_indentationdefault: FalseIf True, adjusts the indentation of `new_src` to match the current text's indentation level. Defaults to False.
prioritydefault: 0The priority of the edit transaction. Higher priority edits are applied first. Defaults to 0.
dedupedefault: TrueIf True, deduplicates identical transactions. Defaults to True.
Returns
find
Find and return matching nodes or substrings within an Editable instance.
View source on GitHub
Parameters
strings_to_matchrequiredOne or more strings to search for.
exactdefault: FalseIf True, only return nodes whose source exactly matches one of the strings_to_match.
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 given
View source on GitHub
Parameters
strings_to_matchrequiredA list of strings to search for in string literals.
fuzzy_matchdefault: FalseIf True, matches substrings within string literals. If False, only matches exact strings. Defaults to 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
from_usage
Creates a FunctionCall object from an Editable instance that represents a function call.
View source on GitHub
Parameters
noderequiredThe Editable node that potentially represents a function call.
parentdefault: NoneThe parent node for the new FunctionCall. If None, uses the parent from the input node.
Returns
A new FunctionCall object if the input node represents a function call, None otherwise.
get_arg_by_index
Returns the Argument with the given index from the function call's argument list.
View source on GitHub
Parameters
arg_idxrequiredThe index of the argument to retrieve.
Returns
The Argument object at the specified index, or None if the index is out of bounds.
get_arg_by_parameter_name
Returns an argument by its parameter name.
View source on GitHub
Parameters
param_namerequiredThe name of the parameter to search for.
Returns
The matching argument if found, None otherwise.
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 usage
View source on GitHub
Parameters
var_namerequiredThe variable name to search for.
fuzzy_matchdefault: FalseIf True, matches variables where var_name is a substring. If False, requires exact match. Defaults to 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_srcrequiredThe source code to insert after this node.
fix_indentationdefault: FalseWhether to adjust the indentation of new_src to match the current node. Defaults to False.
newlinedefault: TrueWhether to add a newline before the new_src. Defaults to True.
prioritydefault: 0Priority of the insertion transaction. Defaults to 0.
dedupedefault: TrueWhether to deduplicate identical transactions. Defaults to True.
Returns
insert_before
Inserts text before this node's source with optional indentation and newline handling.
View source on GitHub
Parameters
new_srcrequiredThe text to insert before this node.
fix_indentationdefault: FalseWhether to fix the indentation of new_src to match the current node. Defaults to False.
newlinedefault: TrueWhether to add a newline after new_src. Defaults to True.
prioritydefault: 0Transaction priority for managing multiple edits. Defaults to 0.
dedupedefault: TrueWhether to deduplicate identical transactions. Defaults to True.
Returns
is_child_of
Checks if this node is a descendant of the given editable instance in the AST.
View source on GitHub
Returns
is_wrapped_in
Check if this node is contained another node of the given class
View source on GitHub
Returns
parent_of_type
Find the first ancestor of the node of the given type. Does not return itself
View source on GitHub
Returns
parent_of_types
Find the first ancestor of the node of the given type. Does not return itself
View source on GitHub
Returns
reduce_condition
Reduces an editable to the following condition
View source on GitHub
Returns
remove
Removes a node and optionally its related extended nodes.
View source on GitHub
Parameters
delete_formattingdefault: TrueWhether to delete associated formatting nodes. Defaults to True.
prioritydefault: 0Priority level for the removal operation. Defaults to 0.
dedupedefault: TrueWhether to deduplicate identical removals. Defaults to True.
Returns
rename
Sets the name of an object and updates all its usages.
View source on GitHub
Parameters
namerequiredThe new name to assign to the object.
Returns
replace
Search and replace occurrences of text within this node's source and its extended nodes.
View source on GitHub
Parameters
oldrequiredThe text or pattern to search for.
newrequiredThe text to replace matches with.
countdefault: -1Maximum number of replacements to make. Defaults to -1 (replace all).
is_regexdefault: FalseWhether to treat 'old' as a regex pattern. Defaults to False.
prioritydefault: 0Priority of the replacement operation. Defaults to 0.
Returns
The total number of replacements made.
search
Returns a list of all regex match of regex_pattern, similar to python's re.search().
View source on GitHub
Parameters
regex_patternrequiredThe regular expression pattern to search for.
include_stringsdefault: TrueWhen False, excludes the contents of string literals from the search. Defaults to True.
include_commentsdefault: TrueWhen False, excludes the contents of comments from the search. Defaults to True.
Returns
A list of Editable objects corresponding to the matches found.
set_kwarg
Set a keyword argument in a function call.
View source on GitHub
Parameters
namerequiredThe name of the parameter/argument to set.
valuerequiredThe value to set the argument to.
create_on_missingdefault: TrueIf True, creates a new keyword argument if it doesn't exist. Defaults to True.
override_existingdefault: TrueIf True, modifies the value of existing argument. Defaults to True.
Returns
set_name
Sets the name of a code element.
View source on GitHub
Parameters
namerequiredThe new name to set for the object.