Class Expression
This class manage the creation of Expressions. These can be Predicate, Artithmetich and String expressions. Also aggregations can be built using an instance of the Expression class
There are differnet kind of expression as constant values, field values, old field values (used in upsert definitios addUpsertDefition(Expression[])) and aggregations aggr(Expression.Op, Expression)
Every expression can be combined to create other Expresssions by using unary, binary and ternary operatos Expression.Op.
Expression[] groupbyexprs = new Expression[2];
groupbyexprs[0] = Expression.fieldStr(3);
groupbyexprs[1] = Expression.aggr(Expression.Op.KVMAX, Expression.fieldFloat(9));
Scan scan = table.scan(new ScanProperties(table).groupBy(groupbyexprs), 0);</code></pre>
Inheritance
Inherited Members
Namespace: lxapi
Assembly: lxapi.dll
Syntax
public class Expression
Constructors
Expression(Decimal)
Constant decimal expression
Declaration
public Expression(Decimal val)
Parameters
Type | Name | Description |
---|---|---|
Decimal | val | value |
Expression(Expression.Op, Expression)
Unary expression
Declaration
public Expression(Expression.Op op, Expression op1)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | unary operator Expression.Op |
Expression | op1 | expr1 |
Expression(Expression.Op, Expression, Expression)
Binary expression
Declaration
public Expression(Expression.Op op, Expression op1, Expression op2)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | Binary operator Expression.Op |
Expression | op1 | expr1 |
Expression | op2 | expr2 |
Expression(Expression.Op, Expression, Expression, Expression)
Ternary expression
Declaration
public Expression(Expression.Op op, Expression op1, Expression op2, Expression op3)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | Ternary operator Expression.Op |
Expression | op1 | expr1 |
Expression | op2 | expr2 |
Expression | op3 | expr3 |
Expression(Byte[])
Constant byte array expression
Declaration
public Expression(byte[] val)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | val | value |
Expression(Double)
Constant double expression
Declaration
public Expression(double val)
Parameters
Type | Name | Description |
---|---|---|
System.Double | val | value |
Expression(Int64)
Constant long expression
Declaration
public Expression(long val)
Parameters
Type | Name | Description |
---|---|---|
System.Int64 | val | value |
Expression(String)
Constant string expression
Declaration
public Expression(string val)
Parameters
Type | Name | Description |
---|---|---|
System.String | val | value |
Fields
kvExpr
Declaration
public readonly IntPtr kvExpr
Field Value
Type | Description |
---|---|
System.IntPtr |
Methods
aggr(Expression.Op, Expression)
Aggregate expression.
Expression[] groupbyexprs = new Expression[3];
groupbyexprs[0] = Expression.fieldStr(2); // group by third column
groupbyexprs[1] = Expression.aggr(Expression.Op.KVADD, Expression(1)); // count over the third column
groupbyexprs[2] = Expression.aggr(Expression.Op.KVMAX, Expression.fieldFloat(1)); // max second column for the same third column
Declaration
public static Expression aggr(Expression.Op op, Expression op1)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | unary operator Expression.Op |
Expression | op1 |
Returns
Type | Description |
---|---|
Expression |
aggr(Expression.Op, Expression, Expression)
Aggregate expression.
Declaration
public static Expression aggr(Expression.Op op, Expression op1, Expression op2)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | |
Expression | op1 | |
Expression | op2 |
Returns
Type | Description |
---|---|
Expression |
aggr(Expression.Op, Expression, Expression, Expression)
Aggregate expression.
Declaration
public static Expression aggr(Expression.Op op, Expression op1, Expression op2, Expression op3)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | |
Expression | op1 | |
Expression | op2 | |
Expression | op3 |
Returns
Type | Description |
---|---|
Expression |
fieldBytes(Int32)
Byte array Column expression
Declaration
public static Expression fieldBytes(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
fieldDecimal(Int32)
Decimal Column expression
Declaration
public static Expression fieldDecimal(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
fieldFloat(Int32)
Float Column expression
Declaration
public static Expression fieldFloat(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
fieldInt(Int32)
Integer Column expression
Declaration
public static Expression fieldInt(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
fieldStr(Int32)
String Column expression
Declaration
public static Expression fieldStr(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
Finalize()
Declaration
protected void Finalize()
nullBytes()
Null byte array expression
Declaration
public static Expression nullBytes()
Returns
Type | Description |
---|---|
Expression |
nullDecimal()
Null Decimal expression
Declaration
public static Expression nullDecimal()
Returns
Type | Description |
---|---|
Expression |
nullFloat()
Null float expression
Declaration
public static Expression nullFloat()
Returns
Type | Description |
---|---|
Expression |
nullInt()
Null integer expression
Declaration
public static Expression nullInt()
Returns
Type | Description |
---|---|
Expression |
nullStr()
Null string expression
Declaration
public static Expression nullStr()
Returns
Type | Description |
---|---|
Expression |
oldFieldBytes(Int32)
Byte array Column old value expression. addUpsertDefition(Expression[])
Declaration
public static Expression oldFieldBytes(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
oldFieldDecimal(Int32)
Decimal Column old value expression. addUpsertDefition(Expression[])
Declaration
public static Expression oldFieldDecimal(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
oldFieldFloat(Int32)
Float Column old value expression. addUpsertDefition(Expression[])
Declaration
public static Expression oldFieldFloat(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
oldFieldInt(Int32)
Integer Column old value expression. addUpsertDefition(Expression[])
Declaration
public static Expression oldFieldInt(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
oldFieldStr(Int32)
String Column old value expression. addUpsertDefition(Expression[])
Declaration
public static Expression oldFieldStr(int fno)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fno | column position |
Returns
Type | Description |
---|---|
Expression |
op(Expression.Op)
Apply unary operator to expression
Declaration
public Expression op(Expression.Op op)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | unary operator Expression.Op |
Returns
Type | Description |
---|---|
Expression | New expression |
op(Expression.Op, Expression)
Apply binary operator to expression
Declaration
public Expression op(Expression.Op op, Expression op2)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | binary operator Expression.Op |
Expression | op2 | expr2 |
Returns
Type | Description |
---|---|
Expression | New expression |
op(Expression.Op, Expression, Expression)
Apply ternary operator to expression
Declaration
public Expression op(Expression.Op op, Expression op2, Expression op3)
Parameters
Type | Name | Description |
---|---|---|
Expression.Op | op | ternary operator Expression.Op |
Expression | op2 | expr2 |
Expression | op3 | expr3 |
Returns
Type | Description |
---|---|
Expression | New expression |