public override void Visit(SelectAllQueryNode node) { _symbolTable.SetCurrentNode(node); checkCollectionFollowsCollection(node.Variable); AllType?collectionNameType = _symbolTable.RetrieveSymbol(node.Variable, out bool isCollectionInQuery, false); bool fromIsColl = isCollectionInQuery; if (fromIsColl) { if (node.Parent is DeclarationNode dclNode) { node.Type = collectionNameType.ToString(); node.Name = node.Variable; } else if (node.Parent is ExpressionNode expNode) { // extractmin 'length' from selectall from asdf where () where () node.Type = collectionNameType.ToString(); //expNode.QueryName = node.Variable; expNode.OverAllType = collectionNameType; expNode.Name = node.Variable; } } else { _symbolTable.FromVarIsNotCollError(node.Variable); } if (node.WhereCondition != null) { node.WhereCondition.Accept(this); } }
public override void Visit(SelectAllQueryNode node) { SymbolTable.SetCurrentNode(node); CheckDeclared(node.Variable); if (node.WhereCondition != null) { var type = SymbolTable.RetrieveSymbol(node.Variable); (node.WhereCondition as WhereNode).AttributeClass = type ?? default(AllType); node.WhereCondition.Accept(this); } }
public override void Visit(SelectAllQueryNode node) { ProgramCode.Append("SELECTALL "); //ProgramCode.Append(node.Type); ProgramCode.Append("FROM"); ProgramCode.Append(node.Variable); if (node.WhereCondition != null) { node.WhereCondition.Accept(this); } ProgramCode.Append(";\n"); }
public override AbstractNode VisitSelectAll([NotNull] GiraphParser.SelectAllContext context) { SelectAllQueryNode SelectNode = new SelectAllQueryNode(context.Start.Line, context.Start.Column); SelectNode.Type = getContextType(context.variable()); SelectNode.Variable = context.variable().GetText(); SelectNode.Name = SelectNode.Variable; if (context.where () != null) { SelectNode.WhereCondition = Visit(context.where ()); } return(SelectNode); }
public abstract void Visit(SelectAllQueryNode node);