C# Class Shaolinq.Persistence.Computed.ComputedExpressionParser

Show file Open project: tumtumtum/Shaolinq Class Usage Examples

Public Methods

Method Description
ComputedExpressionParser ( TextReader reader, PropertyInfo propertyInfo, Type referencedTypes = null, Type coersionType = null ) : System
Consume ( ) : void
Parse ( TextReader reader, PropertyInfo propertyInfo, Type referencedTypes, Type coersionType ) : LambdaExpression
Parse ( string expressionText, PropertyInfo propertyInfo, Type referencedTypes, Type coersionType ) : LambdaExpression

Protected Methods

Method Description
Expect ( ComputedExpressionToken tokenValue ) : void
NormalizeOperands ( Expression &left, Expression &right ) : void
Parse ( ) : LambdaExpression
ParseAddOrSubtract ( ) : Expression
ParseAssignment ( ) : Expression
ParseComparison ( ) : Expression
ParseExpression ( ) : Expression
ParseMethodCall ( Expression target, string methodName ) : Expression
ParseMultiplyOrDivide ( ) : Expression
ParseNullCoalescing ( ) : Expression
ParseOperand ( ) : Expression
ParseUnary ( ) : Expression

Private Methods

Method Description
FindMatchingMethod ( Type type, string methodName, Type argumentTypes, bool isStatic ) : MethodInfo
TryGetType ( string name, Type &value ) : bool

Method Details

ComputedExpressionParser() public method

public ComputedExpressionParser ( TextReader reader, PropertyInfo propertyInfo, Type referencedTypes = null, Type coersionType = null ) : System
reader System.IO.TextReader
propertyInfo System.Reflection.PropertyInfo
referencedTypes System.Type
coersionType System.Type
return System

Consume() public method

public Consume ( ) : void
return void

Expect() protected method

protected Expect ( ComputedExpressionToken tokenValue ) : void
tokenValue ComputedExpressionToken
return void

NormalizeOperands() protected method

protected NormalizeOperands ( Expression &left, Expression &right ) : void
left System.Linq.Expressions.Expression
right System.Linq.Expressions.Expression
return void

Parse() protected method

protected Parse ( ) : LambdaExpression
return System.Linq.Expressions.LambdaExpression

Parse() public static method

public static Parse ( TextReader reader, PropertyInfo propertyInfo, Type referencedTypes, Type coersionType ) : LambdaExpression
reader System.IO.TextReader
propertyInfo System.Reflection.PropertyInfo
referencedTypes System.Type
coersionType System.Type
return System.Linq.Expressions.LambdaExpression

Parse() public static method

public static Parse ( string expressionText, PropertyInfo propertyInfo, Type referencedTypes, Type coersionType ) : LambdaExpression
expressionText string
propertyInfo System.Reflection.PropertyInfo
referencedTypes System.Type
coersionType System.Type
return System.Linq.Expressions.LambdaExpression

ParseAddOrSubtract() protected method

protected ParseAddOrSubtract ( ) : Expression
return System.Linq.Expressions.Expression

ParseAssignment() protected method

protected ParseAssignment ( ) : Expression
return System.Linq.Expressions.Expression

ParseComparison() protected method

protected ParseComparison ( ) : Expression
return System.Linq.Expressions.Expression

ParseExpression() protected method

protected ParseExpression ( ) : Expression
return System.Linq.Expressions.Expression

ParseMethodCall() protected method

protected ParseMethodCall ( Expression target, string methodName ) : Expression
target System.Linq.Expressions.Expression
methodName string
return System.Linq.Expressions.Expression

ParseMultiplyOrDivide() protected method

protected ParseMultiplyOrDivide ( ) : Expression
return System.Linq.Expressions.Expression

ParseNullCoalescing() protected method

protected ParseNullCoalescing ( ) : Expression
return System.Linq.Expressions.Expression

ParseOperand() protected method

protected ParseOperand ( ) : Expression
return System.Linq.Expressions.Expression

ParseUnary() protected method

protected ParseUnary ( ) : Expression
return System.Linq.Expressions.Expression