diff --git a/oxrlib/__main__.py b/oxrlib/__main__.py new file mode 100644 index 0000000000000000000000000000000000000000..b3ef26c72ad7eed52d3d521f6f2f65a9fc7bc4c9 --- /dev/null +++ b/oxrlib/__main__.py @@ -0,0 +1,22 @@ +import decimal +import importlib +import sys + +import oxrlib.config + +def decimal_context(base=decimal.BasicContext): + context = base.copy() + context.rounding = decimal.ROUND_HALF_EVEN + context.traps[decimal.Inexact] = False + context.traps[decimal.Rounded] = False + return context + +def main(arglist=None, stdout=sys.stdout, stderr=sys.stderr): + config = oxrlib.config.Configuration(arglist) + subcmd_module = importlib.import_module('.commands.' + config.args.command, 'oxrlib') + with decimal.localcontext(decimal_context()): + subcmd_module.run(config, stdout, stderr) + return 0 + +if __name__ == '__main__': + exit(main())