argenta 0.3.6__py3-none-any.whl → 0.3.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
argenta/router/entity.py CHANGED
@@ -14,7 +14,7 @@ from ..router.exceptions import (RepeatedCommandException,
14
14
  class Router:
15
15
  def __init__(self,
16
16
  title: str = 'Commands group title:',
17
- name: str = 'subordinate'):
17
+ name: str = 'Default'):
18
18
 
19
19
  self._title = title
20
20
  self._name = name
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: argenta
3
- Version: 0.3.6
3
+ Version: 0.3.7
4
4
  Summary: python library for creating custom shells
5
5
  License: MIT
6
6
  Author: kolo
@@ -35,7 +35,7 @@ poetry add argenta
35
35
 
36
36
  # Быстрый старт
37
37
 
38
- Пример простейшей оболочки с командой без флагов
38
+ Пример простейшей оболочки с командой без зарегистрированных флагов
39
39
  ```python
40
40
  # routers.py
41
41
  from argenta.router import Router
@@ -75,14 +75,12 @@ from argenta.command.params.flag import FlagsGroup, Flag
75
75
 
76
76
  router = Router()
77
77
 
78
- list_of_flags = [
78
+ registered_flags = FlagsGroup([
79
79
  Flag(flag_name='host',
80
80
  flag_prefix='--',
81
81
  possible_flag_values=re.compile(r'^192.168.\d{1,3}.\d{1,3}$')),
82
- Flag(flag_name='port',
83
- flag_prefix='---',
84
- possible_flag_values=re.compile(r'^[0-9]{1,4}$'))
85
- ]
82
+ Flag('port', '---', re.compile(r'^[0-9]{1,4}$'))
83
+ ])
86
84
 
87
85
 
88
86
  @router.command(Command("hello"))
@@ -92,10 +90,10 @@ def handler():
92
90
 
93
91
  @router.command(Command(trigger="ssh",
94
92
  description='connect via ssh',
95
- flags=FlagsGroup(list_of_flags)))
93
+ flags=registered_flags))
96
94
  def handler_with_flags(flags: dict):
97
95
  for flag in flags:
98
- print(f'Flag name: {flag['name']}\n
96
+ print(f'Flag name: {flag['name']}\n'
99
97
  f'Flag value: {flag['value']}')
100
98
  ```
101
99
 
@@ -105,7 +103,7 @@ def handler_with_flags(flags: dict):
105
103
 
106
104
  ---
107
105
 
108
- ## *class* :: `App`
106
+ ## *class* : : `App`
109
107
  Класс, определяющий поведение и состояние оболочки
110
108
 
111
109
  ### Конструктор
