pyTooling.CLIAbstraction.Argument
This module implements command line arguments without prefix character(s).
Variables
Classes
CommandLineArgument
: Base-class for all Argument classes.ExecutableArgument
: Represents the executable.DelimiterArgument
: Represents a delimiter symbol like--
.NamedArgument
: Base-class for all command line arguments with a name.ValuedArgument
: Base-class for all command line arguments with a value.StringArgument
: Represents a simple string argument.StringListArgument
: Represents a list of string argument (StringArgument
).PathArgument
: Represents a single path argument.PathListArgument
: Represents a list of path arguments (PathArgument
).
Variables
- pyTooling.CLIAbstraction.Argument.ValueT
The type of value in a valued argument.
~ValueT
Classes
- class pyTooling.CLIAbstraction.Argument.CommandLineArgument(*args: Any, **kwargs: Any)[source]
Base-class for all Argument classes.
An argument instance can be converted via
AsArgument
to a single string value or a sequence of string values (tuple) usable e.g. withsubprocess.Popen
. Each argument class implements at least onepattern
parameter to specify how argument are formatted.There are multiple derived formats supporting:
commands
→Command
simple names (flags)
→Flag
,BooleanFlag
simple values (vlaued flags)
→StringArgument
,PathArgument
names and values
→ValuedFlag
,OptionalValuedFlag
key-value pairs
→NamedKeyValuePair
Inheritance
- classmethod __init_subclass__(*args, pattern=None, **kwargs)[source]
This method is called when a class is derived.
- abstract AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal name and value.
- Return type:
- Returns:
Formatted argument.
- Raises:
NotImplementedError – This is an abstract method and must be overwritten by a subclass.
- abstract __str__()[source]
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- Raises:
NotImplementedError – This is an abstract method and must be overwritten by a subclass.
- abstract __repr__()[source]
Return a string representation of this argument instance.
Note
By default, this method is identical to
__str__()
.- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- Raises:
NotImplementedError – This is an abstract method and must be overwritten by a subclass.
- class pyTooling.CLIAbstraction.Argument.ExecutableArgument(executable)[source]
Represents the executable.
Inheritance
- Parameters:
executable (Path)
- property Executable: Path
Get the internal path to the wrapped executable.
- Returns:
Internal path to the executable.
- AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal path to the wrapped executable.
- __str__()[source]
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- __repr__()
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- classmethod __init_subclass__(*args, pattern=None, **kwargs)
This method is called when a class is derived.
- class pyTooling.CLIAbstraction.Argument.DelimiterArgument(*args: Any, **kwargs: Any)[source]
Represents a delimiter symbol like
--
.Inheritance
- classmethod __init_subclass__(*args, pattern='--', **kwargs)[source]
This method is called when a class is derived.
- AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern.
- __str__()[source]
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- __repr__()
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- class pyTooling.CLIAbstraction.Argument.NamedArgument(*args: Any, **kwargs: Any)[source]
Base-class for all command line arguments with a name.
Inheritance
- classmethod __init_subclass__(*args, name=None, pattern='{0}', **kwargs)[source]
This method is called when a class is derived.
- AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal name.
- Return type:
- Returns:
Formatted argument.
- Raises:
ValueError – If internal name is None.
- class pyTooling.CLIAbstraction.Argument.ValuedArgument(value)[source]
Base-class for all command line arguments with a value.
Inheritance
- Parameters:
value (ValueT)
- classmethod __init_subclass__(*args, pattern='{0}', **kwargs)[source]
This method is called when a class is derived.
- property Value: ValueT
Get the internal value.
- Returns:
Internal value.
- AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal value.
- __str__()[source]
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- __repr__()
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- __class_getitem__()
Parameterizes a generic class.
At least, parameterizing a generic class is the main thing this method does. For example, for some generic class Foo, this is called when we do Foo[int] - there, with cls=Foo and params=int.
However, note that this method is also called when defining generic classes in the first place with class Foo[T]: ….
- class pyTooling.CLIAbstraction.Argument.StringArgument(value)[source]
Represents a simple string argument.
A list of strings is available as
StringListArgument
.Inheritance
- Parameters:
value (ValueT)
- classmethod __init_subclass__(*args, pattern='{0}', **kwargs)[source]
This method is called when a class is derived.
- AsArgument()
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal value.
- property Value: ValueT
Get the internal value.
- Returns:
Internal value.
- __class_getitem__()
Parameterizes a generic class.
At least, parameterizing a generic class is the main thing this method does. For example, for some generic class Foo, this is called when we do Foo[int] - there, with cls=Foo and params=int.
However, note that this method is also called when defining generic classes in the first place with class Foo[T]: ….
- __init__(value)
Initializes a ValuedArgument instance.
- __repr__()
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- class pyTooling.CLIAbstraction.Argument.StringListArgument(values)[source]
Represents a list of string argument (
StringArgument
).Inheritance
- property Value: List[str]
Get the internal list of str objects.
- Returns:
Reference to the internal list of str objects.
- AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal value.
- __str__()[source]
Return a string representation of this argument instance.
- Return type:
- Returns:
Space separated sequence of arguments formatted and each enclosed in double quotes.
- __repr__()[source]
Return a string representation of this argument instance.
- Return type:
- Returns:
Comma separated sequence of arguments formatted and each enclosed in double quotes.
- __class_getitem__()
Parameterizes a generic class.
At least, parameterizing a generic class is the main thing this method does. For example, for some generic class Foo, this is called when we do Foo[int] - there, with cls=Foo and params=int.
However, note that this method is also called when defining generic classes in the first place with class Foo[T]: ….
- classmethod __init_subclass__(*args, pattern='{0}', **kwargs)
This method is called when a class is derived.
- class pyTooling.CLIAbstraction.Argument.PathArgument(path)[source]
Represents a single path argument.
A list of paths is available as
PathListArgument
.Inheritance
- Parameters:
path (Path)
- property Value: Path
Get the internal path object.
- Returns:
Internal path object.
- AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal value.
- __str__()[source]
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- __repr__()
Return a string representation of this argument instance.
- Return type:
- Returns:
Argument formatted and enclosed in double quotes.
- classmethod __init_subclass__(*args, pattern=None, **kwargs)
This method is called when a class is derived.
- class pyTooling.CLIAbstraction.Argument.PathListArgument(paths)[source]
Represents a list of path arguments (
PathArgument
).Inheritance
- Parameters:
paths (Iterable[Path])
- classmethod __init_subclass__(*args, pattern=None, **kwargs)
This method is called when a class is derived.
- property Value: List[Path]
Get the internal list of path objects.
- Returns:
Reference to the internal list of path objects.
- AsArgument()[source]
Convert this argument instance to a string representation with proper escaping using the matching pattern based on the internal value.