wilbin's picture
Upload 248 files
8896a5f verified
"""
D-SCRIPT: Structure Aware PPI Prediction
"""
import argparse, os, sys
class CitationAction(argparse.Action):
def __init__(self, option_strings, dest, **kwargs):
super(CitationAction, self).__init__(option_strings, dest, **kwargs)
def __call__(self, parser, namespace, values, option_string=None):
import dscript
print(dscript.__citation__)
setattr(namespace, self.dest, values)
sys.exit(0)
def main():
import dscript
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("-v", "--version", action="version", version="D-SCRIPT " + dscript.__version__)
parser.add_argument(
"-c",
"--citation",
action=CitationAction,
nargs=0,
help="show program's citation and exit",
)
subparsers = parser.add_subparsers(title="D-SCRIPT Commands", dest="cmd")
subparsers.required = True
import dscript.commands.train
import dscript.commands.eval
import dscript.commands.embed
import dscript.commands.predict
modules = {
"train": dscript.commands.train,
"eval": dscript.commands.eval,
"embed": dscript.commands.embed,
"predict": dscript.commands.predict,
}
for name, module in modules.items():
sp = subparsers.add_parser(name, description=module.__doc__)
module.add_args(sp)
sp.set_defaults(func=module.main)
args = parser.parse_args()
args.func(args)
if __name__ == "__main__":
main()