DeveelDB  20151217
complete SQL database system, primarly developed for .NET/Mono frameworks
Protected Member Functions | Properties | Private Member Functions | List of all members
Deveel.Data.Sql.Parser.SqlFunctionCallExpressionNode Class Reference

A node in a SQL command tree that is used to request a function. More...

Inheritance diagram for Deveel.Data.Sql.Parser.SqlFunctionCallExpressionNode:
Deveel.Data.Sql.Parser.SqlNode Deveel.Data.Sql.Parser.IExpressionNode Deveel.Data.Sql.Parser.ISqlNode Deveel.Data.Sql.Parser.ISqlNode

Protected Member Functions

override ISqlNode OnChildNode (ISqlNode node)
 During the initialization of the node from the parser, this method is called for every child node added to ChildNodes More...
 
- Protected Member Functions inherited from Deveel.Data.Sql.Parser.SqlNode
virtual void OnNodeInit ()
 After the initialization of the node from the parser, this method is invoked to let the specific initialization to occur. More...
 

Properties

string FunctionName [get, private set]
 Gets the name of the function to be invoked. More...
 
IEnumerable< IExpressionNodeArguments [get, private set]
 Gets an optional read-only list of arguments to be passed to the function invoked. More...
 
- Properties inherited from Deveel.Data.Sql.Parser.SqlNode
ISqlNode Parent [get, private set]
 Gets the parent of the current node. More...
 
string NodeName [get, private set]
 Gets the name of the node, as expressed in the SQL grammar. More...
 
IEnumerable< ISqlNodeChildNodes [get, private set]
 Gets an immutable list of nodes, children of the current node. More...
 
IEnumerable< TokenTokens [get, private set]
 Gets an immutable list of Token that represent the source of this node. More...
 
string ISqlNode. NodeName [get]
 
ISqlNode ISqlNode. Parent [get]
 
IEnumerable< ISqlNode > ISqlNode. ChildNodes [get]
 
IEnumerable< Token > ISqlNode. Tokens [get]
 
- Properties inherited from Deveel.Data.Sql.Parser.ISqlNode
string NodeName [get]
 Gets the name of the node analyzed from the parser. More...
 
ISqlNode Parent [get]
 Gets a reference to the parent ISqlNode, if any. More...
 
IEnumerable< ISqlNodeChildNodes [get]
 Gets a read-only enumeration of the children nodes, if any. More...
 
IEnumerable< TokenTokens [get]
 Gets an enumeration of the tokens composing the this node. More...
 

Private Member Functions

void GetArguments (ISqlNode node)
 

Additional Inherited Members

- Public Member Functions inherited from Deveel.Data.Sql.Parser.SqlNode
 SqlNode ()
 

Detailed Description

A node in a SQL command tree that is used to request a function.

Definition at line 24 of file SqlFunctionCallExpressionNode.cs.

Member Function Documentation

void Deveel.Data.Sql.Parser.SqlFunctionCallExpressionNode.GetArguments ( ISqlNode  node)
inlineprivate

Definition at line 36 of file SqlFunctionCallExpressionNode.cs.

36  {
37  var args = new List<IExpressionNode>();
38  foreach (var childNode in node.ChildNodes) {
39  if (childNode is IExpressionNode)
40  args.Add((IExpressionNode)childNode);
41  }
42 
43  Arguments = args.ToArray();
44  }
IEnumerable< IExpressionNode > Arguments
Gets an optional read-only list of arguments to be passed to the function invoked.
override ISqlNode Deveel.Data.Sql.Parser.SqlFunctionCallExpressionNode.OnChildNode ( ISqlNode  node)
inlineprotectedvirtual

During the initialization of the node from the parser, this method is called for every child node added to ChildNodes

Reimplemented from Deveel.Data.Sql.Parser.SqlNode.

Definition at line 47 of file SqlFunctionCallExpressionNode.cs.

47  {
48  if (node is ObjectNameNode) {
49  FunctionName = ((ObjectNameNode) node).Name;
50  } else if (node.NodeName == "function_call_args_list") {
51  GetArguments(node);
52  }
53 
54  return base.OnChildNode(node);
55  }
string FunctionName
Gets the name of the function to be invoked.

Property Documentation

IEnumerable<IExpressionNode> Deveel.Data.Sql.Parser.SqlFunctionCallExpressionNode.Arguments
getprivate set

Gets an optional read-only list of arguments to be passed to the function invoked.

Definition at line 34 of file SqlFunctionCallExpressionNode.cs.

string Deveel.Data.Sql.Parser.SqlFunctionCallExpressionNode.FunctionName
getprivate set

Gets the name of the function to be invoked.

Definition at line 28 of file SqlFunctionCallExpressionNode.cs.


The documentation for this class was generated from the following file: