18 using System.Collections.Generic;
20 namespace Deveel.Data.Sql.Parser {
28 public string FunctionName {
get;
private set; }
34 public IEnumerable<IExpressionNode> Arguments {
get;
private set; }
37 var args =
new List<IExpressionNode>();
38 foreach (var childNode
in node.ChildNodes) {
40 args.Add((IExpressionNode)childNode);
43 Arguments = args.ToArray();
49 FunctionName = ((ObjectNameNode) node).Name;
50 }
else if (node.
NodeName ==
"function_call_args_list") {
54 return base.OnChildNode(node);
Defines the contract for nodes in an AST model for a SQL grammar analysis and parsing.
Represents a composed name for an object within the system.
string NodeName
Gets the name of the node analyzed from the parser.
void GetArguments(ISqlNode node)
override ISqlNode OnChildNode(ISqlNode node)
During the initialization of the node from the parser, this method is called for every child node add...
This interface acts like a marker that indicates if a ISqlNode represents a SQL expression.
The default implementation of ISqlNode, that is a node in the text analysis parsing of SQL commands...
A node in a SQL command tree that is used to request a function.