Python3 parser for command-line options and arguments using Tiramisu engine.
Find a file
2018-11-30 18:47:16 +01:00
examples/Hangman tiramisu_parser => tiramisu_cmdline_parser 2018-11-30 18:47:16 +01:00
test tiramisu_parser => tiramisu_cmdline_parser 2018-11-30 18:47:16 +01:00
AUTHORS add AUTHORS and license 2018-11-29 22:52:20 +01:00
LICENSE Add LICENSE 2018-11-29 22:26:38 +01:00
README.md tiramisu_parser => tiramisu_cmdline_parser 2018-11-30 18:47:16 +01:00
tiramisu_cmdline_parser.py tiramisu_parser => tiramisu_cmdline_parser 2018-11-30 18:47:16 +01:00

tiramisu-parser

Python3 parser for command-line options and arguments using Tiramisu engine.

simple example

#!/usr/bin/env python3

from tiramisu_cmdline_parser import TiramisuCmdlineParser
from tiramisu import StrOption, BoolOption, SymLinkOption, OptionDescription, \
                     Config
parser = TiramisuCmdlineParser()
booloption = BoolOption('verbosity',
                        'increase output verbosity',
                        default=False)
config = Config(OptionDescription('root', 'root', [StrOption('var',
                                                             'a string option',
                                                             properties=('mandatory',
                                                                         'positional')),
                                                   booloption,
                                                   SymLinkOption('v', booloption)]))
parser.add_arguments(config)
parser.parse_args()
print('result:', config.value.dict())
[gnunux@localhost tiramisu-parser]$ ./prog.py -h
usage: prog.py [-h] [-v] var

positional arguments:
  var              a string option

optional arguments:
  -h, --help       show this help message and exit
  -v, --verbosity  increase output verbosity
[gnunux@localhost tiramisu-parser]$ ./prog.py -v
usage: prog.py [-h] [-v] var
prog.py: error: the following arguments are required: var
[gnunux@localhost tiramisu-parser]$ ./prog.py test
result: {'var': 'test', 'verbosity': False, 'v': False}
[gnunux@localhost tiramisu-parser]$ ./prog.py -v test
result: {'var': 'test', 'verbosity': True, 'v': True}
[gnunux@localhost tiramisu-parser]$ ./prog.py --verbosity test
result: {'var': 'test', 'verbosity': True, 'v': True}