tyro._parsers¶
Interface for generating argparse.ArgumentParser() definitions from callables.
Module Contents¶
- tyro._parsers.T¶
- class tyro._parsers.LazyParserSpecification[source]¶
Lazy wrapper that defers full ParserSpecification creation until needed.
Stores lightweight metadata (description) for fast help text generation, while deferring expensive parser construction until actually needed.
- evaluate() ParserSpecification[source]¶
Get the full ParserSpecification, creating it if needed.
- Return type:
- class tyro._parsers.ArgWithContext[source]¶
-
- source_parser: ParserSpecification¶
ParserSpecification that directly contains this argument.
- local_root_parser: ParserSpecification¶
Furthest ancestor of source_parser within the same (sub)command.
- class tyro._parsers.ParserSpecification[source]¶
Each parser contains a list of arguments and optionally some subparsers.
- f: Callable¶
- markers: Set[tyro.conf._markers._Marker]¶
- args: List[tyro._arguments.ArgumentDefinition]¶
- field_list: List[tyro._fields.FieldDefinition]¶
- child_from_prefix: Dict[str, ParserSpecification]¶
- subparsers_from_intern_prefix: Dict[str, SubparsersSpecification]¶
- subparser_parent: ParserSpecification | None¶
- static from_callable_or_type(f: Callable[Ellipsis, T], markers: Set[tyro.conf._markers._Marker], description: str | None, parent_classes: Set[Type[Any]], default_instance: T | tyro._singleton.PropagatingMissingType | tyro._singleton.NonpropagatingMissingType, intern_prefix: str, extern_prefix: str, subcommand_prefix: str, support_single_arg_types: bool, prog_suffix: str) ParserSpecification[source]¶
Create a parser definition from a callable or type.
- Parameters:
f (Callable[Ellipsis, T])
markers (Set[tyro.conf._markers._Marker])
description (str | None)
parent_classes (Set[Type[Any]])
default_instance (Union[T, tyro._singleton.PropagatingMissingType, tyro._singleton.NonpropagatingMissingType])
intern_prefix (str)
extern_prefix (str)
subcommand_prefix (str)
support_single_arg_types (bool)
prog_suffix (str)
- Return type:
- get_args_including_children(local_root: ParserSpecification | None = None) list[ArgWithContext][source]¶
Get all arguments in this parser and its children.
Does not include arguments in subparsers.
- Parameters:
local_root (ParserSpecification | None)
- Return type:
- tyro._parsers.handle_field(field: tyro._fields.FieldDefinition, parent_classes: Set[Type[Any]], intern_prefix: str, extern_prefix: str, subcommand_prefix: str, prog_suffix: str) tyro._arguments.ArgumentDefinition | ParserSpecification | SubparsersSpecification[source]¶
Determine what to do with a single field definition.
- Parameters:
field (tyro._fields.FieldDefinition)
parent_classes (Set[Type[Any]])
intern_prefix (str)
extern_prefix (str)
subcommand_prefix (str)
prog_suffix (str)
- Return type:
Union[tyro._arguments.ArgumentDefinition, ParserSpecification, SubparsersSpecification]
- class tyro._parsers.SubparsersSpecification[source]¶
Structure for defining subparsers. Each subparser is a parser with a name.
- parser_from_name: Dict[str, LazyParserSpecification]¶
- default_parser: ParserSpecification | None¶
- default_instance: Any¶
- options: Tuple[tyro._typing.TypeForm[Any] | Callable, Ellipsis]¶
- static from_field(field: tyro._fields.FieldDefinition, parent_classes: Set[Type[Any]], intern_prefix: str, extern_prefix: str, prog_suffix: str) SubparsersSpecification | ParserSpecification | None[source]¶
From a field: return either a subparser specification, a parser specification for subcommands when tyro.conf.AvoidSubcommands is used and a default is set, or None if the field does not create a subparser.
- Parameters:
field (tyro._fields.FieldDefinition)
parent_classes (Set[Type[Any]])
intern_prefix (str)
extern_prefix (str)
prog_suffix (str)
- Return type: