Documentation menu

FunctionCall

Abstract representation of a function invocation, e.g. in Python: ``` def f(): g() # FunctionCall ```

View source on GitHub

Inherits from

Expression, HasName, Editable

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: 0

Number 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_srcrequired

The new source text to replace the current text with.

fix_indentationdefault: False

If True, adjusts the indentation of `new_src` to match the current text's indentation level. Defaults to False.

prioritydefault: 0

The priority of the edit transaction. Higher priority edits are applied first. Defaults to 0.

dedupedefault: True

If 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_matchrequired

One or more strings to search for.

exactdefault: False

If 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_matchrequired

A list of strings to search for in string literals.

fuzzy_matchdefault: False

If 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

noderequired

The Editable node that potentially represents a function call.

parentdefault: None

The 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_idxrequired

The 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_namerequired

The 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_namerequired

The variable name to search for.

fuzzy_matchdefault: False

If 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_srcrequired

The source code to insert after this node.

fix_indentationdefault: False

Whether to adjust the indentation of new_src to match the current node. Defaults to False.

newlinedefault: True

Whether to add a newline before the new_src. Defaults to True.

prioritydefault: 0

Priority of the insertion transaction. Defaults to 0.

dedupedefault: True

Whether 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_srcrequired

The text to insert before this node.

fix_indentationdefault: False

Whether to fix the indentation of new_src to match the current node. Defaults to False.

newlinedefault: True

Whether to add a newline after new_src. Defaults to True.

prioritydefault: 0

Transaction priority for managing multiple edits. Defaults to 0.

dedupedefault: True

Whether 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: True

Whether to delete associated formatting nodes. Defaults to True.

prioritydefault: 0

Priority level for the removal operation. Defaults to 0.

dedupedefault: True

Whether 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

namerequired

The 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

oldrequired

The text or pattern to search for.

newrequired

The text to replace matches with.

countdefault: -1

Maximum number of replacements to make. Defaults to -1 (replace all).

is_regexdefault: False

Whether to treat 'old' as a regex pattern. Defaults to False.

prioritydefault: 0

Priority of the replacement operation. Defaults to 0.

Returns

The total number of replacements made.

Returns a list of all regex match of regex_pattern, similar to python's re.search().

View source on GitHub

Parameters

regex_patternrequired

The regular expression pattern to search for.

include_stringsdefault: True

When False, excludes the contents of string literals from the search. Defaults to True.

include_commentsdefault: True

When 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

namerequired

The name of the parameter/argument to set.

valuerequired

The value to set the argument to.

create_on_missingdefault: True

If True, creates a new keyword argument if it doesn't exist. Defaults to True.

override_existingdefault: True

If 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

namerequired

The new name to set for the object.

Returns