class documentation

Class representing an :class:`ast.arguments` node. An :class:`Arguments` node represents that arguments in a function definition. >>> import astroid >>> node = astroid.extract_node('def foo(bar): pass') >>> node <FunctionDef.foo l.1 at 0x7effe1db8198> >>> node.args <Arguments l.1 at 0x7effe1db82e8>

Method __init__ :param vararg: The name of the variable length arguments.
Method default_value Get the default value for an argument.
Method find_argname Get the index and :class:`AssignName` node for given name.
Method format_args Get the arguments formatted as string.
Method get_children Get the child nodes below this node.
Method is_argument Check if the given name is defined in the arguments.
Method postinit Do some setup after initialisation.
Class Variable assigned_stmts Returns the assigned statement (non inferred) according to the assignment type. See astroid/protocols.py for actual implementation.
Class Variable col_offset The column that this node appears on in the source code.
Class Variable end_col_offset The end column this node appears on in the source code.
Class Variable end_lineno The last line this node appears on in the source code.
Class Variable lineno The line that this node appears on in the source code.
Instance Variable annotations The type annotations of arguments that can be passed positionally.
Instance Variable args The names of the required arguments.
Instance Variable defaults The default values for arguments that can be passed positionally.
Instance Variable kw_defaults The default values for keyword arguments that cannot be passed positionally.
Instance Variable kwarg The name of the variable length keyword arguments.
Instance Variable kwargannotation The type annotation for the variable length keyword arguments.
Instance Variable kwonlyargs The keyword arguments that cannot be passed positionally.
Instance Variable kwonlyargs_annotations The type annotations of arguments that cannot be passed positionally.
Instance Variable posonlyargs The arguments that can only be passed positionally.
Instance Variable posonlyargs_annotations The type annotations of arguments that can only be passed positionally.
Instance Variable type_comment_args The type annotation, passed by a type comment, of each argument.
Instance Variable type_comment_kwonlyargs The type annotation, passed by a type comment, of each keyword only argument.
Instance Variable type_comment_posonlyargs The type annotation, passed by a type comment, of each positional argument.
Instance Variable vararg The name of the variable length arguments.
Instance Variable varargannotation The type annotation for the variable length arguments.
Property arguments Get all the arguments for this node, including positional only and positional and keyword
Property fromlineno The first line that this node appears on in the source code.
Method _get_arguments_data Get the arguments as dictionary with information about typing and defaults.
Method _infer_name Undocumented
Class Variable _astroid_fields Node attributes that contain child nodes.
Class Variable _other_fields Node attributes that do not contain child nodes.

Inherited from AssignTypeMixin:

Method assign_type Undocumented
Method _get_filtered_stmts Method used in filter_stmts.

Inherited from NodeNG (via AssignTypeMixin):

Method __repr__ Undocumented
Method __str__ Undocumented
Method accept Visit this node using the given visitor.
Method as_string Get the source code that this node represents.
Method block_range Get a range from the given line number to where this node ends.
Method bool_value Determine the boolean value of this node.
Method callable Whether this node defines something that is callable.
Method child_sequence Search for the sequence that contains this child.
Method eq Undocumented
Method frame The first parent frame node.
Method has_base Check if this node inherits from the given type.
Method infer Get a generator of the inferred values.
Method inferred Get a list of the inferred values.
Method instantiate_class Instantiate an instance of the defined class.
Method last_child An optimized version of list(get_children())[-1].
Method locate_child Find the field of this node that contains the given child.
Method next_sibling The next sibling statement node.
Method node_ancestors Yield parent, grandparent, etc until there are no more.
Method nodes_of_class Get the nodes (including this one or below) of the given types.
Method op_left_associative Undocumented
Method op_precedence Undocumented
Method parent_of Check if this node is the parent of the given node.
Method previous_sibling The previous sibling statement.
Method repr_tree Get a string representation of the AST from this node.
Method root Return the root node of the syntax tree.
Method scope The first parent node defining a new scope.
Method set_local Define that the given name is declared in the given statement node.
Method statement The first parent node, including self, marked as statement node.
Class Variable is_function Whether this node indicates a function.
Class Variable is_lambda Undocumented
Class Variable is_statement Whether this node indicates a statement.
Class Variable optional_assign Whether this node optionally assigns a variable.
Instance Variable parent The parent node in the syntax tree.
Instance Variable position Position of keyword(s) and name.
Property tolineno The last line that this node appears on in the source code.
Method _fixed_source_line Attempt to find the line that this node appears on.
Method _get_assign_nodes Undocumented
Method _get_name_nodes Undocumented
Method _get_return_nodes_skip_functions Undocumented
Method _get_yield_nodes_skip_lambdas Undocumented
Method _infer We don't know how to resolve a statement by default.
Method _repr_name Get a name for nice representation.
Class Variable _explicit_inference Undocumented
Class Variable _other_other_fields Attributes that contain AST-dependent fields.
def __init__(self, vararg: str|None = None, kwarg: str|None = None, parent: NodeNG|None = None): (source)

:param vararg: The name of the variable length arguments. :param kwarg: The name of the variable length keyword arguments. :param parent: The parent node in the syntax tree.

