示例#1
0
def do_plot():
    mode_description_db = quex_file_parser.do(Setup.input_mode_files)

    for mode_descr in mode_description_db.itervalues():
        mode = Mode(mode_descr)
        # -- some modes only define event handlers that are inherited
        if len(mode.pattern_list) == 0: continue

        plotter = grapviz_generator.Generator(mode.pattern_list,
                                              StateMachineName=mode.name)
        plotter.do(Option=Setup.character_display)
示例#2
0
def do_plot():
    mode_db = quex_file_parser.do(Setup.input_mode_files)

    for mode in mode_db.values():        
        # -- some modes only define event handlers that are inherited
        pattern_action_pair_list = mode.get_pattern_action_pair_list()
        if len(pattern_action_pair_list) == 0: continue

        plotter = grapviz_generator.Generator(pattern_action_pair_list,
                                              StateMachineName = mode.name)
        plotter.do(Option=Setup.character_display)
示例#3
0
sys.path.append(os.environ["QUEX_PATH"])

import quex.output.graphviz.core as plotter
import quex.input.regular_expression.engine as regex
from quex.input.files.mode import PatternActionInfo
from quex.blackboard import setup as Setup
Setup.normalize_f = True

if "--hwut-info" in sys.argv:
    print "Plot: Pre-Context."
    sys.exit(0)

pattern = regex.do("[Hh]ello/a((b+ee(fe)*)+(b+cd)?)/", {})
pattern.mount_pre_context_sm()

pattern_list = [pattern]

my_plotter = plotter.Generator(pattern_list, "test-plot")

my_plotter.do()

# HWUT consideres '##' as comment
for line in open(
        my_plotter.pre_context_file_name).readlines():  # .replace("#", "##")
    if line.find("digraph") != -1:
        print "digraph state_machine {"
    else:
        print "%s" % line,
os.remove(my_plotter.pre_context_file_name)
os.remove("test-plot.dot")