mirror of
https://github.com/koloideal/Argenta.git
synced 2026-06-10 18:15:28 +03:00
21 lines
966 B
Python
21 lines
966 B
Python
from argenta import Response, Router
|
|
from argenta.di import FromDishka
|
|
from argenta.orchestrator.argparser import (ArgSpace, BooleanArgument,
|
|
ValueArgument)
|
|
|
|
router = Router()
|
|
|
|
@router.command('get_args')
|
|
def get_args(response: Response, argspace: FromDishka[ArgSpace]):
|
|
# Получение всех булевых флагов
|
|
boolean_flags = argspace.get_by_type(BooleanArgument)
|
|
print(f"Active flags: {[arg.name for arg in boolean_flags if arg.value]}")
|
|
|
|
# Получение всех аргументов со значениями
|
|
value_args = argspace.get_by_type(ValueArgument)
|
|
for arg in value_args:
|
|
print(f"{arg.name} = {arg.value}")
|
|
|
|
# Подсчет количества аргументов каждого типа
|
|
print(f"Boolean arguments: {len(argspace.get_by_type(BooleanArgument))}")
|
|
print(f"Value arguments: {len(argspace.get_by_type(ValueArgument))}") |