Class ExpressionTreeConverter<TA, TB>
Converts System.Linq.Expressions.Expression trees.
Inheritance
System.Object
System.Linq.Expressions.ExpressionVisitor
ExpressionTreeConverter<TA, TB>
Inherited Members
System.Linq.Expressions.ExpressionVisitor.Visit(System.Linq.Expressions.Expression)
System.Linq.Expressions.ExpressionVisitor.Visit(System.Collections.ObjectModel.ReadOnlyCollection<System.Linq.Expressions.Expression>)
System.Linq.Expressions.ExpressionVisitor.Visit<T>(System.Collections.ObjectModel.ReadOnlyCollection<T>, System.Func<T, T>)
System.Linq.Expressions.ExpressionVisitor.VisitAndConvert<T>(T, System.String)
System.Linq.Expressions.ExpressionVisitor.VisitAndConvert<T>(System.Collections.ObjectModel.ReadOnlyCollection<T>, System.String)
System.Linq.Expressions.ExpressionVisitor.VisitBinary(System.Linq.Expressions.BinaryExpression)
System.Linq.Expressions.ExpressionVisitor.VisitBlock(System.Linq.Expressions.BlockExpression)
System.Linq.Expressions.ExpressionVisitor.VisitConditional(System.Linq.Expressions.ConditionalExpression)
System.Linq.Expressions.ExpressionVisitor.VisitConstant(System.Linq.Expressions.ConstantExpression)
System.Linq.Expressions.ExpressionVisitor.VisitDebugInfo(System.Linq.Expressions.DebugInfoExpression)
System.Linq.Expressions.ExpressionVisitor.VisitDynamic(System.Linq.Expressions.DynamicExpression)
System.Linq.Expressions.ExpressionVisitor.VisitDefault(System.Linq.Expressions.DefaultExpression)
System.Linq.Expressions.ExpressionVisitor.VisitExtension(System.Linq.Expressions.Expression)
System.Linq.Expressions.ExpressionVisitor.VisitGoto(System.Linq.Expressions.GotoExpression)
System.Linq.Expressions.ExpressionVisitor.VisitInvocation(System.Linq.Expressions.InvocationExpression)
System.Linq.Expressions.ExpressionVisitor.VisitLabelTarget(System.Linq.Expressions.LabelTarget)
System.Linq.Expressions.ExpressionVisitor.VisitLabel(System.Linq.Expressions.LabelExpression)
System.Linq.Expressions.ExpressionVisitor.VisitLoop(System.Linq.Expressions.LoopExpression)
System.Linq.Expressions.ExpressionVisitor.VisitIndex(System.Linq.Expressions.IndexExpression)
System.Linq.Expressions.ExpressionVisitor.VisitMethodCall(System.Linq.Expressions.MethodCallExpression)
System.Linq.Expressions.ExpressionVisitor.VisitNewArray(System.Linq.Expressions.NewArrayExpression)
System.Linq.Expressions.ExpressionVisitor.VisitNew(System.Linq.Expressions.NewExpression)
System.Linq.Expressions.ExpressionVisitor.VisitRuntimeVariables(System.Linq.Expressions.RuntimeVariablesExpression)
System.Linq.Expressions.ExpressionVisitor.VisitSwitchCase(System.Linq.Expressions.SwitchCase)
System.Linq.Expressions.ExpressionVisitor.VisitSwitch(System.Linq.Expressions.SwitchExpression)
System.Linq.Expressions.ExpressionVisitor.VisitCatchBlock(System.Linq.Expressions.CatchBlock)
System.Linq.Expressions.ExpressionVisitor.VisitTry(System.Linq.Expressions.TryExpression)
System.Linq.Expressions.ExpressionVisitor.VisitTypeBinary(System.Linq.Expressions.TypeBinaryExpression)
System.Linq.Expressions.ExpressionVisitor.VisitUnary(System.Linq.Expressions.UnaryExpression)
System.Linq.Expressions.ExpressionVisitor.VisitMemberInit(System.Linq.Expressions.MemberInitExpression)
System.Linq.Expressions.ExpressionVisitor.VisitListInit(System.Linq.Expressions.ListInitExpression)
System.Linq.Expressions.ExpressionVisitor.VisitElementInit(System.Linq.Expressions.ElementInit)
System.Linq.Expressions.ExpressionVisitor.VisitMemberBinding(System.Linq.Expressions.MemberBinding)
System.Linq.Expressions.ExpressionVisitor.VisitMemberAssignment(System.Linq.Expressions.MemberAssignment)
System.Linq.Expressions.ExpressionVisitor.VisitMemberMemberBinding(System.Linq.Expressions.MemberMemberBinding)
System.Linq.Expressions.ExpressionVisitor.VisitMemberListBinding(System.Linq.Expressions.MemberListBinding)
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Cqrs.Sql.DataStores
Assembly: Cqrs.Sql.dll
Syntax
public abstract class ExpressionTreeConverter<TA, TB> : ExpressionVisitor, IExpressionTreeConverter
Type Parameters
Name | Description |
---|---|
TA | |
TB |
Constructors
ExpressionTreeConverter()
Instantiates a new instance of the ExpressionTreeConverter<TA, TB> class
Declaration
protected ExpressionTreeConverter()
ExpressionTreeConverter(Dictionary<MemberInfo, LambdaExpression>)
Instantiates a new instance of the ExpressionTreeConverter<TA, TB> class
Declaration
protected ExpressionTreeConverter(Dictionary<MemberInfo, LambdaExpression> mappings)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.Dictionary<System.Reflection.MemberInfo, System.Linq.Expressions.LambdaExpression> | mappings |
Methods
GetMappings()
A collection of System.Linq.Expressions.LambdaExpression grouped by System.Reflection.MemberInfo.
Declaration
public abstract Dictionary<MemberInfo, LambdaExpression> GetMappings()
Returns
Type | Description |
---|---|
System.Collections.Generic.Dictionary<System.Reflection.MemberInfo, System.Linq.Expressions.LambdaExpression> |
Implements
VisitLambda<T>(Expression<T>)
Visits the children of the node
.
Declaration
protected override Expression VisitLambda<T>(Expression<T> node)
Parameters
Type | Name | Description |
---|---|---|
System.Linq.Expressions.Expression<T> | node |
Returns
Type | Description |
---|---|
System.Linq.Expressions.Expression |
Type Parameters
Name | Description |
---|---|
T |
Overrides
System.Linq.Expressions.ExpressionVisitor.VisitLambda<T>(System.Linq.Expressions.Expression<T>)
VisitMember(MemberExpression)
If the System.Linq.Expressions.MemberExpression.Member of the provided node
matches a mapping in
GetMappings(), then that mapping is executed.
Declaration
protected override Expression VisitMember(MemberExpression node)
Parameters
Type | Name | Description |
---|---|---|
System.Linq.Expressions.MemberExpression | node |
Returns
Type | Description |
---|---|
System.Linq.Expressions.Expression |
Overrides
System.Linq.Expressions.ExpressionVisitor.VisitMember(System.Linq.Expressions.MemberExpression)
VisitParameter(ParameterExpression)
If the node
if of System.Type TA
A System.Linq.Expressions.ParameterExpression of System.Type TB
will to created with the same name.
Declaration
protected override Expression VisitParameter(ParameterExpression node)
Parameters
Type | Name | Description |
---|---|---|
System.Linq.Expressions.ParameterExpression | node |
Returns
Type | Description |
---|---|
System.Linq.Expressions.Expression |
Overrides
System.Linq.Expressions.ExpressionVisitor.VisitParameter(System.Linq.Expressions.ParameterExpression)