C# Class Rebel.Framework.Dynamics.Expressions.ExpressionParser

Mostrar archivo Open project: RebelCMS/rebelcmsxu5 Class Usage Examples

Public Methods

Method Description
ExpressionParser ( System.Linq.Expressions.ParameterExpression parameters, string expression, object values ) : System
Parse ( Type resultType ) : Expression
ParseLambda ( System.Linq.Expressions.ParameterExpression parameters, Type resultType, string expression ) : LambdaExpression
ParseLambda ( Type itType, Type resultType, string expression ) : LambdaExpression
ParseOrdering ( ) : IEnumerable

Private Methods

Method Description
AddInterface ( List types, Type type ) : void
AddSymbol ( string name, object value ) : void
CheckAndPromoteOperand ( Type signatures, string opName, Expression &expr, int errorPos ) : void
CheckAndPromoteOperands ( Type signatures, string opName, Expression &left, Expression &right, int errorPos ) : void
CompareConversions ( Type s, Type left, Type right ) : int
CreateKeywords ( ) : object>.Dictionary
CreateLiteral ( object value, string text ) : Expression
FindBestMethod ( IEnumerable methods, Expression args, MethodBase &method ) : int
FindGenericType ( Type generic, Type type ) : Type
FindIndexer ( Type type, Expression args, MethodBase &method ) : int
FindMethod ( Type type, string methodName, bool staticAccess, Expression args, MethodBase &method ) : int
FindPropertyOrField ( Type type, string memberName, bool staticAccess ) : MemberInfo
GenerateAdd ( Expression left, Expression right ) : Expression
GenerateConditional ( Expression test, Expression expr1, Expression expr2, int errorPos ) : Expression
GenerateConversion ( Expression expr, Type type, int errorPos ) : Expression
GenerateEqual ( Expression left, Expression right ) : Expression
GenerateGreaterThan ( Expression left, Expression right ) : Expression
GenerateGreaterThanEqual ( Expression left, Expression right ) : Expression
GenerateLessThan ( Expression left, Expression right ) : Expression
GenerateLessThanEqual ( Expression left, Expression right ) : Expression
GenerateNotEqual ( Expression left, Expression right ) : Expression
GenerateStaticMethodCall ( string methodName, Expression left, Expression right ) : Expression
GenerateStringConcat ( Expression left, Expression right ) : Expression
GenerateSubtract ( Expression left, Expression right ) : Expression
GetIdentifier ( ) : string
GetNonNullableType ( Type type ) : Type
GetNumericTypeKind ( Type type ) : int
GetStaticMethod ( string methodName, Expression left, Expression right ) : MethodInfo
GetTypeName ( Type type ) : string
IncompatibleOperandsError ( string opName, Expression left, Expression right, int pos ) : Exception
IsApplicable ( MethodData method, Expression args ) : bool
IsBetterThan ( Expression args, MethodData left, MethodData right ) : bool
IsCompatibleWith ( Type source, Type target ) : bool
IsEnumType ( Type type ) : bool
IsNullableType ( Type type ) : bool
IsNumericType ( Type type ) : bool
IsPredefinedType ( Type type ) : bool
IsSignedIntegralType ( Type type ) : bool
IsUnsignedIntegralType ( Type type ) : bool
NextChar ( ) : void
NextToken ( ) : void
ParseAdditive ( ) : Expression
ParseAggregate ( Expression instance, Type elementType, string methodName, int errorPos ) : Expression
ParseArgumentList ( ) : System.Linq.Expressions.Expression[]
ParseArguments ( ) : System.Linq.Expressions.Expression[]
ParseComparison ( ) : Expression
ParseElementAccess ( Expression expr ) : Expression
ParseEnum ( string name, Type type ) : object
ParseError ( int pos, string format ) : Exception
ParseError ( string format ) : Exception
ParseExpression ( ) : Expression
ParseIdentifier ( ) : Expression
ParseIif ( ) : Expression
ParseIntegerLiteral ( ) : Expression
ParseIt ( ) : Expression
ParseLambdaInvocation ( LambdaExpression lambda ) : Expression
ParseLogicalAnd ( ) : Expression
ParseLogicalOr ( ) : Expression
ParseMemberAccess ( Type type, Expression instance ) : Expression
ParseMultiplicative ( ) : Expression
ParseNew ( ) : Expression
ParseNumber ( string text, Type type ) : object
ParseParenExpression ( ) : Expression
ParsePrimary ( ) : Expression
ParsePrimaryStart ( ) : Expression
ParseRealLiteral ( ) : Expression
ParseStringLiteral ( ) : Expression
ParseTypeAccess ( Type type ) : Expression
ParseUnary ( ) : Expression
ProcessParameters ( System.Linq.Expressions.ParameterExpression parameters ) : void
ProcessValues ( object values ) : void
PromoteExpression ( Expression expr, Type type, bool exact ) : Expression
SelfAndBaseClasses ( Type type ) : IEnumerable
SelfAndBaseTypes ( Type type ) : IEnumerable
SetTextPos ( int pos ) : void
TokenIdentifierIs ( string id ) : bool
ValidateDigit ( ) : void
ValidateToken ( TokenId t ) : void
ValidateToken ( TokenId t, string errorMessage ) : void

Method Details

ExpressionParser() public method

public ExpressionParser ( System.Linq.Expressions.ParameterExpression parameters, string expression, object values ) : System
parameters System.Linq.Expressions.ParameterExpression
expression string
values object
return System

Parse() public method

public Parse ( Type resultType ) : Expression
resultType System.Type
return System.Linq.Expressions.Expression

ParseLambda() public static method

public static ParseLambda ( System.Linq.Expressions.ParameterExpression parameters, Type resultType, string expression ) : LambdaExpression
parameters System.Linq.Expressions.ParameterExpression
resultType System.Type
expression string
return System.Linq.Expressions.LambdaExpression

ParseLambda() public static method

public static ParseLambda ( Type itType, Type resultType, string expression ) : LambdaExpression
itType System.Type
resultType System.Type
expression string
return System.Linq.Expressions.LambdaExpression

ParseOrdering() public method

public ParseOrdering ( ) : IEnumerable
return IEnumerable