public void Accept(UsingNode node) { }
public void Accept(UsingNode node) { table.PushScope(); node.Expression.Visit(this); var symbol = nextLabel(); if (table.ContainsSymbol(symbol.ToString())) table.AddSymbol(symbol.ToString()); method.Emit(node.SourceLocation, InstructionType.StoreLocal, table.GetSymbol(symbol.ToString())); if (node.Children[0] is CodeBlockNode) node.Children[0].VisitChildren(this); else node.Children[0].Visit(this); method.Emit(node.SourceLocation, InstructionType.LoadLocal, table.GetSymbol(symbol.ToString())); method.Emit(node.SourceLocation, InstructionType.Dispose); table.PopScope(); }