def default_value(self, argname): (source)

Get the default value for an argument. :param argname: The name of the argument to get the default value for. :type argname: str :raises NoDefault: If there is no default value defined for the given argument.

def find_argname(self, argname, rec=False): (source)

Get the index and :class:`AssignName` node for given name. :param argname: The name of the argument to search for. :type argname: str :param rec: Whether or not to include arguments in unpacked tuples in the search. :type rec: bool :returns: The index and node for the argument. :rtype: tuple(str or None, AssignName or None)

def format_args(self, *, skippable_names: set[str]|None = None) -> str: (source)

Get the arguments formatted as string. :returns: The formatted arguments. :rtype: str

def get_children(self): (source)

Get the child nodes below this node.

def is_argument(self, name) -> bool: (source)

Check if the given name is defined in the arguments. :param name: The name to check for. :type name: str :returns: Whether the given name is defined in the arguments,

def postinit(self, args: list[AssignName]|None, defaults: list[NodeNG]|None, kwonlyargs: list[AssignName], kw_defaults: list[NodeNG|None]|None, annotations: list[NodeNG|None], posonlyargs: list[AssignName]|None = None, kwonlyargs_annotations: list[NodeNG|None]|None = None, posonlyargs_annotations: list[NodeNG|None]|None = None, varargannotation: NodeNG|None = None, kwargannotation: NodeNG|None = None, type_comment_args: list[NodeNG|None]|None = None, type_comment_kwonlyargs: list[NodeNG|None]|None = None, type_comment_posonlyargs: list[NodeNG|None]|None = None): (source)

Do some setup after initialisation. :param args: The names of the required arguments. :param defaults: The default values for arguments that can be passed positionally. :param kwonlyargs: The keyword arguments that cannot be passed positionally. :param posonlyargs: The arguments that can only be passed positionally. :param kw_defaults: The default values for keyword arguments that cannot be passed positionally. :param annotations: The type annotations of arguments that can be passed positionally. :param kwonlyargs_annotations: The type annotations of arguments that cannot be passed positionally. This should always be passed in Python 3. :param posonlyargs_annotations: The type annotations of arguments that can only be passed positionally. This should always be passed in Python 3. :param varargannotation: The type annotation for the variable length arguments. :param kwargannotation: The type annotation for the variable length keyword arguments. :param type_comment_args: The type annotation, passed by a type comment, of each argument. :param type_comment_args: The type annotation, passed by a type comment, of each keyword only argument. :param type_comment_args: The type annotation, passed by a type comment, of each positional argument.

assigned_stmts: ClassVar[AssignedStmtsCall[Arguments]] = (source)

Returns the assigned statement (non inferred) according to the assignment type. See astroid/protocols.py for actual implementation.

col_offset: None = (source)

The column that this node appears on in the source code.

end_col_offset: None = (source)

The end column this node appears on in the source code. Note: This is after the last symbol.

end_lineno: None = (source)

The last line this node appears on in the source code.

The line that this node appears on in the source code.

annotations = (source)

The type annotations of arguments that can be passed positionally.

The names of the required arguments. Can be None if the associated function does not have a retrievable signature and the arguments are therefore unknown. This can happen with (builtin) functions implemented in C that have incomplete signature information.

defaults = (source)

The default values for arguments that can be passed positionally.

kw_defaults = (source)

The default values for keyword arguments that cannot be passed positionally. See .args for why this can be None.

The name of the variable length keyword arguments.

kwargannotation = (source)

The type annotation for the variable length keyword arguments.

kwonlyargs = (source)

The keyword arguments that cannot be passed positionally.

kwonlyargs_annotations = (source)

The type annotations of arguments that cannot be passed positionally.

posonlyargs = (source)

The arguments that can only be passed positionally.

posonlyargs_annotations = (source)

The type annotations of arguments that can only be passed positionally.

type_comment_args = (source)

The type annotation, passed by a type comment, of each argument. If an argument does not have a type comment, the value for that argument will be None.

type_comment_kwonlyargs = (source)

The type annotation, passed by a type comment, of each keyword only argument. If an argument does not have a type comment, the value for that argument will be None.

type_comment_posonlyargs = (source)

The type annotation, passed by a type comment, of each positional argument. If an argument does not have a type comment, the value for that argument will be None.

The name of the variable length arguments.

varargannotation = (source)

The type annotation for the variable length arguments.

@cached_property
arguments = (source)

Get all the arguments for this node, including positional only and positional and keyword

@cached_property
fromlineno = (source)

The first line that this node appears on in the source code. :type: int or None

def _get_arguments_data(self) -> tuple[dict[str, tuple[str|None, str|None]], dict[str, tuple[str|None, str|None]]]: (source)

Get the arguments as dictionary with information about typing and defaults. The return tuple contains a dictionary for positional and keyword arguments with their typing and their default value, if any. The method follows a similar order as format_args but instead of formatting into a string it returns the data that is used to do so.

def _infer_name(self, frame, name): (source)

Undocumented

_astroid_fields: tuple[str, ...] = (source)

Node attributes that contain child nodes. This is redefined in most concrete classes.

_other_fields: tuple[str, ...] = (source)

Node attributes that do not contain child nodes.