Пример #1
0
def main(argv):
    """
    Source: https://www.tutorialspoint.com/python/python_command_line_arguments.htm
    :param argv:
    :return:
    """
    inputFileName = ''
    outputFileName = ''
    try:
        opts, args = getopt.getopt(argv, "hi:o:", ["ifile=", "ofile="])
    except getopt.GetoptError:
        print('test.py -i <inputfile> -o <outputfile>')
        sys.exit(2)
    for opt, arg in opts:
        if opt == '-h':
            print('test.py -i <inputfile> -o <outputfile>')
            sys.exit()
        elif opt in ("-i", "--ifile"):
            inputFileName = arg
        elif opt in ("-o", "--ofile"):
            outputFileName = arg
    inputFile = open(inputFileName, "r")
    sourceCode = inputFile.read()
    compiler = Compiler(sourceCode)
    compiler.parse()
    compiler.compile()
    code = compiler.build()
    print(code)
Пример #2
0
class TestCompiler(unittest.TestCase):
    def setUp(self):
        self.fp = 'test/test_doc_rubble'
        self.reporter = ReporterStreamConsole(1, 1)
        self.cpl = Compiler(self.reporter, BuilderAPIX64())

    def test_parse(self):
        lxr = Lexer(FileSource(self.fp), FileIteratorTracking(self.fp),
                    self.reporter)
        self.cpl.parse(lxr)
Пример #3
0
def main():
    compiler = Compiler()
    compiler.read()
    compiler.parse()
    compiler.visit()
    compiler.save_graph()