InputFlag

Объект InputFlag представляет собой флаг, введённый пользователем. Он создаётся в результате обработки пользовательского ввода и содержит информацию о распознанном флаге: его имя, префикс, значение и статус валидации.

См. также

Документация по Flag — класс для регистрации флага.

Документация по ValidationStatus — статусы валидации флагов.


Предупреждение

Экземпляры этого класса не предназначены для прямого создания. Они содержатся в объекте Response.

Атрибуты:

name

Имя введённого флага.

prefix

Префикс флага: -, -- или ---.

input_value

Значение, переданное с флагом. Может быть '' (пустой строкой) для флагов без значений.

status

Статус валидации флага: ValidationStatus.VALID, ValidationStatus.INVALID или ValidationStatus.UNDEFINED.


Свойства

string_entity

1@property
2string_entity(self) -> str

Возвращает строковое представление флага в формате prefix + name.

return:

Строковое представление флага


Магические методы

__str__

1__str__(self) -> str

Возвращает строковое представление флага вместе с его значением.

return:

Строка в формате флаг значение.

Пример использования:

 1from argenta.command.flag import InputFlag, ValidationStatus
 2
 3flag_with_value = InputFlag(
 4    name="output", prefix="--", input_value="result.txt", status=ValidationStatus.VALID
 5)
 6
 7flag_without_value = InputFlag(
 8    name="help", prefix="-", input_value='', status=ValidationStatus.VALID
 9)
10
11# String representation includes value
12print(str(flag_with_value))  # --output result.txt
13print(str(flag_without_value))  # -help

__repr__

1__repr__(self) -> str

Возвращает отладочное представление объекта.

return:

Строка в формате InputFlag<prefix=..., name=..., value=..., status=...>.

Пример использования:

 1from argenta.command.flag import InputFlag, ValidationStatus
 2
 3flag = InputFlag(
 4    name="config",
 5    prefix="--",
 6    input_value="settings.json",
 7    status=ValidationStatus.VALID,
 8)
 9
10# Debug representation of the object
11print(repr(flag))
12# InputFlag<prefix='--', name='config', value='settings.json', status=ValidationStatus.VALID>

__eq__

1__eq__(self, other: object) -> bool

Сравнивает два введённых флага на равенство по имени.

param other:

Объект для сравнения.

return:

True, если имена флагов совпадают, иначе False.

Два введённых флага считаются равными, если их имена совпадают.