def get_arg_parser()

in config.py [0:0]


def get_arg_parser(cfg_constructor):

    dargs = get_default_args(cfg_constructor)
    dargs_full_name = convert_to_stringval(dargs, stringify_vals=False)

    parser = argparse.ArgumentParser(
        description='Auto-initialized argument parser'
    )

    for darg, val in dargs_full_name.items():
        tp = type(val) if val is not None else str
        if tp == bool:
            parser.add_argument(
                '--%s' % darg,
                dest=darg,
                help=darg,
                default=val,
                type=str2bool,
            )
        elif tp == list:
            parser.add_argument(
                '--%s' % darg,
                type=arg_as_list,
                default=val,
                help=darg)
        else:
            parser.add_argument(
                '--%s' % darg,
                dest=darg,
                help=darg,
                default=val,
                type=tp,
            )

    return parser