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

An expression that encapsulates a unary operator for a given operand. More...

Inheritance diagram for Deveel.Data.Sql.Parser.SqlUnaryExpressionNode:
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...
 

Package Functions

 SqlUnaryExpressionNode ()
 

Properties

string Operator [get, private set]
 Gets the string representation of the operator. More...
 
IExpressionNode Operand [get, private set]
 Gets the argument of the operator. 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...
 

Additional Inherited Members

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

Detailed Description

An expression that encapsulates a unary operator for a given operand.

Definition at line 25 of file SqlUnaryExpressionNode.cs.

Constructor & Destructor Documentation

Deveel.Data.Sql.Parser.SqlUnaryExpressionNode.SqlUnaryExpressionNode ( )
inlinepackage

Definition at line 26 of file SqlUnaryExpressionNode.cs.

26  {
27  }

Member Function Documentation

override ISqlNode Deveel.Data.Sql.Parser.SqlUnaryExpressionNode.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 40 of file SqlUnaryExpressionNode.cs.

40  {
41  if (node is IExpressionNode) {
42  Operand = (IExpressionNode) node;
43  } else if (node.NodeName == "unary_op") {
44  var op = node.ChildNodes.First();
45  if (op is SqlKeyNode)
46  Operator = ((SqlKeyNode) op).Text;
47  }
48 
49  return base.OnChildNode(node);
50  }
IExpressionNode Operand
Gets the argument of the operator.
string Operator
Gets the string representation of the operator.
IEnumerable< ISqlNode > ChildNodes
Gets a read-only enumeration of the children nodes, if any.
Definition: ISqlNode.cs:39

Property Documentation

IExpressionNode Deveel.Data.Sql.Parser.SqlUnaryExpressionNode.Operand
getprivate set

Gets the argument of the operator.

Definition at line 37 of file SqlUnaryExpressionNode.cs.

string Deveel.Data.Sql.Parser.SqlUnaryExpressionNode.Operator
getprivate set

Gets the string representation of the operator.

Definition at line 32 of file SqlUnaryExpressionNode.cs.


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