MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / make_option

Function make_option

lib/sqlalchemy/testing/plugin/pytestplugin.py:37–78  ·  lib/sqlalchemy/testing/plugin/pytestplugin.py::make_option
(name, **kw)

Source from the content-addressed store, hash-verified

35 group = parser.getgroup(class="st">"sqlalchemy")
36
37 def make_option(name, **kw):
38 callback_ = kw.pop(class="st">"callback", None)
39 if callback_:
40
41 class CallableAction(argparse.Action):
42 def __call__(
43 self, parser, namespace, values, option_string=None
44 ):
45 callback_(option_string, values, parser)
46
47 kw[class="st">"action"] = CallableAction
48
49 zeroarg_callback = kw.pop(class="st">"zeroarg_callback", None)
50 if zeroarg_callback:
51
52 class CallableAction(argparse.Action):
53 def __init__(
54 self,
55 option_strings,
56 dest,
57 default=False,
58 required=False,
59 help=None, class="cm"># noqa
60 ):
61 super().__init__(
62 option_strings=option_strings,
63 dest=dest,
64 nargs=0,
65 const=True,
66 default=default,
67 required=required,
68 help=help,
69 )
70
71 def __call__(
72 self, parser, namespace, values, option_string=None
73 ):
74 zeroarg_callback(option_string, values, parser)
75
76 kw[class="st">"action"] = CallableAction
77
78 group.addoption(name, **kw)
79
80 plugin_base.setup_options(make_option)
81

Callers 1

setup_optionsFunction · 0.85

Calls 1

popMethod · 0.45

Tested by

no test coverage detected