def _parse_func(self, args):
    '\n        Process the given arguments into a function definition\n\n        :param args: List of the words after the "def" command\n        :return: Function name, if it wants the caller\'s user name,\n                 the required user level, and the function\'s Lua code\n        :raise argparse.ArgumentError: There was something wrong with the args\n        '
    parser = ArgumentParser()
    parser.add_argument('-ul', '--user_level', default='mod')
    parser.add_argument('-c', '--cooldown', default=None)
    parser.add_argument('-a', '--args', default='')
    parser.add_argument('-w', '--want_user', action='store_true', default=False)
    parser.add_argument('-q', '--quoted', action='store_true', default=False)
    parser.add_argument('func_name')
    parser.add_argument('func_body', nargs='*')
    options = parser.parse_args(args)
    if options.want_user:
        new_args = 'user'
        if (len(options.args) > 0):
            new_args += ','
        options.args = (new_args + options.args)
    code = self.func_template.format(func_name=options.func_name, args=options.args, func_body=' '.join(options.func_body))
    flags = {'want_user': int(options.want_user), 'quoted': int(options.quoted), 'cooldown': (int(options.cooldown) if options.cooldown else None)}
    added = bool(options.func_body)
    return (added, options.func_name, flags, options.user_level, code)
Process the given arguments into a function definition

:param args: List of the words after the "def" command
:return: Function name, if it wants the caller's user name,
         the required user level, and the function's Lua code
:raise argparse.ArgumentError: There was something wrong with the args
def _parse_func(self, args):
    '\n        Process the given arguments into a function definition\n\n        :param args: List of the words after the "def" command\n        :return: Function name, if it wants the caller\'s user name,\n                 the required user level, and the function\'s Lua code\n        :raise argparse.ArgumentError: There was something wrong with the args\n        '
    parser = ArgumentParser()
    parser.add_argument('-ul', '--user_level', default='mod')
    parser.add_argument('-c', '--cooldown', default=None)
    parser.add_argument('-a', '--args', default=)
    parser.add_argument('-w', '--want_user', action='store_true', default=False)
    parser.add_argument('-q', '--quoted', action='store_true', default=False)
    parser.add_argument('func_name')
    parser.add_argument('func_body', nargs='*')
    options = parser.parse_args(args)
    if options.want_user:
        new_args = 'user'
        if (len(options.args) > 0):
            new_args += ','
        options.args = (new_args + options.args)
    code = self.func_template.format(func_name=options.func_name, args=options.args, func_body=' '.join(options.func_body))
    flags = {'want_user': int(options.want_user), 'quoted': int(options.quoted), 'cooldown': (int(options.cooldown) if options.cooldown else None)}
    added = bool(options.func_body)
    return (added, options.func_name, flags, options.user_level, code)