Package | Description |
---|---|
com.mckoi.database |
The core database classes for Mckoi.
|
Modifier and Type | Class and Description |
---|---|
class |
AbstractQueryContext
An abstract implementation of QueryContext
|
class |
DatabaseQueryContext
An implementation of a QueryContext based on a DatabaseConnection object.
|
Modifier and Type | Method and Description |
---|---|
Table |
Table.all(QueryContext context,
Expression lhs,
Operator op,
Table table)
Evaluates a non-correlated ALL type operator given the LHS expression,
the RHS subquery and the ALL operator to use.
|
Table |
Table.any(QueryContext context,
Expression lhs,
Operator op,
Table right_table)
Evaluates a non-correlated ANY type operator given the LHS expression,
the RHS subquery and the ANY operator to use.
|
RowData |
DataTable.createRowDataObject(QueryContext context)
Generates an empty RowData object for 'addRow'ing into the Table.
|
QueryPlanNode |
QueryPlan.FetchViewNode.createViewChildNode(QueryContext context)
Returns the QueryPlanNode that resolves to the view.
|
abstract TObject |
Operator.eval(TObject ob1,
TObject ob2,
GroupResolver group,
VariableResolver resolver,
QueryContext context) |
abstract TObject |
AbstractAggregateFunction.evalAggregate(GroupResolver group,
QueryContext context,
TObject val1,
TObject val2)
Evaluates the aggregate function for the given values and returns the
result.
|
TObject |
Function.evaluate(GroupResolver group,
VariableResolver resolver,
QueryContext context)
Evaluates the function and returns a TObject that represents the result
of the function.
|
TObject |
AbstractAggregateFunction.evaluate(GroupResolver group,
VariableResolver resolver,
QueryContext context) |
TObject |
Expression.evaluate(GroupResolver group,
VariableResolver resolver,
QueryContext context)
Evaluates this expression and returns an Object that represents the
result of the evaluation.
|
Table |
QueryPlan.FetchTableNode.evaluate(QueryContext context) |
Table |
QueryPlan.SingleRowTableNode.evaluate(QueryContext context) |
Table |
QueryPlan.FetchViewNode.evaluate(QueryContext context) |
Table |
QueryPlan.RangeSelectNode.evaluate(QueryContext context) |
Table |
QueryPlan.SimpleSelectNode.evaluate(QueryContext context) |
Table |
QueryPlan.MultiColumnEquiSelectNode.evaluate(QueryContext context) |
Table |
QueryPlan.FunctionalSelectNode.evaluate(QueryContext context) |
Table |
QueryPlan.ExhaustiveSelectNode.evaluate(QueryContext context) |
Table |
QueryPlan.ConstantSelectNode.evaluate(QueryContext context) |
Table |
QueryPlan.SimplePatternSelectNode.evaluate(QueryContext context) |
Table |
QueryPlan.SubsetNode.evaluate(QueryContext context) |
Table |
QueryPlan.DistinctNode.evaluate(QueryContext context) |
Table |
QueryPlan.SortNode.evaluate(QueryContext context) |
Table |
QueryPlan.GroupNode.evaluate(QueryContext context) |
Table |
QueryPlan.CreateFunctionsNode.evaluate(QueryContext context) |
Table |
QueryPlan.MarkerNode.evaluate(QueryContext context) |
Table |
QueryPlan.CachePointNode.evaluate(QueryContext context) |
Table |
QueryPlan.NaturalJoinNode.evaluate(QueryContext context) |
Table |
QueryPlan.EquiJoinNode.evaluate(QueryContext context) |
Table |
QueryPlan.JoinNode.evaluate(QueryContext context) |
Table |
QueryPlan.LeftOuterJoinNode.evaluate(QueryContext context) |
Table |
QueryPlan.LogicalUnionNode.evaluate(QueryContext context) |
Table |
QueryPlan.CompositeNode.evaluate(QueryContext context) |
Table |
QueryPlan.NonCorrelatedAnyAllNode.evaluate(QueryContext context) |
Table |
QueryPlanNode.evaluate(QueryContext context)
Evaluates the node and returns the result as a Table.
|
TObject |
Expression.evaluate(VariableResolver resolver,
QueryContext context)
Evaluation without a grouping table.
|
Table |
Table.exhaustiveSelect(QueryContext context,
Expression exp)
Exhaustively searches through this table for rows that match the
expression given.
|
Function |
FunctionDef.getFunction(QueryContext context)
Returns a Function object from this FunctionDef.
|
boolean |
Expression.hasAggregateFunction(QueryContext context)
Cascades through the expression and if any aggregate functions are found
returns true, otherwise returns false.
|
boolean |
Function.isAggregate(QueryContext context)
Returns true if this function is an aggregate function.
|
boolean |
FunctionDef.isAggregate(QueryContext context)
Returns true if this function is an aggregate, or the parameters are
aggregates.
|
boolean |
AbstractFunction.isAggregate(QueryContext context)
Returns whether the function is an aggregate function or not.
|
TObject |
AbstractAggregateFunction.postEvalAggregate(GroupResolver group,
QueryContext context,
TObject result)
Called just before the value is returned to the parent.
|
TType |
Function.returnTType(VariableResolver resolver,
QueryContext context)
The type of object this function returns.
|
TType |
Expression.returnTType(VariableResolver resolver,
QueryContext context)
Determines the type of object this expression evaluates to.
|
TType |
AbstractFunction.returnTType(VariableResolver resolver,
QueryContext context)
By Default, we assume a function returns a Numeric object.
|
void |
RowData.setColumnToDefault(int column,
QueryContext context)
Sets the given column number to the default value for this column.
|
void |
RowData.setDefaultForRest(QueryContext context)
Any columns in the row of data that haven't been set yet (they will be
'null') will be set to the default value during this method.
|
void |
RowData.setupEntire(Assignment[] assignments,
QueryContext context)
Sets up an entire row given the array of assignments.
|
void |
RowData.setupEntire(int[] col_indices,
Expression[] exps,
QueryContext context)
Sets up an entire row given the array of Expressions and a list of indices
to the columns to set.
|
void |
RowData.setupEntire(int[] col_indices,
List insert_elements,
QueryContext context)
Sets up an entire row given the list of insert elements and a list of
indices to the columns to set.
|
Table |
Table.simpleJoin(QueryContext context,
Table table,
Variable lhs_var,
Operator op,
Expression rhs)
A simple join operation.
|
Table |
Table.simpleSelect(QueryContext context,
Variable lhs_var,
Operator op,
Expression rhs)
A simple select on this table.
|
int |
DataTable.update(QueryContext context,
Table table,
Assignment[] assign_list,
int limit)
Updates the table by applying the assignment operations over each row
that is found in the input 'table' set.
|
Copyright © 2015. All rights reserved.