コード例 #1
0
 public static PatternNode GetTargetPlusInlined(PatternEdge edge, PatternGraph patternGraph, IDictionary<PatternNode, PatternNode> originalToInlinedIndependent)
 {
     PatternNode target = patternGraph.GetTargetPlusInlined(edge);
     if(edge.OriginalIndependentElement != null && target == null)
     {
         PatternNode targetOriginal = edge.OriginalIndependentElement.pointOfDefinition.GetTargetPlusInlined((PatternEdge)edge.OriginalIndependentElement);
         if(originalToInlinedIndependent.ContainsKey(targetOriginal))
             target = originalToInlinedIndependent[targetOriginal];
         else
             target = targetOriginal; // not declared in independent itself, but in some parent
     }
     return target;
 }
コード例 #2
0
ファイル: lgspGrGen.cs プロジェクト: jblomer/GrGen.NET
 PatternNode GetTargetPlusInlined(PatternEdge edge, PatternGraph patternGraph, IDictionary<PatternNode, PatternNode> originalToInlinedIndependent)
 {
     PatternNode target = patternGraph.GetTargetPlusInlined(edge);
     if(edge.OriginalIndependentElement != null && target == null)
     {
         PatternNode targetOriginal = edge.OriginalIndependentElement.pointOfDefinition.GetTargetPlusInlined((PatternEdge)edge.OriginalIndependentElement);
         target = originalToInlinedIndependent[targetOriginal];
     }
     return target;
 }