Source code for modalysis.cli.parsers

"""Top-level CLI parser construction."""

import argparse

from modalysis.cli.parsers.dmr import register_dmr_parser
from modalysis.cli.parsers.gff import register_gff_parser
from modalysis.cli.parsers.pileup import register_pileup_parser
from modalysis.cli.parsers.plot import register_plot_parser
from modalysis.cli.parsers.server import register_server_parser


[docs] def build_parser() -> argparse.ArgumentParser: """Build and return the root argparse parser for modalysis CLI.""" parser = argparse.ArgumentParser( prog="modalysis", description="Methylation and DMR Analysis" ) parser.add_argument( "-v", "--verbose", action="store_true", help="Enable debug logging" ) subparsers = parser.add_subparsers(dest="command") register_server_parser(subparsers) register_dmr_parser(subparsers) register_gff_parser(subparsers) register_pileup_parser(subparsers) register_plot_parser(subparsers) return parser