public virtual void Visit(CteInnerExpressionNode node) { var cteNode = Nodes.Pop(); CteNodes[node.Name] = cteNode; Nodes.Push(new CteInnerExpressionNode(cteNode, node.Name)); }
public void Visit(CteInnerExpressionNode node) { LoadScope("CTE Inner Expression"); node.Value.Accept(this); node.Accept(_visitor); RestoreScope(); }
public void Visit(CteInnerExpressionNode node) { _walker = _walker.NextChild(); _visitor.SetScope(_walker.Scope); node.Value.Accept(this); node.Accept(_visitor); _walker = _walker.Parent(); _visitor.SetScope(_walker.Scope); }
public virtual void Visit(CteExpressionNode node) { var sets = new CteInnerExpressionNode[node.InnerExpression.Length]; for (var i = node.InnerExpression.Length - 1; i >= 0; --i) { sets[i] = (CteInnerExpressionNode)Nodes.Pop(); } Nodes.Push(new CteExpressionNode(sets, Nodes.Pop())); }
public void Visit(CteInnerExpressionNode node) { var set = Nodes.Pop(); var collector = new GetSelectFieldsVisitor(); var traverser = new GetSelectFieldsTraverseVisitor(collector); set.Accept(traverser); var table = new VariableTable(collector.CollectedFieldNames); _currentScope.Parent.ScopeSymbolTable.AddSymbol(node.Name, new TableSymbol(node.Name, new TransitionSchema(node.Name, table), table, false)); Nodes.Push(new CteInnerExpressionNode(set, node.Name)); }
public virtual void Visit(CteInnerExpressionNode node) { node.Value.Accept(this); node.Accept(Visitor); }
public void Visit(CteInnerExpressionNode node) { Nodes.Push(new CteInnerExpressionNode(Nodes.Pop(), node.Name)); }
public void Visit(CteInnerExpressionNode node) { }