mirror of
https://github.com/PyCQA/flake8.git
synced 2026-04-13 08:04:18 +00:00
Start working on our option handling story
This commit is contained in:
parent
37b92cd4b4
commit
f539464368
1 changed files with 32 additions and 0 deletions
32
flake8/option_parser.py
Normal file
32
flake8/option_parser.py
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
import optparse
|
||||||
|
|
||||||
|
|
||||||
|
class Option(object):
|
||||||
|
def __init__(self, short_option_name=None, long_option_name=None,
|
||||||
|
# Options below here are taken from the optparse.Option class
|
||||||
|
action=None, default=None, type=None, dest=None,
|
||||||
|
nargs=None, const=None, choices=None, callback=None,
|
||||||
|
callback_args=None, callback_kwargs=None, help=None,
|
||||||
|
metavar=None,
|
||||||
|
# Options below here are specific to Flake8
|
||||||
|
parse_from_config=False
|
||||||
|
):
|
||||||
|
self.short_option_name = short_option_name
|
||||||
|
self.long_option_name = long_option_name
|
||||||
|
self.option_args = filter(None, (short_option_name, long_option_name))
|
||||||
|
self.option_kwargs = {
|
||||||
|
'action': action,
|
||||||
|
'default': default,
|
||||||
|
'type': type,
|
||||||
|
'dest': dest,
|
||||||
|
'callback': callback,
|
||||||
|
'callback_args': callback_args,
|
||||||
|
'callback_kwargs': callback_kwargs,
|
||||||
|
'help': help,
|
||||||
|
'metavar': metavar,
|
||||||
|
}
|
||||||
|
for key, value in self.option_kwargs.items():
|
||||||
|
setattr(self, key, value)
|
||||||
|
self.parse_from_config = parse_from_config
|
||||||
|
self._option = optparse.Option(*self.option_args,
|
||||||
|
**self.option_kwargs)
|
||||||
Loading…
Add table
Add a link
Reference in a new issue