def main(argv=None):
parser = argparse.ArgumentParser(description=DESCRIPTION)<EOL>parser.add_argument(<EOL>'<STR_LIT>',<EOL>help='<STR_LIT>'<EOL>)<EOL>parser.add_argument('<STR_LIT>', help='<STR_LIT>')<EOL>if argv is None:<EOL><INDENT>args = parser.parse_args()<EOL><DEDENT>else:<EOL><INDENT>args = parser.parse_args(argv)<EOL><DEDENT>print('<STR_LIT>' % (args.pipeline, args.output))<EOL>rules = import_rules(args.pipeline)<EOL>with open(args.output, '<STR_LIT:w>') as fp:<EOL><INDENT>fp.write('<STR_LIT>')<EOL>fp.write('<STR_LIT>')<EOL>fp.write('<STR_LIT>' % ('<STR_LIT:U+0020>'.join(sys.argv)))<EOL>fp.write('<STR_LIT>')<EOL>fp.write('<STR_LIT>')<EOL>fp.write('<STR_LIT>')<EOL>fp.write('<STR_LIT:\n>')<EOL>fp.write('<STR_LIT:\n>')<EOL>fp.write(<EOL>'<STR_LIT>' %<EOL>args.pipeline<EOL>)<EOL>fp.write('<STR_LIT:\n>')<EOL>for i, rule in enumerate(rules):<EOL><INDENT>li = '<STR_LIT>' % (i + <NUM_LIT:1>)<EOL>fp.write('<STR_LIT>' % (<EOL>li,<EOL>indent(get_doc(rule), '<STR_LIT:U+0020>' * len(li))<EOL>))<EOL>fp.write('<STR_LIT:\n>')<EOL><DEDENT><DEDENT>
Generates documentation for signature generation pipeline