Index: gc_core/py/lang_core/gc_engine.py ================================================================== --- gc_core/py/lang_core/gc_engine.py +++ gc_core/py/lang_core/gc_engine.py @@ -711,26 +711,21 @@ bTokenFound = True # meta arc (for token type) if "<meta>" in dNode: for sMeta in dNode["<meta>"]: # no regex here, we just search if <dNode["sType"]> exists within <sMeta> - if sMeta == "*": + if sMeta == "*" or dToken["sType"] == sMeta: if bDebug: print(" MATCH: *" + sMeta) - yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"]["*"]] } + yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"][sMeta]] } bTokenFound = True elif "¬" in sMeta: if dToken["sType"] not in sMeta: if bDebug: print(" MATCH: *" + sMeta) yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"][sMeta]] } bTokenFound = True - elif dToken["sType"] == sMeta: - if bDebug: - print(" MATCH: *" + sMeta) - yield { "iNode1": iNode1, "dNode": dGraph[dNode["<meta>"][sMeta]] } - bTokenFound = True if "bKeep" in dPointer and not bTokenFound: yield dPointer # JUMP # Warning! Recurssion! if "<>" in dNode: