示例#1
0
def write_enable_check(builder, tr):
    builder.line("bool Transition_{0.id}::is_enable(ca::ThreadBase *$thread, ca::NetBase *$net)", tr)
    builder.block_begin()
    builder.line("ca::Context ctx($thread, $net);")
    w = CppWriter()
    w.line("return true;")
    write_enable_pattern_match(builder, tr, w, "return false;")
    builder.line("return false;")
    builder.block_end()
示例#2
0
    def __init__(self, project, filename=None):
        CppWriter.__init__(self)
        self.filename = filename
        self.project = project

        # Real class used for thread representation,
        # CaThreadBase is cast to this type
        self.thread_class = "ca::Thread"

        # Generate packing function for all structures
        self.pack_bindings = False
示例#3
0
def write_enable_check(builder, tr):
    builder.line(
        "bool Transition_{0.id}::is_enable(ca::ThreadBase *$thread, ca::NetBase *$net)",
        tr)
    builder.block_begin()
    builder.line("ca::Context ctx($thread, $net);")
    w = CppWriter()
    w.line("return true;")
    write_enable_pattern_match(builder, tr, w, "return false;")
    builder.line("return false;")
    builder.block_end()
示例#4
0
文件: buildnet.py 项目: spirali/kaira
def write_enable_check(builder, tr):
    builder.line(
        "bool Transition_{0.id}::is_enable(ca::ThreadBase *$thread, ca::NetBase *$net)",
        tr)
    builder.block_begin()
    builder.line("ca::Context ctx($thread, $net);")
    w = CppWriter()
    for inscription in tr.get_token_inscriptions_in():
        if inscription.is_conditioned():
            w.if_begin("!$inscription_if_{0.uid}", inscription)
            w.line("delete $token_{0.uid};", inscription)
            w.block_end()

    w.line("return true;")
    write_enable_pattern_match(builder, tr, w, "return false;")
    builder.line("return false;")
    builder.block_end()
示例#5
0
文件: buildnet.py 项目: mec059/kaira
def write_enable_check(builder, tr):
    builder.line("bool Transition_{0.id}::is_enable(ca::ThreadBase *$thread, ca::NetBase *$net)",
                 tr)
    builder.block_begin()
    builder.line("ca::Context ctx($thread, $net);")
    w = CppWriter()
    for inscription in tr.get_token_inscriptions_in():
        if inscription.is_conditioned():
            w.if_begin("!$inscription_if_{0.uid}", inscription)
            w.line("delete $token_{0.uid};", inscription)
            w.block_end()

    w.line("return true;")
    write_enable_pattern_match(builder, tr, w, "return false;")
    builder.line("return false;")
    builder.block_end()