예제 #1
0
def main():
  # parse args
  parser = argparse.ArgumentParser()
  parser.add_argument('files', nargs='+')
  parser.add_argument('-P', '--add-private', action='store_true', default=False, help="add private functions")
  parser.add_argument('-p', '--gen-python', action='store_true', default=False, help="generate python code for vamos")
  parser.add_argument('-f', '--gen-fd', action='store', default=None, help="generate a new fd file")
  parser.add_argument('-c', '--gen-sasc', action='store', default=None, help="generate SAS C code file")
  parser.add_argument('-E', '--prefix', action='store', default='', help="add prefix to functions in C")
  args = parser.parse_args()

  # main loop
  files = args.files
  for fname in files:
    fd = FDFormat.read_fd(fname)
    code_gen = False
    if args.gen_python:
      generate_python_code(fd, args.add_private)
      code_gen = True
    if args.gen_sasc:
      generate_sasc_code(args.gen_sasc, fd, args.add_private, args.prefix)
      code_gen = True
    if args.gen_fd != None:
      FDFormat.write_fd(args.gen_fd, fd, args.add_private)
      code_gen = True
    if not code_gen:
      dump(fname, fd, args.add_private)
예제 #2
0
def main(args=None):
    # parse args
    parser = argparse.ArgumentParser()
    parser.add_argument("files", nargs="+")
    parser.add_argument(
        "-P",
        "--add-private",
        action="store_true",
        default=False,
        help="add private functions",
    )
    parser.add_argument(
        "-p",
        "--gen-python",
        action="store_true",
        default=False,
        help="generate python code for vamos",
    )
    parser.add_argument("-f",
                        "--gen-fd",
                        action="store",
                        default=None,
                        help="generate a new fd file")
    parser.add_argument(
        "-c",
        "--gen-sasc",
        action="store",
        default=None,
        help="generate SAS C code file",
    )
    parser.add_argument(
        "-E",
        "--prefix",
        action="store",
        default="",
        help="add prefix to functions in C",
    )
    args = parser.parse_args(args=args)

    # main loop
    files = args.files
    for fname in files:
        fd = FDFormat.read_fd(fname)
        code_gen = False
        if args.gen_python:
            generate_python_code(fd, args.add_private)
            code_gen = True
        if args.gen_sasc:
            generate_sasc_code(args.gen_sasc, fd, args.add_private,
                               args.prefix)
            code_gen = True
        if args.gen_fd != None:
            FDFormat.write_fd(args.gen_fd, fd, args.add_private)
            code_gen = True
        if not code_gen:
            dump(fname, fd, args.add_private)
예제 #3
0
def main():
    # parse args
    parser = argparse.ArgumentParser()
    parser.add_argument('files', nargs='+')
    parser.add_argument('-P',
                        '--add-private',
                        action='store_true',
                        default=False,
                        help="add private functions")
    parser.add_argument('-p',
                        '--gen-python',
                        action='store_true',
                        default=False,
                        help="generate python code for vamos")
    parser.add_argument('-f',
                        '--gen-fd',
                        action='store',
                        default=None,
                        help="generate a new fd file")
    parser.add_argument('-c',
                        '--gen-sasc',
                        action='store',
                        default=None,
                        help="generate SAS C code file")
    parser.add_argument('-E',
                        '--prefix',
                        action='store',
                        default='',
                        help="add prefix to functions in C")
    args = parser.parse_args()

    # main loop
    files = args.files
    for fname in files:
        fd = FDFormat.read_fd(fname)
        code_gen = False
        if args.gen_python:
            generate_python_code(fd, args.add_private)
            code_gen = True
        if args.gen_sasc:
            generate_sasc_code(args.gen_sasc, fd, args.add_private,
                               args.prefix)
            code_gen = True
        if args.gen_fd != None:
            FDFormat.write_fd(args.gen_fd, fd, args.add_private)
            code_gen = True
        if not code_gen:
            dump(fname, fd, args.add_private)