예제 #1
0
        public bool VisitNode(StateLabel node)
        {
            // Label
            var temp = NestingLevel;
            NestingLevel = 0;
            Write(node.Name + ":");
            NestingLevel = temp;

            return true;
        }
예제 #2
0
 public bool VisitNode(StateLabel node)
 {
     throw new NotImplementedException();
 }
예제 #3
0
 private void AddStateLabels()
 {
     foreach (var label in LabelTable)
     {
         var node = new StateLabel(label.Name, (int)label.Offset, null, null);
         var statement = StatementLocations[(UInt16)label.Offset];
         for (int n = 0; n < Scopes.Count; n++)
         {
             var index = Scopes[n].IndexOf(statement);
             if (index != -1)
                 Scopes[n].Insert(index, node);
         }
     }
 }