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

An SQL BETWEEN expression node that evaluates to true if the Expression given is between MinValue (inclusive) and MaxValue (exclusive). More...

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

IExpressionNode Expression [get, private set]
 Gets the expression to be tested against MinValue and MaxValue. More...
 
IExpressionNode MinValue [get, private set]
 Gets the minimum value (inclusive) that Expression must be to evaluate to true. More...
 
IExpressionNode MaxValue [get, private set]
 Gets the maximum value (inclusive) that Expression must be to evaluate to true. More...
 
bool Not [get, private set]
 
- 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 Attributes

bool expressionSeen
 
bool minValueSeen
 

Additional Inherited Members

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

Detailed Description

An SQL BETWEEN expression node that evaluates to true if the Expression given is between MinValue (inclusive) and MaxValue (exclusive).

Definition at line 26 of file SqlBetweenExpressionNode.cs.

Member Function Documentation

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

51  {
52  if (node is IExpressionNode) {
53  if (!expressionSeen) {
54  Expression = (IExpressionNode) node;
55  expressionSeen = true;
56  } else if (!minValueSeen) {
57  MinValue = (IExpressionNode) node;
58  minValueSeen = true;
59  } else {
60  MaxValue = (IExpressionNode) node;
61  }
62  } else if (node.NodeName == "not_opt") {
63  Not = node.ChildNodes.Any();
64  }
65 
66  return base.OnChildNode(node);
67  }
IExpressionNode MinValue
Gets the minimum value (inclusive) that Expression must be to evaluate to true.
IExpressionNode MaxValue
Gets the maximum value (inclusive) that Expression must be to evaluate to true.
IExpressionNode Expression
Gets the expression to be tested against MinValue and MaxValue.

Member Data Documentation

bool Deveel.Data.Sql.Parser.SqlBetweenExpressionNode.expressionSeen
private

Definition at line 27 of file SqlBetweenExpressionNode.cs.

bool Deveel.Data.Sql.Parser.SqlBetweenExpressionNode.minValueSeen
private

Definition at line 28 of file SqlBetweenExpressionNode.cs.

Property Documentation

IExpressionNode Deveel.Data.Sql.Parser.SqlBetweenExpressionNode.Expression
getprivate set

Gets the expression to be tested against MinValue and MaxValue.

Definition at line 34 of file SqlBetweenExpressionNode.cs.

IExpressionNode Deveel.Data.Sql.Parser.SqlBetweenExpressionNode.MaxValue
getprivate set

Gets the maximum value (inclusive) that Expression must be to evaluate to true.

Definition at line 46 of file SqlBetweenExpressionNode.cs.

IExpressionNode Deveel.Data.Sql.Parser.SqlBetweenExpressionNode.MinValue
getprivate set

Gets the minimum value (inclusive) that Expression must be to evaluate to true.

Definition at line 40 of file SqlBetweenExpressionNode.cs.

bool Deveel.Data.Sql.Parser.SqlBetweenExpressionNode.Not
getprivate set

Definition at line 48 of file SqlBetweenExpressionNode.cs.


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