@@ -144,52 +142,57 @@ App(prompt: str = 'Enter a command',
144
142
 
145
143
  ---
146
144
 
147
- **App().**`start_polling() -> None`
145
+ #### **.start_polling() -> `None`**
148
146
 
149
- *method mean* **::** запускает жизненный цикл приложения
147
+ *method mean* **::** запускает цикл обработки ввода
150
148
 
151
149
  ---
152
150
 
153
- **App().**`include_router(router: Router) -> None`
151
+ #### **.include_router(router: Router) -> `None`**
154
152
 
155
- *param* `router: Router` **::** регистрируемый роутер
153
+ *param* `router: Router` **::** регистрируемый роутер
154
+ *required* **::** True
156
155
 
157
- *method mean* **::** регистрирует роутер в приложении
156
+ *method mean* **::** регистрирует роутер в оболочке
158
157
 
159
158
  ---
160
159
 
161
- **App().**`set_initial_message(message: str) -> None`
160
+ #### **.set_initial_message(message: str) -> `None`**
162
161
 
163
162
  *param* `message: str` **::** устанавливаемое приветственное сообщение
163
+ *required* **::** True
164
164
  *example* **::** `"Hello, I'm a example app"`
165
165
 
166
166
  *method mean* **::** устанавливает сообщение, которое будет отображено при запуске программы
167
167
 
168
168
  ---
169
169
 
170
- **App().**`set_farewell_message(message: str) -> None`
170
+ #### **.set_farewell_message(message: str) -> `None`**
171
171
 
172
172
  *param* `message: str` **::** устанавливаемое сообщение при выходе
173
+ *required* **::** True
173
174
  *example* **::** `"GoodBye !"`
174
175
 
175
176
  *method mean* **::** устанавливает сообщение, которое будет отображено при выходе
176
177
 
177
178
  ---
178
179
 
179
- **App().**`set_description_message_pattern(pattern: str) -> None`
180
+ #### **.set_description_message_pattern(pattern: str) -> `None`**
180
181
 
181
182
  *param* `pattern: str` **::** паттерн описания команды при её выводе в консоль
183
+ *required* **::** True
182
184
  *example* **::** `"[{command}] *=*=* {description}"`
183
185
 
184
186
  *method mean* **::** устанавливает паттерн описания команд, который будет использован
185
187
  при выводе в консоль
186
188
 
187
189
  ---
188
-
189
- **App().**`set_repeated_input_flags_handler(handler: Callable[[str], None]) -> None`
190
+ <a name="custom_handler"></a>
191
+ #### **.set_repeated_input_flags_handler(handler: Callable[[str], None]) -> `None`**
190
192
 
191
193
  *param* `handler: Callable[[str], None]` **::** функция или лямбда функция, которой будет передано управление при
192
- вводе юзером повторяющихся флагов
194
+ вводе юзером повторяющихся флагов
195
+ *required* **::** True
193
196
  *example* **::** `lambda raw_command: print_func(f'Repeated input flags: "{raw_command}"')`
194
197
 
195
198
  *method mean* **::** устанавливает функцию, которой будет передано управление при
@@ -197,10 +200,11 @@ App(prompt: str = 'Enter a command',
197
200
 
198
201
  ---
199
202
 
200
- **App().**`set_invalid_input_flags_handler(self, handler: Callable[[str], None]) -> None`
203
+ #### **.set_invalid_input_flags_handler(self, handler: Callable[[str], None]) -> `None`**
201
204
 
202
205
  *param* `handler: Callable[[str], None]` **::** функция или лямбда функция, которой будет передано управление при
203
206
  вводе юзером команды с некорректным синтаксисом флагов
207
+ *required* **::** True
204
208
  *example* **::** `lambda raw_command: print_func(f'Incorrect flag syntax: "{raw_command}"')`
205
209
 
206
210
  *method mean* **::** устанавливает функцию, которой будет передано управление при
@@ -208,10 +212,11 @@ App(prompt: str = 'Enter a command',
208
212
 
209
213
  ---
210
214
 
211
- **App().**`set_unknown_command_handler(self, handler: Callable[[str], None]) -> None`
215
+ #### **.set_unknown_command_handler(self, handler: Callable[[str], None]) -> `None`**
212
216
 
213
217
  *param* `handler: Callable[[str], None]` **::** функция или лямбда функция, которой будет передано управление при
214
218
  вводе юзером неизвестной команды
219
+ *required* **::** True
215
220
  *example* **::** `lambda command: print_func(f"Unknown command: {command.get_string_entity()}")`
216
221
 
217
222
  *method mean* **::** устанавливает функцию, которой будет передано управление при
@@ -219,10 +224,11 @@ App(prompt: str = 'Enter a command',
219
224
 
220
225
  ---
221
226
 
222
- **App().**`set_empty_command_handler(self, handler: Callable[[str], None]) -> None`
227
+ #### **.set_empty_command_handler(self, handler: Callable[[str], None]) -> `None`**
223
228
 
224
229
  *param* `handler: Callable[[str], None]` **::** функция или лямбда функция, которой будет передано управление при
225
- вводе юзером пустой команды
230
+ вводе юзером пустой команды
231
+ *required* **::** True
226
232
  *example* **::** `lambda: print_func(f'Empty input command')`
227
233
 
228
234
  *method mean* **::** устанавливает функцию, которой будет передано управление при
@@ -234,10 +240,10 @@ App(prompt: str = 'Enter a command',
234
240
 
235
241
  - В устанавливаемом паттерне сообщения описания команды необходимы быть два ключевых слова:
236
242
  `command` и `description`, каждое из которых должно быть заключено в фигурные скобки, после обработки
237
- паттерна на места этих ключевых слов будут подставлены соответствующие значения команды, при отсутствии
243
+ паттерна на места этих ключевых слов будут подставлены соответствующие атрибуты команды, при отсутствии
238
244
  этих двух ключевых слов будет вызвано исключение `InvalidDescriptionMessagePatternException`
239
245
 
240
- - Команды приложения не должны повторяться, при значении атрибута `ignore_command_register` равным `True`
246
+ - Команды оболочки не должны повторяться, при значении атрибута `ignore_command_register` равным `True`
241
247
  допускается создание обработчиков для разных регистров одинаковых символов в команде, для примера `u` и `U`,
242
248
  при значении атрибута `ignore_command_register` класса `App` равным `False` тот же пример вызывает исключение
243
249
  `RepeatedCommandInDifferentRoutersException`. Исключение вызывается только при наличии пересекающихся команд
@@ -263,7 +269,7 @@ App(prompt: str = 'Enter a command',
263
269
  ### Конструктор
264
270
  ```python
265
271
  Router(title: str = 'Commands group title:',
266
- name: str = 'subordinate')
272
+ name: str = 'Default')
267
273
  ```
268
274
 
269
275
 
@@ -279,29 +285,30 @@ Router(title: str = 'Commands group title:',
279
285
 
280
286
  ---
281
287
 
282
- **`@`Router().**`command(command: Command)`
288
+ #### **command(command: Command)**
283
289
 
284
290
  *param* `command: Command` **::** экземпляр класса `Command`, который определяет строковый триггер команды,
285
- допустимые флаги команды и другое
291
+ допустимые флаги команды и другое
292
+ *required* **::** True
286
293
  *example* **::** `Command(command='ssh', description='connect via ssh')`
287
294
 
288
295
  *method mean* **::** декоратор, который регистрирует функцию как обработчик команды
289
296
 
290
297
  ---
291
298
 
292
- **Router().**`get_name() -> str`
299
+ #### **.get_name() -> `str`**
293
300
 
294
301
  *method mean* **::** возвращает установленное название роутера
295
302
 
296
303
  ---
297
304
 
298
- **Router().**`get_title() -> str`
305
+ #### **.get_title() -> `str`**
299
306
 
300
307
  *method mean* **::** возвращает установленный заголовок группы команд данного роутера
301
308
 
302
309
  ---
303
310
 
304
- **Router().**`get_all_commands() -> list[str]`
311
+ #### **.get_all_commands() -> `list[str]`**
305
312
 
306
313
  *method mean* **::** возвращает все зарегистрированные команды для данного роутера
307
314
 
@@ -334,19 +341,19 @@ Command(trigger: str,
334
341
 
335
342
  ---
336
343
 
337
- **Command().**`get_trigger() -> str`
344
+ #### **.get_trigger() -> `str`**
338
345
 
339
346
  *method mean* **::** возвращает строковый триггер экземпляра
340
347
 
341
348
  ---
342
349
 
343
- **Command().**`get_description() -> str`
350
+ #### **.get_description() -> `str`**
344
351
 
345
352
  *method mean* **::** возвращает описание команды
346
353
 
347
354
  ---
348
355
 
349
- **Command().**`get_registered_flags() -> FlagsGroup | None`
356
+ #### **.get_registered_flags() -> `FlagsGroup | None`**
350
357
 
351
358
  *method mean* **::** возвращает зарегистрированные флаги экземпляра
352
359
 
@@ -360,12 +367,12 @@ Command(trigger: str,
360
367
  **Примечание**
361
368
  Все вышеуказанные исключения класса `Command` вызываются в рантайме запущенным экземпляром класса
362
369
  `App`, а также по дефолту обрабатываются, при желании можно задать пользовательские
363
- обработчики для этих исключений ([подробнее см.](#methods-))
370
+ обработчики для этих исключений ([подробнее см.](#custom_handler))
364
371
 
365
372
  ---
366
373
 
367
374
  ## *class* :: `Flag`
368
- Класс, экземпляры которого в большинстве случаев должны передаваться при создании
375
+ Класс, экземпляры которого в большинстве случаев передаются при создании
369
376
  экземпляра класса `Command` для регистрации допустимого флага при вводе юзером команды
370
377
 
371
378
  ### Конструктор
@@ -392,19 +399,19 @@ Flag(flag_name: str,
392
399
 
393
400
  ---
394
401
 
395
- **Flag().**`get_sring_entity() -> str`
402
+ #### **.get_string_entity() -> `str`**
396
403
 
397
404
  *method mean* **::** возвращает строковое представление флага(префикс + имя)
398
405
 
399
406
  ---
400
407
 
401
- **Flag().**`get_flag_name() -> str`
408
+ #### **.get_flag_name() -> `str`**
402
409
 
403
410
  *method mean* **::** возвращает имя флага
404
411
 
405
412
  ---
406
413
 
407
- **Flag().**`get_flag_prefix() -> str`
414
+ #### **.get_flag_prefix() -> `str`**
408
415
 
409
416
  *method mean* **::** возвращает префикс флага
410
417
 
@@ -432,7 +439,7 @@ FlagsGroup(flags: list[Flag] = None)
432
439
 
433
440
  ---
434
441
 
435
- **FlagsGroup().**`get_flags() -> list[Flag]`
442
+ #### **.get_flags() -> `list[Flag]`**
436
443
 
437
444
  *method mean* **::** возвращает зарегистрированные флаги
438
445
 
@@ -11,9 +11,9 @@ argenta/command/params/flag/entity.py,sha256=wqCLVCDUqvuPVQQyz2mOeslH6Xha0nwiKUq
11
11
  argenta/command/params/flag/flags_group/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
12
  argenta/command/params/flag/flags_group/entity.py,sha256=qcVbRkfWblR53a1N0C8tpZ8UOH5aNlQmkyxRfCrrwMo,1011
13
13
  argenta/router/__init__.py,sha256=vIU2o3JJ7misRm9mUzUQw5HdverdMDfvHNzkWuYFRBY,26
14
- argenta/router/entity.py,sha256=P-1rmXgzuo548uGUKzsVrQBvgDGTXlEBtokx-eEbJY8,4936
14
+ argenta/router/entity.py,sha256=ph2A0XeMQFbmlh1jcUSK659W9ai55JKXNM9iAbrZL-0,4932
15
15
  argenta/router/exceptions.py,sha256=dW3FIdHA_tZYt1-IEts7IY46KLBaKulfdW_ALKpvAic,657
16
- argenta-0.3.6.dist-info/LICENSE,sha256=zmqoGh2n5rReBv4s8wPxF_gZEZDgauJYSPMuPczgOiU,1082
17
- argenta-0.3.6.dist-info/METADATA,sha256=ZkHeDKFXdUqwoChdAdNv2UEwx6SQyhvkZT5HBz91WEo,17805
18
- argenta-0.3.6.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
19
- argenta-0.3.6.dist-info/RECORD,,
16
+ argenta-0.3.7.dist-info/LICENSE,sha256=zmqoGh2n5rReBv4s8wPxF_gZEZDgauJYSPMuPczgOiU,1082
17
+ argenta-0.3.7.dist-info/METADATA,sha256=AjQqZ6-XiiZr3ua0k0KKvlv0WzNOm9esx2_l3k3Ekxw,17977
18
+ argenta-0.3.7.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
19
+ argenta-0.3.7.dist-info/RECORD,,