This commit is contained in:
2025-11-02 00:17:28 +03:00
parent acddb1fbc6
commit df7313912c
26 changed files with 501 additions and 566 deletions
+15 -15
View File
@@ -4,18 +4,18 @@
PossibleValues
==============
Enum ``PossibleValues`` представляет собой перечисление, определяющее специальные режимы валидации значений флагов в приложении ``Argenta``. Его основная задача — предоставить стандартизированные константы для управления поведением флагов в отношении допустимых значений. ``PossibleValues`` используется в параметре ``possible_values`` класса ``Flag`` для определения того, может ли флаг принимать значения и какие ограничения на них накладываются.
`PossibleValues` — это перечисление (`Enum`), которое определяет специальные режимы валидации для значений флагов. Его задача — предоставить стандартные константы для управления поведением флагов. `PossibleValues` используется в параметре `possible_values` класса `Flag`, чтобы указать, может ли флаг принимать значения и какие ограничения на них накладываются.
``PossibleValues`` наследуется от стандартного класса ``Enum`` и содержит два основных значения: ``NEITHER`` для флагов без значений и ``ALL`` для флагов, принимающих любые значения. Этот enum используется совместно со списками строк и регулярными выражениями для создания гибкой системы валидации флагов.
`PossibleValues` наследуется от `Enum` и содержит два основных значения: `NEITHER` (для флагов без значений) и `ALL` (для флагов, принимающих любые значения). Это перечисление используется вместе со списками строк и регулярными выражениями для создания гибкой системы валидации.
.. note::
Результат валидации значений введенных флагов можно получить через атрибут ``status`` у экземпляра ``InputFlag``. Подробнее :ref:`тут <root_api_command_input_flag>`
Результат валидации доступен через атрибут `status` у экземпляра `InputFlag`. Подробнее см. :ref:`здесь <root_api_command_input_flag>`.
.. seealso::
Документация по :ref:`Flag <root_api_command_flag>`сущности флага, использующей ``PossibleValues``
Документация по :ref:`Flag <root_api_command_flag>`класс флага, использующий `PossibleValues`.
Документация по :ref:`PredefinedFlags <root_api_command_flag_predefined_flags>`предопределенным флагам с примерами использования ``PossibleValues``
Документация по :ref:`PredefinedFlags <root_api_command_flag_predefined_flags>`готовые флаги с примерами использования `PossibleValues`.
:ref:`Общая информация <root_flags>` о флагах и их использовании в приложении ``Argenta``
@@ -34,7 +34,7 @@ NEITHER
Указывает, что флаг **не должен** иметь значения.
Флаги с этим значением работают как булевы переключатели их наличие в командной строке само по себе является информацией. Попытка передать значение такому флагу приведёт к ошибке валидации.
Флаги с этим значением работают как булевы переключатели: их наличие в командной строке само по себе является информацией. Попытка передать такому флагу значение приведёт к ошибке валидации.
**Примеры флагов с** ``NEITHER``:
@@ -59,9 +59,9 @@ ALL
PossibleValues.ALL = 'ALL'
Указывает, что флаг может принимать **любое** значение без ограничений.
Указывает, что флаг может принимать **любое** значение.
Флаги с этим значением являются универсальными и не накладывают никаких ограничений на передаваемые данные. Валидация всегда успешна для любой строки или её отсутствия.
Флаги с этим значением универсальны и не накладывают ограничений на передаваемые данные. Валидация всегда будет успешной.
**Примеры флагов с** ``ALL``:
@@ -84,14 +84,14 @@ ALL
Параметр possible_values
~~~~~~~~~~~~~~~~~~~~~~~~~
``PossibleValues`` используется в качестве одного из возможных типов для параметра ``possible_values`` при создании экземпляра ``Flag``.
`PossibleValues` используется как один из возможных типов для параметра `possible_values` при создании экземпляра `Flag`.
**Доступные типы для** ``possible_values``:
**Доступные типы для** `possible_values`:
1. ``PossibleValues.NEITHER`` флаг без значения
2. ``PossibleValues.ALL`` флаг с любым значением (по умолчанию)
3. ``list[str]`` флаг с ограниченным набором допустимых значений
4. ``Pattern[str]`` флаг со значением, проверяемым регулярным выражением
1. `PossibleValues.NEITHER`: флаг без значения.
2. `PossibleValues.ALL`: флаг с любым значением (по умолчанию).
3. `list[str]`: флаг с ограниченным набором значений.
4. `Pattern[str]`: флаг со значением, проверяемым по регулярному выражению.
**Пример комбинированного использования:**
@@ -104,7 +104,7 @@ ALL
Использование в PredefinedFlags
-------------------------------
Многие предопределенные флаги используют ``PossibleValues.NEITHER``:
Многие предопределённые флаги используют `PossibleValues.NEITHER`:
.. literalinclude:: ../../../code_snippets/possible_values/predefined.py
:linenos: