修改优化代码
This commit is contained in:
parent
8607be5b5c
commit
7a3aebf927
10
main.py
10
main.py
@ -5,6 +5,7 @@ from lexical.lexical import Lexical
|
|||||||
from syntax.syntax import Syntax
|
from syntax.syntax import Syntax
|
||||||
from syntax.syntax import LL1Generator
|
from syntax.syntax import LL1Generator
|
||||||
import sys
|
import sys
|
||||||
|
from Optimizer.optimizer import optimize, output_ir_str
|
||||||
|
|
||||||
from semantic.rule import symbol_table_pool
|
from semantic.rule import symbol_table_pool
|
||||||
|
|
||||||
@ -48,6 +49,15 @@ if lexical_success:
|
|||||||
for code in syntax.get_result().root.code:
|
for code in syntax.get_result().root.code:
|
||||||
i += 1
|
i += 1
|
||||||
print(i, ' \t', code)
|
print(i, ' \t', code)
|
||||||
|
|
||||||
|
quads = [tuple(map(str.strip, str(item).strip("()").split(","))) for item in syntax.get_result().root.code]
|
||||||
|
|
||||||
|
optimized_quads = optimize(quads)
|
||||||
|
|
||||||
|
print()
|
||||||
|
print(f"优化后的四元式:\t")
|
||||||
|
print(output_ir_str(optimized_quads))
|
||||||
|
|
||||||
else:
|
else:
|
||||||
print('错误原因:\t', syntax.get_error().info)
|
print('错误原因:\t', syntax.get_error().info)
|
||||||
else:
|
else:
|
||||||
|
Loading…
Reference in New Issue
Block a user