def main (*args): import getopt console_out = False py_text = False opts, args = getopt.getopt(args, 'cp') for opt_flag, opt_val in opts: if opt_flag == '-c': py_text = True console_out = True elif opt_flag == '-p': py_text = True if len(args) > 0: for arg in args: base_path, _ = os.path.splitext(arg) base_name = os.path.basename(base_path) with open(arg) as input_file: bindings = frontend.parse_string(input_file.read()) if py_text: out_module_src = codegen_module_src(bindings, base_name) if console_out: print(out_module_src) else: with open(base_path + '.py', 'w') as file_obj: file_obj.write(out_module_src) else: out_module_co = codegen_module_co(bindings, base_name) output_module_file(base_path + '.pyc', out_module_co, filename = arg) else: bindings = frontend.parse_string(frontend.TEST_SRC) if py_text: out_module_src = codegen_module_src(bindings, 'backend_test') if console_out: print(out_module_src) else: with open('backend_test.py', 'w') as file_obj: file_obj.write(out_module_src) else: out_module_co = codegen_module_co(bindings, 'backend_test') output_module_file('backend_test.pyc', out_module_co)
def rofl_string_to_codeobj (src, *args, **kws): return backend.codegen_module_co(frontend.parse_string(src, **kws), *args, **kws)
def rofl_string_to_source (src, *args, **kws): return backend.codegen_module_src(frontend.parse_string(src, **kws), *args, **kws)