jw-python/tools/python/jwutils/Cmd.py

26 lines
517 B
Python
Raw Normal View History

from abc import ABCMeta, abstractmethod
import argparse
import Object
class Cmd(Object.Object): # export
__metaclass__=ABCMeta
@abstractmethod
def run(self, args):
pass
def __init__(self, name, help):
self.name = name
self.help = help
def _run(self, args):
pass
def add_parser(self, parsers):
r = parsers.add_parser(self.name, help=self.help,
formatter_class=argparse.ArgumentDefaultsHelpFormatter)
r.set_defaults(func=self.run)
return r