Metadata-Version: 2.1
Name: AEngineConsole
Version: 0.0.1
Summary: Console applications engine.
Home-page: https://github.com/aaalllexxx/AEngine_console
Download-URL: https://github.com/aaalllexxx/AEngine_console
Author: Alex Abdelnur
Author-email: a.aabdelnur@mail.ru
Keywords: console,terminal,engine
Description-Content-Type: text/markdown

[СЃlass]: # (Р±Р»РѕРє РєР»Р°СЃСЃР°)
<p style="text-align: center">Argument parser</p>
===============

--------------

     file: ArgParser.py
     class: ArgumentParser

<p>РљР»Р°СЃСЃ РґР»СЏ РїР°СЂСЃРёРЅРіР° Р°СЂРіСѓРјРµРЅС‚РѕРІ РёР· РєРѕРјР°РЅРґРЅРѕР№ СЃС‚СЂРѕРєРё.</p>
<br>

[methods]: # (Р±Р»РѕРє РјРµС‚РѕРґРѕРІ)

## <p style="text-align: center">РњРµС‚РѕРґС‹</p>

--------------

#### <p style="text-align: center; font-weight: bolder">add_rule( )</p>

    ArgumentParse.add_rule(var_name, flag)
    
    ex: ArgumentParse.add_rule('MyKey', '-key'),
        ArgumentParse.add_rule('MyKey', ['-key1', '-key2'])

<div style="margin: 30px 0">
    <p><span style="color: green">var_name</span> - РёРјСЏ РїРµСЂРµРјРµРЅРЅРѕР№, РєРѕС‚РѕСЂР°СЏ Р±СѓРґРµС‚ СЃРѕРґРµСЂР¶Р°С‚СЊ Р·РЅР°С‡РµРЅРёРµ РїРѕСЃР»Рµ С„Р»Р°РіР°</p>
    <p><span style="color: green">flag</span> - С„Р»Р°Рі РґР»СЏ РѕР±РѕР·РЅР°С‡РµРЅРёСЏ Р°СЂРіСѓРјРµРЅС‚Р° (РґРѕР»Р¶РµРЅ РЅР°С‡РёРЅР°С‚СЊСЃСЏ СЃ "-" Рё СЃС‚РѕСЏС‚СЊ РїРµСЂРµРґ Р·РЅР°С‡РµРЅРёРµРј)</p>
</div>

--------------

#### <p style="text-align: center; font-weight: bolder">add_rules_dict( )</p>

    ArgumentParse.add_rules_dict(rules)
    
    ex: ArgumentParse.add_rules_dict({
        'key1': '-flag1',
        'key2': ['-flag2', '-flag3']
    })

<div style="margin: 30px 0">
    <p><span style="color: green">rules</span> - СЃР»РѕРІР°СЂСЊ СЃ РїСЂР°РІРёР»Р°РјРё { var_name: flags } </p>
</div>

--------------

#### <p style="text-align: center; font-weight: bolder">parse( )</p>

    ArgumentParse.parse(args_list = None)
    
    ex: ArgumentParse.parse()

<div style="margin: 30px 0">
    <p><span style="color: green">args_list</span> - СЃРїРёСЃРѕРє Р°СЂРіСѓРјРµРЅС‚РѕРІ. Р•СЃР»Рё None, С‚Рѕ РїР°СЂСЃРёРЅРі РїСЂРѕРёСЃС…РѕРґРёС‚ РёР· sys.argv </p>
</div>

--------------


[СЃlass]: # (Р±Р»РѕРє РєР»Р°СЃСЃР°)
<p style="text-align: center">Argument list</p>
===============

--------------

     file: ArgParser.py
     class: ArgumentList

<p>РљР»Р°СЃСЃ, СЃРѕРґРµСЂР¶Р°С‰РёР№ Р°СЂРіСѓРјРµРЅС‚С‹ РєРѕРЅСЃРѕР»Рё РїРѕСЃР»Рµ ArgumentParser.parse().</p>
<p>Singleton, СЃР»РµРґРѕРІР°С‚РµР»СЊРЅРѕ РєР°Р¶РґС‹Р№ СЃРѕР·РґР°РЅРЅС‹Р№ СЌРєР·РµРјРїР»СЏСЂ РєР»Р°СЃСЃР° Р±СѓРґРµС‚ СЃРѕРґРµСЂР¶Р°С‚СЊ, С‡С‚Рѕ Рё РґСЂСѓРіРёРµ С‚Рµ Р¶Рµ РїРµСЂРµРјРµРЅРЅС‹Рµ.</p>
<br>

--------------

[usage]: # (Р±Р»РѕРє РїСЂРёРјРµРЅРµРЅРёСЏ)

## <p style="text-align: center">РџСЂРёРјРµРЅРµРЅРёРµ</p>

--------------
    ex: python main.py --host smth.ru
<p>main.py:</p>

    from AEngine_console.ArgParser import ArgumentParser, ArgumentList
    
    ArgumentParser.add_rule('host', ['--host', '-h'])
    ArgumentParser.parse()
    args = ArgumentList()
    print(args.host)
<p></p>
    
    output: smth.ru
