Пример #1
0
def analyze(s):
    name = traceback.extract_stack()[-2][2]
    ast = Parser().parse(s, lexer=Lexer())
    table, blocks, functions = il_gen.generate(ast, debug=True)
    dot('ast.%s'%name, ast.dotty(), str(ast))
    dot('blks.%s'%name, functions['f2'].entry.dotty())
    cf.analyze(table, blocks, functions, debug=True)
    dot('cf.%s'%name, functions['f2'].tree.dotty())
    return functions
Пример #2
0
def cf_analyze(s):
    table, blocks, functions = il.il_gen.generate(Parser().parse(s, lexer=Lexer()), True)
    cf.analyze(table, blocks, functions)
    return blocks, functions