private static void PrintSequenceMultiBacktrack(SequenceMultiBacktrack seqBack, Sequence parent, PrintSequenceContext context) { Console.Write("<<"); PrintSequence(seqBack.Rules, seqBack, context); Console.Write(";;"); PrintSequence(seqBack.Seq, seqBack, context); Console.Write(">>"); }
public SequenceMultiBacktrackRuleRewritingGenerator(SequenceMultiBacktrack seqMulti, SequenceRuleCall seqRule, SequenceExpressionGenerator seqExprGen, SequenceGeneratorHelper seqHelper) { this.seqMulti = seqMulti; this.seqExprGen = seqExprGen; this.seqHelper = seqHelper; this.seqRule = seqRule; ReturnVars = seqRule.ReturnVars; specialStr = seqRule.Special ? "true" : "false"; matchingPatternClassName = "GRGEN_ACTIONS." + TypesHelper.GetPackagePrefixDot(seqRule.Package) + "Rule_" + seqRule.Name; patternName = seqRule.Name; plainRuleName = TypesHelper.PackagePrefixedNameDoubleColon(seqRule.Package, seqRule.Name); ruleName = "rule_" + TypesHelper.PackagePrefixedNameUnderscore(seqRule.Package, seqRule.Name); matchType = matchingPatternClassName + "." + NamesOfEntities.MatchInterfaceName(patternName); matchName = "match_" + seqRule.Id; matchesType = "GRGEN_LIBGR.IMatchesExact<" + matchType + ">"; matchesName = "matches_" + seqRule.Id; }
public SequenceMultiBacktrackGenerator(SequenceMultiBacktrack seqMulti, SequenceExpressionGenerator seqExprGen, SequenceGeneratorHelper seqHelper) { this.seqMulti = seqMulti; this.seqExprGen = seqExprGen; this.seqHelper = seqHelper; }