DeveelDB  20151217
complete SQL database system, primarly developed for .NET/Mono frameworks
Public Member Functions | Protected Member Functions | Properties | Private Member Functions | List of all members
Deveel.Data.Sql.Query.JoinNode Class Reference
Inheritance diagram for Deveel.Data.Sql.Query.JoinNode:
Deveel.Data.Sql.Query.BranchQueryPlanNode Deveel.Data.Sql.Query.IQueryPlanNode Deveel.Data.Serialization.ISerializable

Public Member Functions

 JoinNode (IQueryPlanNode left, IQueryPlanNode right, ObjectName leftColumnName, SqlExpressionType @operator, SqlExpression rightExpression)
 
override ITable Evaluate (IRequest context)
 

Protected Member Functions

override void GetData (SerializeData data)
 
- Protected Member Functions inherited from Deveel.Data.Sql.Query.BranchQueryPlanNode
 BranchQueryPlanNode (IQueryPlanNode left, IQueryPlanNode right)
 
 BranchQueryPlanNode (ObjectData data)
 

Properties

ObjectName LeftColumnName [get, private set]
 
SqlExpressionType Operator [get, private set]
 
SqlExpression RightExpression [get, private set]
 
- Properties inherited from Deveel.Data.Sql.Query.BranchQueryPlanNode
IQueryPlanNode Left [get, private set]
 Gets the left node of the branch query plan node. More...
 
IQueryPlanNode Right [get, private set]
 Gets the right node of the branch query plan node. More...
 

Private Member Functions

 JoinNode (ObjectData data)
 

Detailed Description

Definition at line 26 of file JoinNode.cs.

Constructor & Destructor Documentation

Deveel.Data.Sql.Query.JoinNode.JoinNode ( IQueryPlanNode  left,
IQueryPlanNode  right,
ObjectName  leftColumnName,
SqlExpressionType operator,
SqlExpression  rightExpression 
)
inline

Definition at line 27 of file JoinNode.cs.

28  : base(left, right) {
29  LeftColumnName = leftColumnName;
30  Operator = @operator;
31  RightExpression = rightExpression;
32  }
SqlExpressionType Operator
Definition: JoinNode.cs:43
SqlExpression RightExpression
Definition: JoinNode.cs:45
Deveel.Data.Sql.Query.JoinNode.JoinNode ( ObjectData  data)
inlineprivate

Definition at line 34 of file JoinNode.cs.

35  : base(data) {
36  LeftColumnName = data.GetValue<ObjectName>("LeftColumn");
37  Operator = (SqlExpressionType) data.GetInt32("Operator");
38  RightExpression = data.GetValue<SqlExpression>("RightExpression");
39  }
SqlExpressionType Operator
Definition: JoinNode.cs:43
SqlExpressionType
All the possible type of SqlExpression supported
SqlExpression RightExpression
Definition: JoinNode.cs:45
Defines the base class for instances that represent SQL expression tree nodes.

Member Function Documentation

override ITable Deveel.Data.Sql.Query.JoinNode.Evaluate ( IRequest  context)
inlinevirtual

Implements Deveel.Data.Sql.Query.BranchQueryPlanNode.

Definition at line 47 of file JoinNode.cs.

47  {
48  // Solve the left branch result
49  var leftResult = Left.Evaluate(context);
50  // Solve the right branch result
51  var rightResult = Right.Evaluate(context);
52 
53  return leftResult.Join(context, rightResult, LeftColumnName, Operator, RightExpression);
54  }
IQueryPlanNode Right
Gets the right node of the branch query plan node.
ITable Evaluate(IRequest context)
SqlExpressionType Operator
Definition: JoinNode.cs:43
SqlExpression RightExpression
Definition: JoinNode.cs:45
IQueryPlanNode Left
Gets the left node of the branch query plan node.
override void Deveel.Data.Sql.Query.JoinNode.GetData ( SerializeData  data)
inlineprotectedvirtual

Reimplemented from Deveel.Data.Sql.Query.BranchQueryPlanNode.

Definition at line 56 of file JoinNode.cs.

56  {
57  data.SetValue("LeftColumn", LeftColumnName);
58  data.SetValue("Operator", (int)Operator);
59  data.SetValue("RightExpression", RightExpression);
60  }
void SetValue(string key, Type type, object value)
SqlExpressionType Operator
Definition: JoinNode.cs:43
SqlExpression RightExpression
Definition: JoinNode.cs:45

Property Documentation

ObjectName Deveel.Data.Sql.Query.JoinNode.LeftColumnName
getprivate set

Definition at line 41 of file JoinNode.cs.

SqlExpressionType Deveel.Data.Sql.Query.JoinNode.Operator
getprivate set

Definition at line 43 of file JoinNode.cs.

SqlExpression Deveel.Data.Sql.Query.JoinNode.RightExpression
getprivate set

Definition at line 45 of file JoinNode.cs.


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