Show / Hide Table of Contents

Class ExpressionUnsafeFactory

Factory for expression trees that bypasses argument validation checks. This factory should be used with extreme caution, only if type safety guarantees are provided elsewhere. A typical use of this factory is for expression deserialization.

Inheritance
System.Object
ExpressionUnsafeFactory
Implements
IExpressionFactory
Namespace: System.Linq.Expressions
Assembly: Nuqleon.Linq.CompilerServices.dll
Syntax
public sealed class ExpressionUnsafeFactory : Object, IExpressionFactory

Fields

Instance

Gets the singleton instance of the factory.

Declaration
public static readonly IExpressionFactory Instance
Field Value
Type Description
IExpressionFactory

Methods

Add(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic addition operation that does not have overflow checking.

Declaration
public BinaryExpression Add(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Add and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Add(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic addition operation that does not have overflow checking. The implementing method can be specified.

Declaration
public BinaryExpression Add(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Add and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an addition assignment operation that does not have overflow checking.

Declaration
public BinaryExpression AddAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an addition assignment operation that does not have overflow checking.

Declaration
public BinaryExpression AddAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents an addition assignment operation that does not have overflow checking.

Declaration
public BinaryExpression AddAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddAssignChecked(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an addition assignment operation that has overflow checking.

Declaration
public BinaryExpression AddAssignChecked(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddAssignChecked and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddAssignChecked(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an addition assignment operation that has overflow checking.

Declaration
public BinaryExpression AddAssignChecked(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddAssignChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddAssignChecked(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents an addition assignment operation that has overflow checking.

Declaration
public BinaryExpression AddAssignChecked(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddAssignChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddChecked(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic addition operation that has overflow checking.

Declaration
public BinaryExpression AddChecked(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddChecked and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AddChecked(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic addition operation that has overflow checking. The implementing method can be specified.

Declaration
public BinaryExpression AddChecked(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AddChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

And(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise langword_csharp_AND operation.

Declaration
public BinaryExpression And(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.And and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

And(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise langword_csharp_AND operation. The implementing method can be specified.

Declaration
public BinaryExpression And(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.And and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AndAlso(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a conditional langword_csharp_AND operation that evaluates the second operand only if the first operand evaluates to true.

Declaration
public BinaryExpression AndAlso(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AndAlso and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AndAlso(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a conditional langword_csharp_AND operation that evaluates the second operand only if the first operand is resolved to true. The implementing method can be specified.

Declaration
public BinaryExpression AndAlso(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AndAlso and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AndAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise AND assignment operation.

Declaration
public BinaryExpression AndAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AndAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AndAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise AND assignment operation.

Declaration
public BinaryExpression AndAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AndAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

AndAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise AND assignment operation.

Declaration
public BinaryExpression AndAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.AndAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ArrayAccess(Expression, IEnumerable<Expression>)

Creates an System.Linq.Expressions.IndexExpression to access a multidimensional array.

Declaration
public IndexExpression ArrayAccess(Expression array, IEnumerable<Expression> indexes)
Parameters
Type Name Description
System.Linq.Expressions.Expression array

An expression that represents the multidimensional array.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> indexes

An System.Collections.Generic.IEnumerable<> containing expressions used to index the array.

Returns
Type Description
System.Linq.Expressions.IndexExpression

The created System.Linq.Expressions.IndexExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ArrayAccess(Expression, Expression[])

Creates an System.Linq.Expressions.IndexExpression to access an array.

Declaration
public IndexExpression ArrayAccess(Expression array, Expression[] indexes)
Parameters
Type Name Description
System.Linq.Expressions.Expression array

An expression representing the array to index.

System.Linq.Expressions.Expression[] indexes

An array that contains expressions used to index the array.

Returns
Type Description
System.Linq.Expressions.IndexExpression

The created System.Linq.Expressions.IndexExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ArrayIndex(Expression, IEnumerable<Expression>)

Creates a System.Linq.Expressions.MethodCallExpression that represents applying an array index operator to an array of rank more than one.

Declaration
public MethodCallExpression ArrayIndex(Expression array, IEnumerable<Expression> indexes)
Parameters
Type Name Description
System.Linq.Expressions.Expression array

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.MethodCallExpression.Object property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> indexes

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.MethodCallExpression.Arguments collection.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ArrayIndex(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents applying an array index operator to an array of rank one.

Declaration
public BinaryExpression ArrayIndex(Expression array, Expression index)
Parameters
Type Name Description
System.Linq.Expressions.Expression array

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression index

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ArrayIndex and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ArrayIndex(Expression, Expression[])

Creates a System.Linq.Expressions.MethodCallExpression that represents applying an array index operator to a multidimensional array.

Declaration
public MethodCallExpression ArrayIndex(Expression array, Expression[] indexes)
Parameters
Type Name Description
System.Linq.Expressions.Expression array

An array of System.Linq.Expressions.Expression instances - indexes for the array index operation.

System.Linq.Expressions.Expression[] indexes

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.MethodCallExpression.Arguments collection.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ArrayLength(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents an expression for obtaining the length of a one-dimensional array.

Declaration
public UnaryExpression ArrayLength(Expression array)
Parameters
Type Name Description
System.Linq.Expressions.Expression array

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ArrayLength and the System.Linq.Expressions.UnaryExpression.Operand property equal to array.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Assign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an assignment operation.

Declaration
public BinaryExpression Assign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Assign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Bind(MemberInfo, Expression)

Creates a System.Linq.Expressions.MemberAssignment that represents the initialization of a field or property.

Declaration
public MemberAssignment Bind(MemberInfo member, Expression expression)
Parameters
Type Name Description
System.Reflection.MemberInfo member

A System.Reflection.MemberInfo to set the System.Linq.Expressions.MemberBinding.Member property equal to.

System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.MemberAssignment.Expression property equal to.

Returns
Type Description
System.Linq.Expressions.MemberAssignment

A System.Linq.Expressions.MemberAssignment that has System.Linq.Expressions.MemberBinding.BindingType equal to System.Linq.Expressions.MemberBindingType.Assignment and the System.Linq.Expressions.MemberBinding.Member and System.Linq.Expressions.MemberAssignment.Expression properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Bind(MethodInfo, Expression)

Creates a System.Linq.Expressions.MemberAssignment that represents the initialization of a member by using a property accessor method.

Declaration
public MemberAssignment Bind(MethodInfo propertyAccessor, Expression expression)
Parameters
Type Name Description
System.Reflection.MethodInfo propertyAccessor

A System.Reflection.MethodInfo that represents a property accessor method.

System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.MemberAssignment.Expression property equal to.

Returns
Type Description
System.Linq.Expressions.MemberAssignment

A System.Linq.Expressions.MemberAssignment that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.Assignment, the System.Linq.Expressions.MemberBinding.Member property set to the System.Reflection.PropertyInfo that represents the property accessed in propertyAccessor, and the System.Linq.Expressions.MemberAssignment.Expression property set to expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(IEnumerable<Expression>)

Creates a System.Linq.Expressions.BlockExpression that contains the given expressions and has no variables.

Declaration
public BlockExpression Block(IEnumerable<Expression> expressions)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(IEnumerable<ParameterExpression>, IEnumerable<Expression>)

Creates a System.Linq.Expressions.BlockExpression that contains the given variables and expressions.

Declaration
public BlockExpression Block(IEnumerable<ParameterExpression> variables, IEnumerable<Expression> expressions)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> variables

The variables in the block.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(IEnumerable<ParameterExpression>, Expression[])

Creates a System.Linq.Expressions.BlockExpression that contains the given variables and expressions.

Declaration
public BlockExpression Block(IEnumerable<ParameterExpression> variables, Expression[] expressions)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> variables

The variables in the block.

System.Linq.Expressions.Expression[] expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Expression, Expression)

Creates a System.Linq.Expressions.BlockExpression that contains two expressions and has no variables.

Declaration
public BlockExpression Block(Expression arg0, Expression arg1)
Parameters
Type Name Description
System.Linq.Expressions.Expression arg0

The first expression in the block.

System.Linq.Expressions.Expression arg1

The second expression in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Expression, Expression, Expression)

Creates a System.Linq.Expressions.BlockExpression that contains three expressions and has no variables.

Declaration
public BlockExpression Block(Expression arg0, Expression arg1, Expression arg2)
Parameters
Type Name Description
System.Linq.Expressions.Expression arg0

The first expression in the block.

System.Linq.Expressions.Expression arg1

The second expression in the block.

System.Linq.Expressions.Expression arg2

The third expression in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Expression, Expression, Expression, Expression)

Creates a System.Linq.Expressions.BlockExpression that contains four expressions and has no variables.

Declaration
public BlockExpression Block(Expression arg0, Expression arg1, Expression arg2, Expression arg3)
Parameters
Type Name Description
System.Linq.Expressions.Expression arg0

The first expression in the block.

System.Linq.Expressions.Expression arg1

The second expression in the block.

System.Linq.Expressions.Expression arg2

The third expression in the block.

System.Linq.Expressions.Expression arg3

The fourth expression in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Expression, Expression, Expression, Expression, Expression)

Creates a System.Linq.Expressions.BlockExpression that contains five expressions and has no variables.

Declaration
public BlockExpression Block(Expression arg0, Expression arg1, Expression arg2, Expression arg3, Expression arg4)
Parameters
Type Name Description
System.Linq.Expressions.Expression arg0

The first expression in the block.

System.Linq.Expressions.Expression arg1

The second expression in the block.

System.Linq.Expressions.Expression arg2

The third expression in the block.

System.Linq.Expressions.Expression arg3

The fourth expression in the block.

System.Linq.Expressions.Expression arg4

The fifth expression in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Expression[])

Creates a System.Linq.Expressions.BlockExpression that contains the given expressions and has no variables.

Declaration
public BlockExpression Block(Expression[] expressions)
Parameters
Type Name Description
System.Linq.Expressions.Expression[] expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Type, IEnumerable<Expression>)

Creates a System.Linq.Expressions.BlockExpression that contains the given expressions, has no variables and has specific result type.

Declaration
public BlockExpression Block(Type type, IEnumerable<Expression> expressions)
Parameters
Type Name Description
System.Type type

The result type of the block.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Type, IEnumerable<ParameterExpression>, IEnumerable<Expression>)

Creates a System.Linq.Expressions.BlockExpression that contains the given variables and expressions.

Declaration
public BlockExpression Block(Type type, IEnumerable<ParameterExpression> variables, IEnumerable<Expression> expressions)
Parameters
Type Name Description
System.Type type

The result type of the block.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> variables

The variables in the block.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Type, IEnumerable<ParameterExpression>, Expression[])

Creates a System.Linq.Expressions.BlockExpression that contains the given variables and expressions.

Declaration
public BlockExpression Block(Type type, IEnumerable<ParameterExpression> variables, Expression[] expressions)
Parameters
Type Name Description
System.Type type

The result type of the block.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> variables

The variables in the block.

System.Linq.Expressions.Expression[] expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Block(Type, Expression[])

Creates a System.Linq.Expressions.BlockExpression that contains the given expressions, has no variables and has specific result type.

Declaration
public BlockExpression Block(Type type, Expression[] expressions)
Parameters
Type Name Description
System.Type type

The result type of the block.

System.Linq.Expressions.Expression[] expressions

The expressions in the block.

Returns
Type Description
System.Linq.Expressions.BlockExpression

The created System.Linq.Expressions.BlockExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Break(LabelTarget)

Creates a System.Linq.Expressions.GotoExpression representing a break statement.

Declaration
public GotoExpression Break(LabelTarget target)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Break, the System.Linq.Expressions.GotoExpression.Target property set to target, and a null value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Break(LabelTarget, Expression)

Creates a System.Linq.Expressions.GotoExpression representing a break statement. The value passed to the label upon jumping can be specified.

Declaration
public GotoExpression Break(LabelTarget target, Expression value)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Linq.Expressions.Expression value

The value that will be passed to the associated label upon jumping.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Break, the System.Linq.Expressions.GotoExpression.Target property set to target, and value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Break(LabelTarget, Expression, Type)

Creates a System.Linq.Expressions.GotoExpression representing a break statement with the specified type. The value passed to the label upon jumping can be specified.

Declaration
public GotoExpression Break(LabelTarget target, Expression value, Type type)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Linq.Expressions.Expression value

The value that will be passed to the associated label upon jumping.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Break, the System.Linq.Expressions.GotoExpression.Target property set to target, the System.Linq.Expressions.Expression.Type property set to type, and value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Break(LabelTarget, Type)

Creates a System.Linq.Expressions.GotoExpression representing a break statement with the specified type.

Declaration
public GotoExpression Break(LabelTarget target, Type type)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Break, the System.Linq.Expressions.GotoExpression.Target property set to target, and the System.Linq.Expressions.Expression.Type property set to type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(Expression, MethodInfo)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a method that takes no arguments.

Declaration
public MethodCallExpression Call(Expression instance, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

An System.Linq.Expressions.Expression that specifies the instance for an instance method call (pass null for a static (langword_csharp_Shared in Visual Basic) method).

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(Expression, MethodInfo, IEnumerable<Expression>)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a method that takes arguments.

Declaration
public MethodCallExpression Call(Expression instance, MethodInfo method, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.MethodCallExpression.Object property equal to (pass null for a static (langword_csharp_Shared in Visual Basic) method).

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.MethodCallExpression.Arguments collection.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object, System.Linq.Expressions.MethodCallExpression.Method, and System.Linq.Expressions.MethodCallExpression.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(Expression, MethodInfo, Expression, Expression)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a method that takes two arguments.

Declaration
public MethodCallExpression Call(Expression instance, MethodInfo method, Expression arg0, Expression arg1)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

An System.Linq.Expressions.Expression that specifies the instance for an instance call. (pass null for a static (Shared in Visual Basic) method).

System.Reflection.MethodInfo method

The System.Reflection.MethodInfo that represents the target method.

System.Linq.Expressions.Expression arg0

The System.Linq.Expressions.Expression that represents the first argument.

System.Linq.Expressions.Expression arg1

The System.Linq.Expressions.Expression that represents the second argument.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(Expression, MethodInfo, Expression, Expression, Expression)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a method that takes three arguments.

Declaration
public MethodCallExpression Call(Expression instance, MethodInfo method, Expression arg0, Expression arg1, Expression arg2)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

An System.Linq.Expressions.Expression that specifies the instance for an instance call. (pass null for a static (Shared in Visual Basic) method).

System.Reflection.MethodInfo method

The System.Reflection.MethodInfo that represents the target method.

System.Linq.Expressions.Expression arg0

The System.Linq.Expressions.Expression that represents the first argument.

System.Linq.Expressions.Expression arg1

The System.Linq.Expressions.Expression that represents the second argument.

System.Linq.Expressions.Expression arg2

The System.Linq.Expressions.Expression that represents the third argument.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(Expression, MethodInfo, Expression[])

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a method that takes arguments.

Declaration
public MethodCallExpression Call(Expression instance, MethodInfo method, Expression[] arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

An System.Linq.Expressions.Expression that specifies the instance for an instance method call (pass null for a static (langword_csharp_Shared in Visual Basic) method).

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.MethodCallExpression.Arguments collection.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object, System.Linq.Expressions.MethodCallExpression.Method, and System.Linq.Expressions.MethodCallExpression.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(Expression, String, Type[], Expression[])

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a method by calling the appropriate factory method.

Declaration
public MethodCallExpression Call(Expression instance, string methodName, Type[] typeArguments, Expression[] arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

An System.Linq.Expressions.Expression whose System.Linq.Expressions.Expression.Type property value will be searched for a specific method.

System.String methodName

The name of the method.

System.Type[] typeArguments

An array of System.Type objects that specify the type parameters of the generic method. This argument should be null when methodName specifies a non-generic method.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects that represents the arguments to the method.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call, the System.Linq.Expressions.MethodCallExpression.Object property equal to instance, System.Linq.Expressions.MethodCallExpression.Method set to the System.Reflection.MethodInfo that represents the specified instance method, and System.Linq.Expressions.MethodCallExpression.Arguments set to the specified arguments.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(MethodInfo, IEnumerable<Expression>)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static (Shared in Visual Basic) method.

Declaration
public MethodCallExpression Call(MethodInfo method, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Reflection.MethodInfo method

The System.Reflection.MethodInfo that represents the target method.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

A collection of System.Linq.Expressions.Expression that represents the call arguments.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(MethodInfo, Expression)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static (langword_csharp_Shared in Visual Basic) method that takes one argument.

Declaration
public MethodCallExpression Call(MethodInfo method, Expression arg0)
Parameters
Type Name Description
System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Linq.Expressions.Expression arg0

The System.Linq.Expressions.Expression that represents the first argument.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(MethodInfo, Expression, Expression)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static method that takes two arguments.

Declaration
public MethodCallExpression Call(MethodInfo method, Expression arg0, Expression arg1)
Parameters
Type Name Description
System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Linq.Expressions.Expression arg0

The System.Linq.Expressions.Expression that represents the first argument.

System.Linq.Expressions.Expression arg1

The System.Linq.Expressions.Expression that represents the second argument.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(MethodInfo, Expression, Expression, Expression)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static method that takes three arguments.

Declaration
public MethodCallExpression Call(MethodInfo method, Expression arg0, Expression arg1, Expression arg2)
Parameters
Type Name Description
System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Linq.Expressions.Expression arg0

The System.Linq.Expressions.Expression that represents the first argument.

System.Linq.Expressions.Expression arg1

The System.Linq.Expressions.Expression that represents the second argument.

System.Linq.Expressions.Expression arg2

The System.Linq.Expressions.Expression that represents the third argument.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(MethodInfo, Expression, Expression, Expression, Expression)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static method that takes four arguments.

Declaration
public MethodCallExpression Call(MethodInfo method, Expression arg0, Expression arg1, Expression arg2, Expression arg3)
Parameters
Type Name Description
System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Linq.Expressions.Expression arg0

The System.Linq.Expressions.Expression that represents the first argument.

System.Linq.Expressions.Expression arg1

The System.Linq.Expressions.Expression that represents the second argument.

System.Linq.Expressions.Expression arg2

The System.Linq.Expressions.Expression that represents the third argument.

System.Linq.Expressions.Expression arg3

The System.Linq.Expressions.Expression that represents the fourth argument.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(MethodInfo, Expression, Expression, Expression, Expression, Expression)

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static method that takes five arguments.

Declaration
public MethodCallExpression Call(MethodInfo method, Expression arg0, Expression arg1, Expression arg2, Expression arg3, Expression arg4)
Parameters
Type Name Description
System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Linq.Expressions.Expression arg0

The System.Linq.Expressions.Expression that represents the first argument.

System.Linq.Expressions.Expression arg1

The System.Linq.Expressions.Expression that represents the second argument.

System.Linq.Expressions.Expression arg2

The System.Linq.Expressions.Expression that represents the third argument.

System.Linq.Expressions.Expression arg3

The System.Linq.Expressions.Expression that represents the fourth argument.

System.Linq.Expressions.Expression arg4

The System.Linq.Expressions.Expression that represents the fifth argument.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Object and System.Linq.Expressions.MethodCallExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(MethodInfo, Expression[])

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static (langword_csharp_Shared in Visual Basic) method that has arguments.

Declaration
public MethodCallExpression Call(MethodInfo method, Expression[] arguments)
Parameters
Type Name Description
System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents a static (langword_csharp_Shared in Visual Basic) method to set the System.Linq.Expressions.MethodCallExpression.Method property equal to.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.MethodCallExpression.Arguments collection.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call and the System.Linq.Expressions.MethodCallExpression.Method and System.Linq.Expressions.MethodCallExpression.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Call(Type, String, Type[], Expression[])

Creates a System.Linq.Expressions.MethodCallExpression that represents a call to a static (langword_csharp_Shared in Visual Basic) method by calling the appropriate factory method.

Declaration
public MethodCallExpression Call(Type type, string methodName, Type[] typeArguments, Expression[] arguments)
Parameters
Type Name Description
System.Type type

The System.Type that specifies the type that contains the specified static (langword_csharp_Shared in Visual Basic) method.

System.String methodName

The name of the method.

System.Type[] typeArguments

An array of System.Type objects that specify the type parameters of the generic method. This argument should be null when methodName specifies a non-generic method.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects that represent the arguments to the method.

Returns
Type Description
System.Linq.Expressions.MethodCallExpression

A System.Linq.Expressions.MethodCallExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Call, the System.Linq.Expressions.MethodCallExpression.Method property set to the System.Reflection.MethodInfo that represents the specified static (langword_csharp_Shared in Visual Basic) method, and the System.Linq.Expressions.MethodCallExpression.Arguments property set to the specified arguments.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Catch(ParameterExpression, Expression)

Creates a System.Linq.Expressions.CatchBlock representing a catch statement with a reference to the caught System.Exception object for use in the handler body.

Declaration
public CatchBlock Catch(ParameterExpression variable, Expression body)
Parameters
Type Name Description
System.Linq.Expressions.ParameterExpression variable

A System.Linq.Expressions.ParameterExpression representing a reference to the System.Exception object caught by this handler.

System.Linq.Expressions.Expression body

The body of the catch statement.

Returns
Type Description
System.Linq.Expressions.CatchBlock

The created System.Linq.Expressions.CatchBlock.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Catch(ParameterExpression, Expression, Expression)

Creates a System.Linq.Expressions.CatchBlock representing a catch statement with an System.Exception filter and a reference to the caught System.Exception object.

Declaration
public CatchBlock Catch(ParameterExpression variable, Expression body, Expression filter)
Parameters
Type Name Description
System.Linq.Expressions.ParameterExpression variable

A System.Linq.Expressions.ParameterExpression representing a reference to the System.Exception object caught by this handler.

System.Linq.Expressions.Expression body

The body of the catch statement.

System.Linq.Expressions.Expression filter

The body of the System.Exception filter.

Returns
Type Description
System.Linq.Expressions.CatchBlock

The created System.Linq.Expressions.CatchBlock.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Catch(Type, Expression)

Creates a System.Linq.Expressions.CatchBlock representing a catch statement.

Declaration
public CatchBlock Catch(Type type, Expression body)
Parameters
Type Name Description
System.Type type

The System.Linq.Expressions.Expression.Type of System.Exception this System.Linq.Expressions.CatchBlock will handle.

System.Linq.Expressions.Expression body

The body of the catch statement.

Returns
Type Description
System.Linq.Expressions.CatchBlock

The created System.Linq.Expressions.CatchBlock.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Catch(Type, Expression, Expression)

Creates a System.Linq.Expressions.CatchBlock representing a catch statement with an System.Exception filter but no reference to the caught System.Exception object.

Declaration
public CatchBlock Catch(Type type, Expression body, Expression filter)
Parameters
Type Name Description
System.Type type

The System.Linq.Expressions.Expression.Type of System.Exception this System.Linq.Expressions.CatchBlock will handle.

System.Linq.Expressions.Expression body

The body of the catch statement.

System.Linq.Expressions.Expression filter

The body of the System.Exception filter.

Returns
Type Description
System.Linq.Expressions.CatchBlock

The created System.Linq.Expressions.CatchBlock.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ClearDebugInfo(SymbolDocumentInfo)

Creates a System.Linq.Expressions.DebugInfoExpression for clearing a sequence point.

Declaration
public DebugInfoExpression ClearDebugInfo(SymbolDocumentInfo document)
Parameters
Type Name Description
System.Linq.Expressions.SymbolDocumentInfo document

The System.Linq.Expressions.SymbolDocumentInfo that represents the source file.

Returns
Type Description
System.Linq.Expressions.DebugInfoExpression

An instance of System.Linq.Expressions.DebugInfoExpression for clearning a sequence point.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Coalesce(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a coalescing operation.

Declaration
public BinaryExpression Coalesce(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Coalesce and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Coalesce(Expression, Expression, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a coalescing operation, given a conversion function.

Declaration
public BinaryExpression Coalesce(Expression left, Expression right, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Coalesce and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Condition(Expression, Expression, Expression)

Creates a System.Linq.Expressions.ConditionalExpression that represents a conditional statement.

Declaration
public ConditionalExpression Condition(Expression test, Expression ifTrue, Expression ifFalse)
Parameters
Type Name Description
System.Linq.Expressions.Expression test

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.Test property equal to.

System.Linq.Expressions.Expression ifTrue

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.IfTrue property equal to.

System.Linq.Expressions.Expression ifFalse

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.IfFalse property equal to.

Returns
Type Description
System.Linq.Expressions.ConditionalExpression

A System.Linq.Expressions.ConditionalExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Conditional and the System.Linq.Expressions.ConditionalExpression.Test, System.Linq.Expressions.ConditionalExpression.IfTrue, and System.Linq.Expressions.ConditionalExpression.IfFalse properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Condition(Expression, Expression, Expression, Type)

Creates a System.Linq.Expressions.ConditionalExpression that represents a conditional statement.

Declaration
public ConditionalExpression Condition(Expression test, Expression ifTrue, Expression ifFalse, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression test

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.Test property equal to.

System.Linq.Expressions.Expression ifTrue

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.IfTrue property equal to.

System.Linq.Expressions.Expression ifFalse

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.IfFalse property equal to.

System.Type type

A System.Linq.Expressions.Expression.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.ConditionalExpression

A System.Linq.Expressions.ConditionalExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Conditional and the System.Linq.Expressions.ConditionalExpression.Test, System.Linq.Expressions.ConditionalExpression.IfTrue, and System.Linq.Expressions.ConditionalExpression.IfFalse properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Constant(Object)

Creates a System.Linq.Expressions.ConstantExpression that has the System.Linq.Expressions.ConstantExpression.Value property set to the specified value.

Declaration
public ConstantExpression Constant(object value)
Parameters
Type Name Description
System.Object value

An System.Object to set the System.Linq.Expressions.ConstantExpression.Value property equal to.

Returns
Type Description
System.Linq.Expressions.ConstantExpression

A System.Linq.Expressions.ConstantExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Constant and the System.Linq.Expressions.ConstantExpression.Value property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Constant(Object, Type)

Creates a System.Linq.Expressions.ConstantExpression that has the System.Linq.Expressions.ConstantExpression.Value and System.Linq.Expressions.Expression.Type properties set to the specified values.

Declaration
public ConstantExpression Constant(object value, Type type)
Parameters
Type Name Description
System.Object value

An System.Object to set the System.Linq.Expressions.ConstantExpression.Value property equal to.

System.Type type

A System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.ConstantExpression

A System.Linq.Expressions.ConstantExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Constant and the System.Linq.Expressions.ConstantExpression.Value and System.Linq.Expressions.Expression.Type properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Continue(LabelTarget)

Creates a System.Linq.Expressions.GotoExpression representing a continue statement.

Declaration
public GotoExpression Continue(LabelTarget target)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Continue, the System.Linq.Expressions.GotoExpression.Target property set to target, and a null value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Continue(LabelTarget, Type)

Creates a System.Linq.Expressions.GotoExpression representing a continue statement with the specified type.

Declaration
public GotoExpression Continue(LabelTarget target, Type type)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Continue, the System.Linq.Expressions.GotoExpression.Target property set to target, the System.Linq.Expressions.Expression.Type property set to type, and a null value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Convert(Expression, Type)

Creates a System.Linq.Expressions.UnaryExpression that represents a type conversion operation.

Declaration
public UnaryExpression Convert(Expression expression, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Type type

A System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Convert and the System.Linq.Expressions.UnaryExpression.Operand and System.Linq.Expressions.Expression.Type properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Convert(Expression, Type, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents a conversion operation for which the implementing method is specified.

Declaration
public UnaryExpression Convert(Expression expression, Type type, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Type type

A System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.UnaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Convert and the System.Linq.Expressions.UnaryExpression.Operand, System.Linq.Expressions.Expression.Type, and System.Linq.Expressions.UnaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ConvertChecked(Expression, Type)

Creates a System.Linq.Expressions.UnaryExpression that represents a conversion operation that throws an exception if the target type is overflowed.

Declaration
public UnaryExpression ConvertChecked(Expression expression, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Type type

A System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ConvertChecked and the System.Linq.Expressions.UnaryExpression.Operand and System.Linq.Expressions.Expression.Type properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ConvertChecked(Expression, Type, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents a conversion operation that throws an exception if the target type is overflowed and for which the implementing method is specified.

Declaration
public UnaryExpression ConvertChecked(Expression expression, Type type, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Type type

A System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.UnaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ConvertChecked and the System.Linq.Expressions.UnaryExpression.Operand, System.Linq.Expressions.Expression.Type, and System.Linq.Expressions.UnaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

DebugInfo(SymbolDocumentInfo, Int32, Int32, Int32, Int32)

Creates a System.Linq.Expressions.DebugInfoExpression with the specified span.

Declaration
public DebugInfoExpression DebugInfo(SymbolDocumentInfo document, int startLine, int startColumn, int endLine, int endColumn)
Parameters
Type Name Description
System.Linq.Expressions.SymbolDocumentInfo document

The System.Linq.Expressions.SymbolDocumentInfo that represents the source file.

System.Int32 startLine

The start line of this System.Linq.Expressions.DebugInfoExpression. Must be greater than 0.

System.Int32 startColumn

The start column of this System.Linq.Expressions.DebugInfoExpression. Must be greater than 0.

System.Int32 endLine

The end line of this System.Linq.Expressions.DebugInfoExpression. Must be greater or equal than the start line.

System.Int32 endColumn

The end column of this System.Linq.Expressions.DebugInfoExpression. If the end line is the same as the start line, it must be greater or equal than the start column. In any case, must be greater than 0.

Returns
Type Description
System.Linq.Expressions.DebugInfoExpression

An instance of System.Linq.Expressions.DebugInfoExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Decrement(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents the decrementing of the expression by 1.

Declaration
public UnaryExpression Decrement(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to decrement.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the decremented expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Decrement(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents the decrementing of the expression by 1.

Declaration
public UnaryExpression Decrement(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to decrement.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the decremented expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Default(Type)

Creates a System.Linq.Expressions.DefaultExpression that has the System.Linq.Expressions.Expression.Type property set to the specified type.

Declaration
public DefaultExpression Default(Type type)
Parameters
Type Name Description
System.Type type

A System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.DefaultExpression

A System.Linq.Expressions.DefaultExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Default and the System.Linq.Expressions.Expression.Type property set to the specified type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Divide(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic division operation.

Declaration
public BinaryExpression Divide(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Divide and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Divide(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic division operation. The implementing method can be specified.

Declaration
public BinaryExpression Divide(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Divide and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

DivideAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a division assignment operation that does not have overflow checking.

Declaration
public BinaryExpression DivideAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.DivideAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

DivideAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a division assignment operation that does not have overflow checking.

Declaration
public BinaryExpression DivideAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.DivideAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

DivideAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a division assignment operation that does not have overflow checking.

Declaration
public BinaryExpression DivideAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.DivideAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Dynamic(CallSiteBinder, Type, IEnumerable<Expression>)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression Dynamic(CallSiteBinder binder, Type returnType, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Type returnType

The result type of the dynamic expression.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

The arguments to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.Binder and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Dynamic(CallSiteBinder, Type, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression Dynamic(CallSiteBinder binder, Type returnType, Expression arg0)
Parameters
Type Name Description
System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Type returnType

The result type of the dynamic expression.

System.Linq.Expressions.Expression arg0

The first argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.Binder and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Dynamic(CallSiteBinder, Type, Expression, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression Dynamic(CallSiteBinder binder, Type returnType, Expression arg0, Expression arg1)
Parameters
Type Name Description
System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Type returnType

The result type of the dynamic expression.

System.Linq.Expressions.Expression arg0

The first argument to the dynamic operation.

System.Linq.Expressions.Expression arg1

The second argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.Binder and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Dynamic(CallSiteBinder, Type, Expression, Expression, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression Dynamic(CallSiteBinder binder, Type returnType, Expression arg0, Expression arg1, Expression arg2)
Parameters
Type Name Description
System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Type returnType

The result type of the dynamic expression.

System.Linq.Expressions.Expression arg0

The first argument to the dynamic operation.

System.Linq.Expressions.Expression arg1

The second argument to the dynamic operation.

System.Linq.Expressions.Expression arg2

The third argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.Binder and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Dynamic(CallSiteBinder, Type, Expression, Expression, Expression, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression Dynamic(CallSiteBinder binder, Type returnType, Expression arg0, Expression arg1, Expression arg2, Expression arg3)
Parameters
Type Name Description
System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Type returnType

The result type of the dynamic expression.

System.Linq.Expressions.Expression arg0

The first argument to the dynamic operation.

System.Linq.Expressions.Expression arg1

The second argument to the dynamic operation.

System.Linq.Expressions.Expression arg2

The third argument to the dynamic operation.

System.Linq.Expressions.Expression arg3

The fourth argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.Binder and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Dynamic(CallSiteBinder, Type, Expression[])

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression Dynamic(CallSiteBinder binder, Type returnType, Expression[] arguments)
Parameters
Type Name Description
System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Type returnType

The result type of the dynamic expression.

System.Linq.Expressions.Expression[] arguments

The arguments to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.Binder and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ElementInit(MethodInfo, IEnumerable<Expression>)

Creates an System.Linq.Expressions.ElementInit, given an System.Collections.Generic.IEnumerable<> as the second argument.

Declaration
public ElementInit ElementInit(MethodInfo addMethod, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Reflection.MethodInfo addMethod

A System.Reflection.MethodInfo to set the System.Linq.Expressions.ElementInit.AddMethod property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to set the System.Linq.Expressions.ElementInit.Arguments property equal to.

Returns
Type Description
System.Linq.Expressions.ElementInit

An System.Linq.Expressions.ElementInit that has the System.Linq.Expressions.ElementInit.AddMethod and System.Linq.Expressions.ElementInit.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ElementInit(MethodInfo, Expression[])

Creates an System.Linq.Expressions.ElementInit, given an array of values as the second argument.

Declaration
public ElementInit ElementInit(MethodInfo addMethod, Expression[] arguments)
Parameters
Type Name Description
System.Reflection.MethodInfo addMethod

A System.Reflection.MethodInfo to set the System.Linq.Expressions.ElementInit.AddMethod property equal to.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects to set the System.Linq.Expressions.ElementInit.Arguments property equal to.

Returns
Type Description
System.Linq.Expressions.ElementInit

An System.Linq.Expressions.ElementInit that has the System.Linq.Expressions.ElementInit.AddMethod and System.Linq.Expressions.ElementInit.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Empty()

Creates an empty expression that has System.Void type.

Declaration
public DefaultExpression Empty()
Returns
Type Description
System.Linq.Expressions.DefaultExpression

A System.Linq.Expressions.DefaultExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Default and the System.Linq.Expressions.Expression.Type property set to System.Void.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Equal(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an equality comparison.

Declaration
public BinaryExpression Equal(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Equal and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Equal(Expression, Expression, Boolean, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an equality comparison. The implementing method can be specified.

Declaration
public BinaryExpression Equal(Expression left, Expression right, bool liftToNull, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Equal and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.IsLiftedToNull, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ExclusiveOr(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise langword_csharp_XOR operation, using op_ExclusiveOr for user-defined types.

Declaration
public BinaryExpression ExclusiveOr(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ExclusiveOr and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ExclusiveOr(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise langword_csharp_XOR operation, using op_ExclusiveOr for user-defined types. The implementing method can be specified.

Declaration
public BinaryExpression ExclusiveOr(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ExclusiveOr and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ExclusiveOrAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise XOR assignment operation, using op_ExclusiveOr for user-defined types.

Declaration
public BinaryExpression ExclusiveOrAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ExclusiveOrAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ExclusiveOrAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise XOR assignment operation, using op_ExclusiveOr for user-defined types.

Declaration
public BinaryExpression ExclusiveOrAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ExclusiveOrAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ExclusiveOrAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise XOR assignment operation, using op_ExclusiveOr for user-defined types.

Declaration
public BinaryExpression ExclusiveOrAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ExclusiveOrAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Field(Expression, FieldInfo)

Creates a System.Linq.Expressions.MemberExpression that represents accessing a field.

Declaration
public MemberExpression Field(Expression expression, FieldInfo field)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.MemberExpression.Expression property equal to. For static (langword_csharp_Shared in Visual Basic), expression must be null.

System.Reflection.FieldInfo field

The System.Reflection.FieldInfo to set the System.Linq.Expressions.MemberExpression.Member property equal to.

Returns
Type Description
System.Linq.Expressions.MemberExpression

A System.Linq.Expressions.MemberExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberAccess and the System.Linq.Expressions.MemberExpression.Expression and System.Linq.Expressions.MemberExpression.Member properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Field(Expression, String)

Creates a System.Linq.Expressions.MemberExpression that represents accessing a field given the name of the field.

Declaration
public MemberExpression Field(Expression expression, string fieldName)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression whose System.Linq.Expressions.Expression.Type contains a field named fieldName. This can be null for static fields.

System.String fieldName

The name of a field to be accessed.

Returns
Type Description
System.Linq.Expressions.MemberExpression

A System.Linq.Expressions.MemberExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberAccess, the System.Linq.Expressions.MemberExpression.Expression property set to expression, and the System.Linq.Expressions.MemberExpression.Member property set to the System.Reflection.FieldInfo that represents the field denoted by fieldName.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Field(Expression, Type, String)

Creates a System.Linq.Expressions.MemberExpression that represents accessing a field.

Declaration
public MemberExpression Field(Expression expression, Type type, string fieldName)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

The containing object of the field. This can be null for static fields.

System.Type type

The System.Linq.Expressions.Expression.Type that contains the field.

System.String fieldName

The field to be accessed.

Returns
Type Description
System.Linq.Expressions.MemberExpression

The created System.Linq.Expressions.MemberExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Goto(LabelTarget)

Creates a System.Linq.Expressions.GotoExpression representing a "go to" statement.

Declaration
public GotoExpression Goto(LabelTarget target)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Goto, the System.Linq.Expressions.GotoExpression.Target property set to the specified value, and a null value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Goto(LabelTarget, Expression)

Creates a System.Linq.Expressions.GotoExpression representing a "go to" statement. The value passed to the label upon jumping can be specified.

Declaration
public GotoExpression Goto(LabelTarget target, Expression value)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Linq.Expressions.Expression value

The value that will be passed to the associated label upon jumping.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Goto, the System.Linq.Expressions.GotoExpression.Target property set to target, and value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Goto(LabelTarget, Expression, Type)

Creates a System.Linq.Expressions.GotoExpression representing a "go to" statement with the specified type. The value passed to the label upon jumping can be specified.

Declaration
public GotoExpression Goto(LabelTarget target, Expression value, Type type)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Linq.Expressions.Expression value

The value that will be passed to the associated label upon jumping.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Goto, the System.Linq.Expressions.GotoExpression.Target property set to target, the System.Linq.Expressions.Expression.Type property set to type, and value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Goto(LabelTarget, Type)

Creates a System.Linq.Expressions.GotoExpression representing a "go to" statement with the specified type.

Declaration
public GotoExpression Goto(LabelTarget target, Type type)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Goto, the System.Linq.Expressions.GotoExpression.Target property set to the specified value, the System.Linq.Expressions.Expression.Type property set to type, and a null value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

GreaterThan(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a "greater than" numeric comparison.

Declaration
public BinaryExpression GreaterThan(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.GreaterThan and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

GreaterThan(Expression, Expression, Boolean, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a "greater than" numeric comparison. The implementing method can be specified.

Declaration
public BinaryExpression GreaterThan(Expression left, Expression right, bool liftToNull, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.GreaterThan and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.IsLiftedToNull, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

GreaterThanOrEqual(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a "greater than or equal" numeric comparison.

Declaration
public BinaryExpression GreaterThanOrEqual(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.GreaterThanOrEqual and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

GreaterThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a "greater than or equal" numeric comparison.

Declaration
public BinaryExpression GreaterThanOrEqual(Expression left, Expression right, bool liftToNull, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.GreaterThanOrEqual and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.IsLiftedToNull, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

IfThen(Expression, Expression)

Creates a System.Linq.Expressions.ConditionalExpression that represents a conditional block with an langword_csharp_if statement.

Declaration
public ConditionalExpression IfThen(Expression test, Expression ifTrue)
Parameters
Type Name Description
System.Linq.Expressions.Expression test

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.Test property equal to.

System.Linq.Expressions.Expression ifTrue

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.IfTrue property equal to.

Returns
Type Description
System.Linq.Expressions.ConditionalExpression

A System.Linq.Expressions.ConditionalExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Conditional and the System.Linq.Expressions.ConditionalExpression.Test, System.Linq.Expressions.ConditionalExpression.IfTrue, properties set to the specified values. The System.Linq.Expressions.ConditionalExpression.IfFalse property is set to default expression and the type of the resulting System.Linq.Expressions.ConditionalExpression returned by this method is System.Void.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

IfThenElse(Expression, Expression, Expression)

Creates a System.Linq.Expressions.ConditionalExpression that represents a conditional block with langword_csharp_if and langword_csharp_else statements.

Declaration
public ConditionalExpression IfThenElse(Expression test, Expression ifTrue, Expression ifFalse)
Parameters
Type Name Description
System.Linq.Expressions.Expression test

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.Test property equal to.

System.Linq.Expressions.Expression ifTrue

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.IfTrue property equal to.

System.Linq.Expressions.Expression ifFalse

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.ConditionalExpression.IfFalse property equal to.

Returns
Type Description
System.Linq.Expressions.ConditionalExpression

A System.Linq.Expressions.ConditionalExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Conditional and the System.Linq.Expressions.ConditionalExpression.Test, System.Linq.Expressions.ConditionalExpression.IfTrue, and System.Linq.Expressions.ConditionalExpression.IfFalse properties set to the specified values. The type of the resulting System.Linq.Expressions.ConditionalExpression returned by this method is System.Void.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Increment(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents the incrementing of the expression value by 1.

Declaration
public UnaryExpression Increment(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to increment.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the incremented expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Increment(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents the incrementing of the expression by 1.

Declaration
public UnaryExpression Increment(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to increment.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the incremented expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Invoke(Expression, IEnumerable<Expression>)

Creates an System.Linq.Expressions.InvocationExpression that applies a delegate or lambda expression to a list of argument expressions.

Declaration
public InvocationExpression Invoke(Expression expression, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression that represents the delegate or lambda expression to be applied to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects that represent the arguments that the delegate or lambda expression is applied to.

Returns
Type Description
System.Linq.Expressions.InvocationExpression

An System.Linq.Expressions.InvocationExpression that applies the specified delegate or lambda expression to the provided arguments.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Invoke(Expression, Expression[])

Creates an System.Linq.Expressions.InvocationExpression that applies a delegate or lambda expression to a list of argument expressions.

Declaration
public InvocationExpression Invoke(Expression expression, Expression[] arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression that represents the delegate or lambda expression to be applied.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects that represent the arguments that the delegate or lambda expression is applied to.

Returns
Type Description
System.Linq.Expressions.InvocationExpression

An System.Linq.Expressions.InvocationExpression that applies the specified delegate or lambda expression to the provided arguments.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

IsFalse(Expression)

Returns whether the expression evaluates to false.

Declaration
public UnaryExpression IsFalse(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to evaluate.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

An instance of System.Linq.Expressions.UnaryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

IsFalse(Expression, MethodInfo)

Returns whether the expression evaluates to false.

Declaration
public UnaryExpression IsFalse(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to evaluate.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

An instance of System.Linq.Expressions.UnaryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

IsTrue(Expression)

Returns whether the expression evaluates to true.

Declaration
public UnaryExpression IsTrue(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to evaluate.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

An instance of System.Linq.Expressions.UnaryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

IsTrue(Expression, MethodInfo)

Returns whether the expression evaluates to true.

Declaration
public UnaryExpression IsTrue(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to evaluate.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

An instance of System.Linq.Expressions.UnaryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Label()

Creates a System.Linq.Expressions.LabelTarget representing a label with void type and no name.

Declaration
public LabelTarget Label()
Returns
Type Description
System.Linq.Expressions.LabelTarget

The new System.Linq.Expressions.LabelTarget.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Label(LabelTarget)

Creates a System.Linq.Expressions.LabelExpression representing a label without a default value.

Declaration
public LabelExpression Label(LabelTarget target)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget which this System.Linq.Expressions.LabelExpression will be associated with.

Returns
Type Description
System.Linq.Expressions.LabelExpression

A System.Linq.Expressions.LabelExpression without a default value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Label(LabelTarget, Expression)

Creates a System.Linq.Expressions.LabelExpression representing a label with the given default value.

Declaration
public LabelExpression Label(LabelTarget target, Expression defaultValue)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget which this System.Linq.Expressions.LabelExpression will be associated with.

System.Linq.Expressions.Expression defaultValue

The value of this System.Linq.Expressions.LabelExpression when the label is reached through regular control flow.

Returns
Type Description
System.Linq.Expressions.LabelExpression

A System.Linq.Expressions.LabelExpression with the given default value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Label(String)

Creates a System.Linq.Expressions.LabelTarget representing a label with void type and the given name.

Declaration
public LabelTarget Label(string name)
Parameters
Type Name Description
System.String name

The name of the label.

Returns
Type Description
System.Linq.Expressions.LabelTarget

The new System.Linq.Expressions.LabelTarget.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Label(Type)

Creates a System.Linq.Expressions.LabelTarget representing a label with the given type.

Declaration
public LabelTarget Label(Type type)
Parameters
Type Name Description
System.Type type

The type of value that is passed when jumping to the label.

Returns
Type Description
System.Linq.Expressions.LabelTarget

The new System.Linq.Expressions.LabelTarget.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Label(Type, String)

Creates a System.Linq.Expressions.LabelTarget representing a label with the given type and name.

Declaration
public LabelTarget Label(Type type, string name)
Parameters
Type Name Description
System.Type type

The type of value that is passed when jumping to the label.

System.String name

The name of the label.

Returns
Type Description
System.Linq.Expressions.LabelTarget

The new System.Linq.Expressions.LabelTarget.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Expression, Boolean, IEnumerable<ParameterExpression>)

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Expression body, bool tailCall, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Expression, Boolean, ParameterExpression[])

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Expression body, bool tailCall, ParameterExpression[] parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Linq.Expressions.ParameterExpression[] parameters

An array that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Expression, IEnumerable<ParameterExpression>)

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Expression body, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Expression, ParameterExpression[])

Creates a System.Linq.Expressions.LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Expression body, ParameterExpression[] parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Linq.Expressions.ParameterExpression[] parameters

An array of System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Expression, String, Boolean, IEnumerable<ParameterExpression>)

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Expression body, string name, bool tailCall, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.String name

The name for the lambda. Used for emitting debug information.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Expression, String, IEnumerable<ParameterExpression>)

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Expression body, string name, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.String name

The name for the lambda. Used for emitting debug information.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Type, Expression, Boolean, IEnumerable<ParameterExpression>)

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Type delegateType, Expression body, bool tailCall, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Type delegateType

A System.Linq.Expressions.Expression.Type representing the delegate signature for the lambda.

System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Type, Expression, Boolean, ParameterExpression[])

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Type delegateType, Expression body, bool tailCall, ParameterExpression[] parameters)
Parameters
Type Name Description
System.Type delegateType

A System.Linq.Expressions.Expression.Type representing the delegate signature for the lambda.

System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Linq.Expressions.ParameterExpression[] parameters

An array that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Type, Expression, IEnumerable<ParameterExpression>)

Creates a System.Linq.Expressions.LambdaExpression by first constructing a delegate type. It can be used when the delegate type is not known at compile time.

Declaration
public LambdaExpression Lambda(Type delegateType, Expression body, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Type delegateType

A System.Type that represents a delegate signature for the lambda.

System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

An object that represents a lambda expression which has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Type, Expression, ParameterExpression[])

Creates a System.Linq.Expressions.LambdaExpression by first constructing a delegate type. It can be used when the delegate type is not known at compile time.

Declaration
public LambdaExpression Lambda(Type delegateType, Expression body, ParameterExpression[] parameters)
Parameters
Type Name Description
System.Type delegateType

A System.Type that represents a delegate signature for the lambda.

System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Linq.Expressions.ParameterExpression[] parameters

An array of System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

An object that represents a lambda expression which has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Type, Expression, String, Boolean, IEnumerable<ParameterExpression>)

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Type delegateType, Expression body, string name, bool tailCall, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Type delegateType

A System.Linq.Expressions.Expression.Type representing the delegate signature for the lambda.

System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.String name

The name for the lambda. Used for emitting debug information.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda(Type, Expression, String, IEnumerable<ParameterExpression>)

Creates a LambdaExpression by first constructing a delegate type.

Declaration
public LambdaExpression Lambda(Type delegateType, Expression body, string name, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Type delegateType

A System.Linq.Expressions.Expression.Type representing the delegate signature for the lambda.

System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.String name

The name for the lambda. Used for emitting debug information.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.LambdaExpression

A System.Linq.Expressions.LambdaExpression that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda<TDelegate>(Expression, Boolean, IEnumerable<ParameterExpression>)

Creates an System.Linq.Expressions.Expression<> where the delegate type is known at compile time.

Declaration
public Expression<TDelegate> Lambda<TDelegate>(Expression body, bool tailCall, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.Expression<TDelegate>

An System.Linq.Expressions.Expression<> that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Type Parameters
Name Description
TDelegate

The delegate type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda<TDelegate>(Expression, Boolean, ParameterExpression[])

Creates an System.Linq.Expressions.Expression<> where the delegate type is known at compile time.

Declaration
public Expression<TDelegate> Lambda<TDelegate>(Expression body, bool tailCall, ParameterExpression[] parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Linq.Expressions.ParameterExpression[] parameters

An array that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.Expression<TDelegate>

An System.Linq.Expressions.Expression<> that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Type Parameters
Name Description
TDelegate

The delegate type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda<TDelegate>(Expression, IEnumerable<ParameterExpression>)

Creates an System.Linq.Expressions.Expression<> where the delegate type is known at compile time.

Declaration
public Expression<TDelegate> Lambda<TDelegate>(Expression body, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.Expression<TDelegate>

An System.Linq.Expressions.Expression<> that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Type Parameters
Name Description
TDelegate

A delegate type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda<TDelegate>(Expression, ParameterExpression[])

Creates an System.Linq.Expressions.Expression<> where the delegate type is known at compile time.

Declaration
public Expression<TDelegate> Lambda<TDelegate>(Expression body, ParameterExpression[] parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.Linq.Expressions.ParameterExpression[] parameters

An array of System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.Expression<TDelegate>

An System.Linq.Expressions.Expression<> that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Type Parameters
Name Description
TDelegate

A delegate type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda<TDelegate>(Expression, String, Boolean, IEnumerable<ParameterExpression>)

Creates an System.Linq.Expressions.Expression<> where the delegate type is known at compile time.

Declaration
public Expression<TDelegate> Lambda<TDelegate>(Expression body, string name, bool tailCall, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.String name

The name of the lambda. Used for generating debugging info.

System.Boolean tailCall

A System.Boolean that indicates if tail call optimization will be applied when compiling the created expression.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.Expression<TDelegate>

An System.Linq.Expressions.Expression<> that has the System.Linq.Expressions.LambdaExpression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Type Parameters
Name Description
TDelegate

The delegate type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Lambda<TDelegate>(Expression, String, IEnumerable<ParameterExpression>)

Creates an System.Linq.Expressions.Expression<> where the delegate type is known at compile time.

Declaration
public Expression<TDelegate> Lambda<TDelegate>(Expression body, string name, IEnumerable<ParameterExpression> parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.LambdaExpression.Body property equal to.

System.String name

The name of the lambda. Used for generating debugging information.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.LambdaExpression.Parameters collection.

Returns
Type Description
System.Linq.Expressions.Expression<TDelegate>

An System.Linq.Expressions.Expression<> that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Lambda and the System.Linq.Expressions.LambdaExpression.Body and System.Linq.Expressions.LambdaExpression.Parameters properties set to the specified values.

Type Parameters
Name Description
TDelegate

The delegate type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LeftShift(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise left-shift operation.

Declaration
public BinaryExpression LeftShift(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LeftShift and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LeftShift(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise left-shift operation.

Declaration
public BinaryExpression LeftShift(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LeftShift and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LeftShiftAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise left-shift assignment operation.

Declaration
public BinaryExpression LeftShiftAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LeftShiftAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LeftShiftAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise left-shift assignment operation.

Declaration
public BinaryExpression LeftShiftAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LeftShiftAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LeftShiftAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise left-shift assignment operation.

Declaration
public BinaryExpression LeftShiftAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LeftShiftAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LessThan(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a "less than" numeric comparison.

Declaration
public BinaryExpression LessThan(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LessThan and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LessThan(Expression, Expression, Boolean, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a "less than" numeric comparison.

Declaration
public BinaryExpression LessThan(Expression left, Expression right, bool liftToNull, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LessThan and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.IsLiftedToNull, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LessThanOrEqual(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a " less than or equal" numeric comparison.

Declaration
public BinaryExpression LessThanOrEqual(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LessThanOrEqual and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

LessThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a "less than or equal" numeric comparison.

Declaration
public BinaryExpression LessThanOrEqual(Expression left, Expression right, bool liftToNull, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.LessThanOrEqual and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.IsLiftedToNull, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListBind(MemberInfo, IEnumerable<ElementInit>)

Creates a System.Linq.Expressions.MemberListBinding where the member is a field or property.

Declaration
public MemberListBinding ListBind(MemberInfo member, IEnumerable<ElementInit> initializers)
Parameters
Type Name Description
System.Reflection.MemberInfo member

A System.Reflection.MemberInfo that represents a field or property to set the System.Linq.Expressions.MemberBinding.Member property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ElementInit> initializers

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ElementInit objects to use to populate the System.Linq.Expressions.MemberListBinding.Initializers collection.

Returns
Type Description
System.Linq.Expressions.MemberListBinding

A System.Linq.Expressions.MemberListBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.ListBinding and the System.Linq.Expressions.MemberBinding.Member and System.Linq.Expressions.MemberListBinding.Initializers properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListBind(MemberInfo, ElementInit[])

Creates a System.Linq.Expressions.MemberListBinding where the member is a field or property.

Declaration
public MemberListBinding ListBind(MemberInfo member, ElementInit[] initializers)
Parameters
Type Name Description
System.Reflection.MemberInfo member

A System.Reflection.MemberInfo that represents a field or property to set the System.Linq.Expressions.MemberBinding.Member property equal to.

System.Linq.Expressions.ElementInit[] initializers

An array of System.Linq.Expressions.ElementInit objects to use to populate the System.Linq.Expressions.MemberListBinding.Initializers collection.

Returns
Type Description
System.Linq.Expressions.MemberListBinding

A System.Linq.Expressions.MemberListBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.ListBinding and the System.Linq.Expressions.MemberBinding.Member and System.Linq.Expressions.MemberListBinding.Initializers properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListBind(MethodInfo, IEnumerable<ElementInit>)

Creates a System.Linq.Expressions.MemberListBinding based on a specified property accessor method.

Declaration
public MemberListBinding ListBind(MethodInfo propertyAccessor, IEnumerable<ElementInit> initializers)
Parameters
Type Name Description
System.Reflection.MethodInfo propertyAccessor

A System.Reflection.MethodInfo that represents a property accessor method.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ElementInit> initializers

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ElementInit objects to use to populate the System.Linq.Expressions.MemberListBinding.Initializers collection.

Returns
Type Description
System.Linq.Expressions.MemberListBinding

A System.Linq.Expressions.MemberListBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.ListBinding, the System.Linq.Expressions.MemberBinding.Member property set to the System.Reflection.MemberInfo that represents the property accessed in propertyAccessor, and System.Linq.Expressions.MemberListBinding.Initializers populated with the elements of initializers.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListBind(MethodInfo, ElementInit[])

Creates a System.Linq.Expressions.MemberListBinding object based on a specified property accessor method.

Declaration
public MemberListBinding ListBind(MethodInfo propertyAccessor, ElementInit[] initializers)
Parameters
Type Name Description
System.Reflection.MethodInfo propertyAccessor

A System.Reflection.MethodInfo that represents a property accessor method.

System.Linq.Expressions.ElementInit[] initializers

An array of System.Linq.Expressions.ElementInit objects to use to populate the System.Linq.Expressions.MemberListBinding.Initializers collection.

Returns
Type Description
System.Linq.Expressions.MemberListBinding

A System.Linq.Expressions.MemberListBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.ListBinding, the System.Linq.Expressions.MemberBinding.Member property set to the System.Reflection.MemberInfo that represents the property accessed in propertyAccessor, and System.Linq.Expressions.MemberListBinding.Initializers populated with the elements of initializers.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListInit(NewExpression, IEnumerable<ElementInit>)

Creates a System.Linq.Expressions.ListInitExpression that uses specified System.Linq.Expressions.ElementInit objects to initialize a collection.

Declaration
public ListInitExpression ListInit(NewExpression newExpression, IEnumerable<ElementInit> initializers)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.ListInitExpression.NewExpression property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.ElementInit> initializers

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.ElementInit objects to use to populate the System.Linq.Expressions.ListInitExpression.Initializers collection.

Returns
Type Description
System.Linq.Expressions.ListInitExpression

A System.Linq.Expressions.ListInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ListInit and the System.Linq.Expressions.ListInitExpression.NewExpression and System.Linq.Expressions.ListInitExpression.Initializers properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListInit(NewExpression, IEnumerable<Expression>)

Creates a System.Linq.Expressions.ListInitExpression that uses a method named "Add" to add elements to a collection.

Declaration
public ListInitExpression ListInit(NewExpression newExpression, IEnumerable<Expression> initializers)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.ListInitExpression.NewExpression property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> initializers

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.ListInitExpression.Initializers collection.

Returns
Type Description
System.Linq.Expressions.ListInitExpression

A System.Linq.Expressions.ListInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ListInit and the System.Linq.Expressions.ListInitExpression.NewExpression property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListInit(NewExpression, ElementInit[])

Creates a System.Linq.Expressions.ListInitExpression that uses specified System.Linq.Expressions.ElementInit objects to initialize a collection.

Declaration
public ListInitExpression ListInit(NewExpression newExpression, ElementInit[] initializers)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.ListInitExpression.NewExpression property equal to.

System.Linq.Expressions.ElementInit[] initializers

An array of System.Linq.Expressions.ElementInit objects to use to populate the System.Linq.Expressions.ListInitExpression.Initializers collection.

Returns
Type Description
System.Linq.Expressions.ListInitExpression

A System.Linq.Expressions.ListInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ListInit and the System.Linq.Expressions.ListInitExpression.NewExpression and System.Linq.Expressions.ListInitExpression.Initializers properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListInit(NewExpression, Expression[])

Creates a System.Linq.Expressions.ListInitExpression that uses a method named "Add" to add elements to a collection.

Declaration
public ListInitExpression ListInit(NewExpression newExpression, Expression[] initializers)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.ListInitExpression.NewExpression property equal to.

System.Linq.Expressions.Expression[] initializers

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.ListInitExpression.Initializers collection.

Returns
Type Description
System.Linq.Expressions.ListInitExpression

A System.Linq.Expressions.ListInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ListInit and the System.Linq.Expressions.ListInitExpression.NewExpression property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListInit(NewExpression, MethodInfo, IEnumerable<Expression>)

Creates a System.Linq.Expressions.ListInitExpression that uses a specified method to add elements to a collection.

Declaration
public ListInitExpression ListInit(NewExpression newExpression, MethodInfo addMethod, IEnumerable<Expression> initializers)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.ListInitExpression.NewExpression property equal to.

System.Reflection.MethodInfo addMethod

A System.Reflection.MethodInfo that represents an instance method named "Add" (case insensitive), that adds an element to a collection.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> initializers

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.ListInitExpression.Initializers collection.

Returns
Type Description
System.Linq.Expressions.ListInitExpression

A System.Linq.Expressions.ListInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ListInit and the System.Linq.Expressions.ListInitExpression.NewExpression property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ListInit(NewExpression, MethodInfo, Expression[])

Creates a System.Linq.Expressions.ListInitExpression that uses a specified method to add elements to a collection.

Declaration
public ListInitExpression ListInit(NewExpression newExpression, MethodInfo addMethod, Expression[] initializers)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.ListInitExpression.NewExpression property equal to.

System.Reflection.MethodInfo addMethod

A System.Reflection.MethodInfo that represents an instance method that takes one argument, that adds an element to a collection.

System.Linq.Expressions.Expression[] initializers

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.ListInitExpression.Initializers collection.

Returns
Type Description
System.Linq.Expressions.ListInitExpression

A System.Linq.Expressions.ListInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ListInit and the System.Linq.Expressions.ListInitExpression.NewExpression property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Loop(Expression)

Creates a System.Linq.Expressions.LoopExpression with the given body.

Declaration
public LoopExpression Loop(Expression body)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the loop.

Returns
Type Description
System.Linq.Expressions.LoopExpression

The created System.Linq.Expressions.LoopExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Loop(Expression, LabelTarget)

Creates a System.Linq.Expressions.LoopExpression with the given body and break target.

Declaration
public LoopExpression Loop(Expression body, LabelTarget break)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the loop.

System.Linq.Expressions.LabelTarget break

The break target used by the loop body.

Returns
Type Description
System.Linq.Expressions.LoopExpression

The created System.Linq.Expressions.LoopExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Loop(Expression, LabelTarget, LabelTarget)

Creates a System.Linq.Expressions.LoopExpression with the given body.

Declaration
public LoopExpression Loop(Expression body, LabelTarget break, LabelTarget continue)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the loop.

System.Linq.Expressions.LabelTarget break

The break target used by the loop body.

System.Linq.Expressions.LabelTarget continue

The continue target used by the loop body.

Returns
Type Description
System.Linq.Expressions.LoopExpression

The created System.Linq.Expressions.LoopExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeBinary(ExpressionType, Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression, given the left and right operands, by calling an appropriate factory method.

Declaration
public BinaryExpression MakeBinary(ExpressionType binaryType, Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.ExpressionType binaryType

The System.Linq.Expressions.ExpressionType that specifies the type of binary operation.

System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression that represents the left operand.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression that represents the right operand.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

The System.Linq.Expressions.BinaryExpression that results from calling the appropriate factory method.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeBinary(ExpressionType, Expression, Expression, Boolean, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression, given the left operand, right operand and implementing method, by calling the appropriate factory method.

Declaration
public BinaryExpression MakeBinary(ExpressionType binaryType, Expression left, Expression right, bool liftToNull, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.ExpressionType binaryType

The System.Linq.Expressions.ExpressionType that specifies the type of binary operation.

System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression that represents the left operand.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression that represents the right operand.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that specifies the implementing method.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

The System.Linq.Expressions.BinaryExpression that results from calling the appropriate factory method.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeBinary(ExpressionType, Expression, Expression, Boolean, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression, given the left operand, right operand, implementing method and type conversion function, by calling the appropriate factory method.

Declaration
public BinaryExpression MakeBinary(ExpressionType binaryType, Expression left, Expression right, bool liftToNull, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.ExpressionType binaryType

The System.Linq.Expressions.ExpressionType that specifies the type of binary operation.

System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression that represents the left operand.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression that represents the right operand.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that specifies the implementing method.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression that represents a type conversion function. This parameter is used only if binaryType is System.Linq.Expressions.ExpressionType.Coalesce or compound assignment..

Returns
Type Description
System.Linq.Expressions.BinaryExpression

The System.Linq.Expressions.BinaryExpression that results from calling the appropriate factory method.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeCatchBlock(Type, ParameterExpression, Expression, Expression)

Creates a System.Linq.Expressions.CatchBlock representing a catch statement with the specified elements.

Declaration
public CatchBlock MakeCatchBlock(Type type, ParameterExpression variable, Expression body, Expression filter)
Parameters
Type Name Description
System.Type type

The System.Linq.Expressions.Expression.Type of System.Exception this System.Linq.Expressions.CatchBlock will handle.

System.Linq.Expressions.ParameterExpression variable

A System.Linq.Expressions.ParameterExpression representing a reference to the System.Exception object caught by this handler.

System.Linq.Expressions.Expression body

The body of the catch statement.

System.Linq.Expressions.Expression filter

The body of the System.Exception filter.

Returns
Type Description
System.Linq.Expressions.CatchBlock

The created System.Linq.Expressions.CatchBlock.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeDynamic(Type, CallSiteBinder, IEnumerable<Expression>)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression MakeDynamic(Type delegateType, CallSiteBinder binder, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Type delegateType

The type of the delegate used by the System.Runtime.CompilerServices.CallSite.

System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

The arguments to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.DelegateType, System.Linq.Expressions.DynamicExpression.Binder, and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeDynamic(Type, CallSiteBinder, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder and one argument.

Declaration
public DynamicExpression MakeDynamic(Type delegateType, CallSiteBinder binder, Expression arg0)
Parameters
Type Name Description
System.Type delegateType

The type of the delegate used by the System.Runtime.CompilerServices.CallSite.

System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Linq.Expressions.Expression arg0

The argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.DelegateType, System.Linq.Expressions.DynamicExpression.Binder, and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeDynamic(Type, CallSiteBinder, Expression, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder and two arguments.

Declaration
public DynamicExpression MakeDynamic(Type delegateType, CallSiteBinder binder, Expression arg0, Expression arg1)
Parameters
Type Name Description
System.Type delegateType

The type of the delegate used by the System.Runtime.CompilerServices.CallSite.

System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Linq.Expressions.Expression arg0

The first argument to the dynamic operation.

System.Linq.Expressions.Expression arg1

The second argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.DelegateType, System.Linq.Expressions.DynamicExpression.Binder, and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeDynamic(Type, CallSiteBinder, Expression, Expression, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder and three arguments.

Declaration
public DynamicExpression MakeDynamic(Type delegateType, CallSiteBinder binder, Expression arg0, Expression arg1, Expression arg2)
Parameters
Type Name Description
System.Type delegateType

The type of the delegate used by the System.Runtime.CompilerServices.CallSite.

System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Linq.Expressions.Expression arg0

The first argument to the dynamic operation.

System.Linq.Expressions.Expression arg1

The second argument to the dynamic operation.

System.Linq.Expressions.Expression arg2

The third argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.DelegateType, System.Linq.Expressions.DynamicExpression.Binder, and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeDynamic(Type, CallSiteBinder, Expression, Expression, Expression, Expression)

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder and four arguments.

Declaration
public DynamicExpression MakeDynamic(Type delegateType, CallSiteBinder binder, Expression arg0, Expression arg1, Expression arg2, Expression arg3)
Parameters
Type Name Description
System.Type delegateType

The type of the delegate used by the System.Runtime.CompilerServices.CallSite.

System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Linq.Expressions.Expression arg0

The first argument to the dynamic operation.

System.Linq.Expressions.Expression arg1

The second argument to the dynamic operation.

System.Linq.Expressions.Expression arg2

The third argument to the dynamic operation.

System.Linq.Expressions.Expression arg3

The fourth argument to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.DelegateType, System.Linq.Expressions.DynamicExpression.Binder, and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeDynamic(Type, CallSiteBinder, Expression[])

Creates a System.Linq.Expressions.DynamicExpression that represents a dynamic operation bound by the provided System.Runtime.CompilerServices.CallSiteBinder.

Declaration
public DynamicExpression MakeDynamic(Type delegateType, CallSiteBinder binder, Expression[] arguments)
Parameters
Type Name Description
System.Type delegateType

The type of the delegate used by the System.Runtime.CompilerServices.CallSite.

System.Runtime.CompilerServices.CallSiteBinder binder

The runtime binder for the dynamic operation.

System.Linq.Expressions.Expression[] arguments

The arguments to the dynamic operation.

Returns
Type Description
System.Linq.Expressions.DynamicExpression

A System.Linq.Expressions.DynamicExpression that has System.Linq.Expressions.Expression.NodeType equal to System.Linq.Expressions.ExpressionType.Dynamic and has the System.Linq.Expressions.DynamicExpression.DelegateType, System.Linq.Expressions.DynamicExpression.Binder, and System.Linq.Expressions.DynamicExpression.Arguments set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeGoto(GotoExpressionKind, LabelTarget, Expression, Type)

Creates a System.Linq.Expressions.GotoExpression representing a jump of the specified System.Linq.Expressions.GotoExpressionKind. The value passed to the label upon jumping can also be specified.

Declaration
public GotoExpression MakeGoto(GotoExpressionKind kind, LabelTarget target, Expression value, Type type)
Parameters
Type Name Description
System.Linq.Expressions.GotoExpressionKind kind

The System.Linq.Expressions.GotoExpressionKind of the System.Linq.Expressions.GotoExpression.

System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Linq.Expressions.Expression value

The value that will be passed to the associated label upon jumping.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to kind, the System.Linq.Expressions.GotoExpression.Target property set to target, the System.Linq.Expressions.Expression.Type property set to type, and value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeIndex(Expression, PropertyInfo, IEnumerable<Expression>)

Creates an System.Linq.Expressions.IndexExpression that represents accessing an indexed property in an object.

Declaration
public IndexExpression MakeIndex(Expression instance, PropertyInfo indexer, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

The object to which the property belongs. It should be null if the property is static (langword_csharp_shared in Visual Basic).

System.Reflection.PropertyInfo indexer

An System.Linq.Expressions.Expression representing the property to index.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An IEnumerable<Expression> (IEnumerable (Of Expression) in Visual Basic) that contains the arguments that will be used to index the property.

Returns
Type Description
System.Linq.Expressions.IndexExpression

The created System.Linq.Expressions.IndexExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeMemberAccess(Expression, MemberInfo)

Creates a System.Linq.Expressions.MemberExpression that represents accessing either a field or a property.

Declaration
public MemberExpression MakeMemberAccess(Expression expression, MemberInfo member)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression that represents the object that the member belongs to. This can be null for static members.

System.Reflection.MemberInfo member

The System.Reflection.MemberInfo that describes the field or property to be accessed.

Returns
Type Description
System.Linq.Expressions.MemberExpression

The System.Linq.Expressions.MemberExpression that results from calling the appropriate factory method.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeTry(Type, Expression, Expression, Expression, IEnumerable<CatchBlock>)

Creates a System.Linq.Expressions.TryExpression representing a try block with the specified elements.

Declaration
public TryExpression MakeTry(Type type, Expression body, Expression finally, Expression fault, IEnumerable<CatchBlock> handlers)
Parameters
Type Name Description
System.Type type

The result type of the try expression. If null, bodh and all handlers must have identical type.

System.Linq.Expressions.Expression body

The body of the try block.

System.Linq.Expressions.Expression finally

The body of the finally block. Pass null if the try block has no finally block associated with it.

System.Linq.Expressions.Expression fault

The body of the fault block. Pass null if the try block has no fault block associated with it.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.CatchBlock> handlers

A collection of System.Linq.Expressions.CatchBlocks representing the catch statements to be associated with the try block.

Returns
Type Description
System.Linq.Expressions.TryExpression

The created System.Linq.Expressions.TryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeUnary(ExpressionType, Expression, Type)

Creates a System.Linq.Expressions.UnaryExpression, given an operand, by calling the appropriate factory method.

Declaration
public UnaryExpression MakeUnary(ExpressionType unaryType, Expression operand, Type type)
Parameters
Type Name Description
System.Linq.Expressions.ExpressionType unaryType

The System.Linq.Expressions.ExpressionType that specifies the type of unary operation.

System.Linq.Expressions.Expression operand

An System.Linq.Expressions.Expression that represents the operand.

System.Type type

The System.Type that specifies the type to be converted to (pass null if not applicable).

Returns
Type Description
System.Linq.Expressions.UnaryExpression

The System.Linq.Expressions.UnaryExpression that results from calling the appropriate factory method.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MakeUnary(ExpressionType, Expression, Type, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression, given an operand and implementing method, by calling the appropriate factory method.

Declaration
public UnaryExpression MakeUnary(ExpressionType unaryType, Expression operand, Type type, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.ExpressionType unaryType

The System.Linq.Expressions.ExpressionType that specifies the type of unary operation.

System.Linq.Expressions.Expression operand

An System.Linq.Expressions.Expression that represents the operand.

System.Type type

The System.Type that specifies the type to be converted to (pass null if not applicable).

System.Reflection.MethodInfo method

The System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

The System.Linq.Expressions.UnaryExpression that results from calling the appropriate factory method.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MemberBind(MemberInfo, IEnumerable<MemberBinding>)

Creates a System.Linq.Expressions.MemberMemberBinding that represents the recursive initialization of members of a field or property.

Declaration
public MemberMemberBinding MemberBind(MemberInfo member, IEnumerable<MemberBinding> bindings)
Parameters
Type Name Description
System.Reflection.MemberInfo member

The System.Reflection.MemberInfo to set the System.Linq.Expressions.MemberBinding.Member property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.MemberBinding> bindings

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.MemberBinding objects to use to populate the System.Linq.Expressions.MemberMemberBinding.Bindings collection.

Returns
Type Description
System.Linq.Expressions.MemberMemberBinding

A System.Linq.Expressions.MemberMemberBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.MemberBinding and the System.Linq.Expressions.MemberBinding.Member and System.Linq.Expressions.MemberMemberBinding.Bindings properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MemberBind(MemberInfo, MemberBinding[])

Creates a System.Linq.Expressions.MemberMemberBinding that represents the recursive initialization of members of a field or property.

Declaration
public MemberMemberBinding MemberBind(MemberInfo member, MemberBinding[] bindings)
Parameters
Type Name Description
System.Reflection.MemberInfo member

The System.Reflection.MemberInfo to set the System.Linq.Expressions.MemberBinding.Member property equal to.

System.Linq.Expressions.MemberBinding[] bindings

An array of System.Linq.Expressions.MemberBinding objects to use to populate the System.Linq.Expressions.MemberMemberBinding.Bindings collection.

Returns
Type Description
System.Linq.Expressions.MemberMemberBinding

A System.Linq.Expressions.MemberMemberBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.MemberBinding and the System.Linq.Expressions.MemberBinding.Member and System.Linq.Expressions.MemberMemberBinding.Bindings properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MemberBind(MethodInfo, IEnumerable<MemberBinding>)

Creates a System.Linq.Expressions.MemberMemberBinding that represents the recursive initialization of members of a member that is accessed by using a property accessor method.

Declaration
public MemberMemberBinding MemberBind(MethodInfo propertyAccessor, IEnumerable<MemberBinding> bindings)
Parameters
Type Name Description
System.Reflection.MethodInfo propertyAccessor

The System.Reflection.MethodInfo that represents a property accessor method.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.MemberBinding> bindings

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.MemberBinding objects to use to populate the System.Linq.Expressions.MemberMemberBinding.Bindings collection.

Returns
Type Description
System.Linq.Expressions.MemberMemberBinding

A System.Linq.Expressions.MemberMemberBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.MemberBinding, the System.Linq.Expressions.MemberBinding.Member property set to the System.Reflection.PropertyInfo that represents the property accessed in propertyAccessor, and System.Linq.Expressions.MemberMemberBinding.Bindings properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MemberBind(MethodInfo, MemberBinding[])

Creates a System.Linq.Expressions.MemberMemberBinding that represents the recursive initialization of members of a member that is accessed by using a property accessor method.

Declaration
public MemberMemberBinding MemberBind(MethodInfo propertyAccessor, MemberBinding[] bindings)
Parameters
Type Name Description
System.Reflection.MethodInfo propertyAccessor

The System.Reflection.MethodInfo that represents a property accessor method.

System.Linq.Expressions.MemberBinding[] bindings

An array of System.Linq.Expressions.MemberBinding objects to use to populate the System.Linq.Expressions.MemberMemberBinding.Bindings collection.

Returns
Type Description
System.Linq.Expressions.MemberMemberBinding

A System.Linq.Expressions.MemberMemberBinding that has the System.Linq.Expressions.MemberBinding.BindingType property equal to System.Linq.Expressions.MemberBindingType.MemberBinding, the System.Linq.Expressions.MemberBinding.Member property set to the System.Reflection.PropertyInfo that represents the property accessed in propertyAccessor, and System.Linq.Expressions.MemberMemberBinding.Bindings properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MemberInit(NewExpression, IEnumerable<MemberBinding>)

Represents an expression that creates a new object and initializes a property of the object.

Declaration
public MemberInitExpression MemberInit(NewExpression newExpression, IEnumerable<MemberBinding> bindings)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.MemberInitExpression.NewExpression property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.MemberBinding> bindings

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.MemberBinding objects to use to populate the System.Linq.Expressions.MemberInitExpression.Bindings collection.

Returns
Type Description
System.Linq.Expressions.MemberInitExpression

A System.Linq.Expressions.MemberInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberInit and the System.Linq.Expressions.MemberInitExpression.NewExpression and System.Linq.Expressions.MemberInitExpression.Bindings properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MemberInit(NewExpression, MemberBinding[])

Creates a System.Linq.Expressions.MemberInitExpression.

Declaration
public MemberInitExpression MemberInit(NewExpression newExpression, MemberBinding[] bindings)
Parameters
Type Name Description
System.Linq.Expressions.NewExpression newExpression

A System.Linq.Expressions.NewExpression to set the System.Linq.Expressions.MemberInitExpression.NewExpression property equal to.

System.Linq.Expressions.MemberBinding[] bindings

An array of System.Linq.Expressions.MemberBinding objects to use to populate the System.Linq.Expressions.MemberInitExpression.Bindings collection.

Returns
Type Description
System.Linq.Expressions.MemberInitExpression

A System.Linq.Expressions.MemberInitExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberInit and the System.Linq.Expressions.MemberInitExpression.NewExpression and System.Linq.Expressions.MemberInitExpression.Bindings properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Modulo(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic remainder operation.

Declaration
public BinaryExpression Modulo(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Modulo and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Modulo(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic remainder operation.

Declaration
public BinaryExpression Modulo(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Modulo and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ModuloAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a remainder assignment operation.

Declaration
public BinaryExpression ModuloAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ModuloAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ModuloAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a remainder assignment operation.

Declaration
public BinaryExpression ModuloAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ModuloAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ModuloAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a remainder assignment operation.

Declaration
public BinaryExpression ModuloAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.ModuloAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Multiply(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic multiplication operation that does not have overflow checking.

Declaration
public BinaryExpression Multiply(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Multiply and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Multiply(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic multiplication operation that does not have overflow checking.

Declaration
public BinaryExpression Multiply(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Multiply and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a multiplication assignment operation that does not have overflow checking.

Declaration
public BinaryExpression MultiplyAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a multiplication assignment operation that does not have overflow checking.

Declaration
public BinaryExpression MultiplyAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a multiplication assignment operation that does not have overflow checking.

Declaration
public BinaryExpression MultiplyAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyAssignChecked(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a multiplication assignment operation that has overflow checking.

Declaration
public BinaryExpression MultiplyAssignChecked(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyAssignChecked and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyAssignChecked(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a multiplication assignment operation that has overflow checking.

Declaration
public BinaryExpression MultiplyAssignChecked(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyAssignChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyAssignChecked(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a multiplication assignment operation that has overflow checking.

Declaration
public BinaryExpression MultiplyAssignChecked(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyAssignChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyChecked(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic multiplication operation that has overflow checking.

Declaration
public BinaryExpression MultiplyChecked(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyChecked and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

MultiplyChecked(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic multiplication operation that has overflow checking.

Declaration
public BinaryExpression MultiplyChecked(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MultiplyChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Negate(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents an arithmetic negation operation.

Declaration
public UnaryExpression Negate(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Negate and the System.Linq.Expressions.UnaryExpression.Operand property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Negate(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents an arithmetic negation operation.

Declaration
public UnaryExpression Negate(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.UnaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Negate and the System.Linq.Expressions.UnaryExpression.Operand and System.Linq.Expressions.UnaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NegateChecked(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents an arithmetic negation operation that has overflow checking.

Declaration
public UnaryExpression NegateChecked(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NegateChecked and the System.Linq.Expressions.UnaryExpression.Operand property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NegateChecked(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents an arithmetic negation operation that has overflow checking. The implementing method can be specified.

Declaration
public UnaryExpression NegateChecked(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.UnaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NegateChecked and the System.Linq.Expressions.UnaryExpression.Operand and System.Linq.Expressions.UnaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

New(ConstructorInfo)

Creates a System.Linq.Expressions.NewExpression that represents calling the specified constructor that takes no arguments.

Declaration
public NewExpression New(ConstructorInfo constructor)
Parameters
Type Name Description
System.Reflection.ConstructorInfo constructor

The System.Reflection.ConstructorInfo to set the System.Linq.Expressions.NewExpression.Constructor property equal to.

Returns
Type Description
System.Linq.Expressions.NewExpression

A System.Linq.Expressions.NewExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.New and the System.Linq.Expressions.NewExpression.Constructor property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

New(ConstructorInfo, IEnumerable<Expression>)

Creates a System.Linq.Expressions.NewExpression that represents calling the specified constructor with the specified arguments.

Declaration
public NewExpression New(ConstructorInfo constructor, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Reflection.ConstructorInfo constructor

The System.Reflection.ConstructorInfo to set the System.Linq.Expressions.NewExpression.Constructor property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewExpression.Arguments collection.

Returns
Type Description
System.Linq.Expressions.NewExpression

A System.Linq.Expressions.NewExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.New and the System.Linq.Expressions.NewExpression.Constructor and System.Linq.Expressions.NewExpression.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>)

Creates a System.Linq.Expressions.NewExpression that represents calling the specified constructor with the specified arguments. The members that access the constructor initialized fields are specified.

Declaration
public NewExpression New(ConstructorInfo constructor, IEnumerable<Expression> arguments, IEnumerable<MemberInfo> members)
Parameters
Type Name Description
System.Reflection.ConstructorInfo constructor

The System.Reflection.ConstructorInfo to set the System.Linq.Expressions.NewExpression.Constructor property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewExpression.Arguments collection.

System.Collections.Generic.IEnumerable<System.Reflection.MemberInfo> members

An System.Collections.Generic.IEnumerable<> that contains System.Reflection.MemberInfo objects to use to populate the System.Linq.Expressions.NewExpression.Members collection.

Returns
Type Description
System.Linq.Expressions.NewExpression

A System.Linq.Expressions.NewExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.New and the System.Linq.Expressions.NewExpression.Constructor, System.Linq.Expressions.NewExpression.Arguments and System.Linq.Expressions.NewExpression.Members properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[])

Creates a System.Linq.Expressions.NewExpression that represents calling the specified constructor with the specified arguments. The members that access the constructor initialized fields are specified as an array.

Declaration
public NewExpression New(ConstructorInfo constructor, IEnumerable<Expression> arguments, MemberInfo[] members)
Parameters
Type Name Description
System.Reflection.ConstructorInfo constructor

The System.Reflection.ConstructorInfo to set the System.Linq.Expressions.NewExpression.Constructor property equal to.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewExpression.Arguments collection.

System.Reflection.MemberInfo[] members

An array of System.Reflection.MemberInfo objects to use to populate the System.Linq.Expressions.NewExpression.Members collection.

Returns
Type Description
System.Linq.Expressions.NewExpression

A System.Linq.Expressions.NewExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.New and the System.Linq.Expressions.NewExpression.Constructor, System.Linq.Expressions.NewExpression.Arguments and System.Linq.Expressions.NewExpression.Members properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

New(ConstructorInfo, Expression[])

Creates a System.Linq.Expressions.NewExpression that represents calling the specified constructor with the specified arguments.

Declaration
public NewExpression New(ConstructorInfo constructor, Expression[] arguments)
Parameters
Type Name Description
System.Reflection.ConstructorInfo constructor

The System.Reflection.ConstructorInfo to set the System.Linq.Expressions.NewExpression.Constructor property equal to.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewExpression.Arguments collection.

Returns
Type Description
System.Linq.Expressions.NewExpression

A System.Linq.Expressions.NewExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.New and the System.Linq.Expressions.NewExpression.Constructor and System.Linq.Expressions.NewExpression.Arguments properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

New(Type)

Creates a System.Linq.Expressions.NewExpression that represents calling the parameterless constructor of the specified type.

Declaration
public NewExpression New(Type type)
Parameters
Type Name Description
System.Type type

A System.Type that has a constructor that takes no arguments.

Returns
Type Description
System.Linq.Expressions.NewExpression

A System.Linq.Expressions.NewExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.New and the System.Linq.Expressions.NewExpression.Constructor property set to the System.Reflection.ConstructorInfo that represents the constructor without parameters for the specified type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NewArrayBounds(Type, IEnumerable<Expression>)

Creates a System.Linq.Expressions.NewArrayExpression that represents creating an array that has a specified rank.

Declaration
public NewArrayExpression NewArrayBounds(Type type, IEnumerable<Expression> bounds)
Parameters
Type Name Description
System.Type type

A System.Type that represents the element type of the array.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> bounds

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewArrayExpression.Expressions collection.

Returns
Type Description
System.Linq.Expressions.NewArrayExpression

A System.Linq.Expressions.NewArrayExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NewArrayBounds and the System.Linq.Expressions.NewArrayExpression.Expressions property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NewArrayBounds(Type, Expression[])

Creates a System.Linq.Expressions.NewArrayExpression that represents creating an array that has a specified rank.

Declaration
public NewArrayExpression NewArrayBounds(Type type, Expression[] bounds)
Parameters
Type Name Description
System.Type type

A System.Type that represents the element type of the array.

System.Linq.Expressions.Expression[] bounds

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewArrayExpression.Expressions collection.

Returns
Type Description
System.Linq.Expressions.NewArrayExpression

A System.Linq.Expressions.NewArrayExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NewArrayBounds and the System.Linq.Expressions.NewArrayExpression.Expressions property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NewArrayInit(Type, IEnumerable<Expression>)

Creates a System.Linq.Expressions.NewArrayExpression that represents creating a one-dimensional array and initializing it from a list of elements.

Declaration
public NewArrayExpression NewArrayInit(Type type, IEnumerable<Expression> initializers)
Parameters
Type Name Description
System.Type type

A System.Type that represents the element type of the array.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> initializers

An System.Collections.Generic.IEnumerable<> that contains System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewArrayExpression.Expressions collection.

Returns
Type Description
System.Linq.Expressions.NewArrayExpression

A System.Linq.Expressions.NewArrayExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NewArrayInit and the System.Linq.Expressions.NewArrayExpression.Expressions property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NewArrayInit(Type, Expression[])

Creates a System.Linq.Expressions.NewArrayExpression that represents creating a one-dimensional array and initializing it from a list of elements.

Declaration
public NewArrayExpression NewArrayInit(Type type, Expression[] initializers)
Parameters
Type Name Description
System.Type type

A System.Type that represents the element type of the array.

System.Linq.Expressions.Expression[] initializers

An array of System.Linq.Expressions.Expression objects to use to populate the System.Linq.Expressions.NewArrayExpression.Expressions collection.

Returns
Type Description
System.Linq.Expressions.NewArrayExpression

A System.Linq.Expressions.NewArrayExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NewArrayInit and the System.Linq.Expressions.NewArrayExpression.Expressions property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Not(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents a bitwise complement operation.

Declaration
public UnaryExpression Not(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Not and the System.Linq.Expressions.UnaryExpression.Operand property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Not(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents a bitwise complement operation. The implementing method can be specified.

Declaration
public UnaryExpression Not(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.UnaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Not and the System.Linq.Expressions.UnaryExpression.Operand and System.Linq.Expressions.UnaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NotEqual(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an inequality comparison.

Declaration
public BinaryExpression NotEqual(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NotEqual and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

NotEqual(Expression, Expression, Boolean, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an inequality comparison.

Declaration
public BinaryExpression NotEqual(Expression left, Expression right, bool liftToNull, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Boolean liftToNull

true to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to true; false to set System.Linq.Expressions.BinaryExpression.IsLiftedToNull to false.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NotEqual and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.IsLiftedToNull, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

OnesComplement(Expression)

Returns the expression representing the ones complement.

Declaration
public UnaryExpression OnesComplement(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

An instance of System.Linq.Expressions.UnaryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

OnesComplement(Expression, MethodInfo)

Returns the expression representing the ones complement.

Declaration
public UnaryExpression OnesComplement(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

An instance of System.Linq.Expressions.UnaryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Or(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise langword_csharp_OR operation.

Declaration
public BinaryExpression Or(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Or and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Or(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise langword_csharp_OR operation.

Declaration
public BinaryExpression Or(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Or and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

OrAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise OR assignment operation.

Declaration
public BinaryExpression OrAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.OrAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

OrAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise OR assignment operation.

Declaration
public BinaryExpression OrAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.OrAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

OrAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise OR assignment operation.

Declaration
public BinaryExpression OrAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.OrAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

OrElse(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a conditional langword_csharp_OR operation that evaluates the second operand only if the first operand evaluates to false.

Declaration
public BinaryExpression OrElse(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.OrElse and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

OrElse(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a conditional langword_csharp_OR operation that evaluates the second operand only if the first operand evaluates to false.

Declaration
public BinaryExpression OrElse(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.OrElse and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Parameter(Type)

Creates a System.Linq.Expressions.ParameterExpression node that can be used to identify a parameter or a variable in an expression tree.

Declaration
public ParameterExpression Parameter(Type type)
Parameters
Type Name Description
System.Type type

The type of the parameter or variable.

Returns
Type Description
System.Linq.Expressions.ParameterExpression

A System.Linq.Expressions.ParameterExpression node with the specified name and type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Parameter(Type, String)

Creates a System.Linq.Expressions.ParameterExpression node that can be used to identify a parameter or a variable in an expression tree.

Declaration
public ParameterExpression Parameter(Type type, string name)
Parameters
Type Name Description
System.Type type

The type of the parameter or variable.

System.String name

The name of the parameter or variable, used for debugging or printing purpose only.

Returns
Type Description
System.Linq.Expressions.ParameterExpression

A System.Linq.Expressions.ParameterExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Parameter and the System.Linq.Expressions.Expression.Type and System.Linq.Expressions.ParameterExpression.Name properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PostDecrementAssign(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents the assignment of the expression followed by a subsequent decrement by 1 of the original expression.

Declaration
public UnaryExpression PostDecrementAssign(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PostDecrementAssign(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents the assignment of the expression followed by a subsequent decrement by 1 of the original expression.

Declaration
public UnaryExpression PostDecrementAssign(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PostIncrementAssign(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents the assignment of the expression followed by a subsequent increment by 1 of the original expression.

Declaration
public UnaryExpression PostIncrementAssign(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PostIncrementAssign(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents the assignment of the expression followed by a subsequent increment by 1 of the original expression.

Declaration
public UnaryExpression PostIncrementAssign(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Power(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents raising a number to a power.

Declaration
public BinaryExpression Power(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Power and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Power(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents raising a number to a power.

Declaration
public BinaryExpression Power(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Power and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PowerAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents raising an expression to a power and assigning the result back to the expression.

Declaration
public BinaryExpression PowerAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.PowerAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PowerAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents raising an expression to a power and assigning the result back to the expression.

Declaration
public BinaryExpression PowerAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.PowerAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PowerAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents raising an expression to a power and assigning the result back to the expression.

Declaration
public BinaryExpression PowerAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.PowerAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PreDecrementAssign(Expression)

Creates a System.Linq.Expressions.UnaryExpression that decrements the expression by 1 and assigns the result back to the expression.

Declaration
public UnaryExpression PreDecrementAssign(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PreDecrementAssign(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that decrements the expression by 1 and assigns the result back to the expression.

Declaration
public UnaryExpression PreDecrementAssign(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PreIncrementAssign(Expression)

Creates a System.Linq.Expressions.UnaryExpression that increments the expression by 1 and assigns the result back to the expression.

Declaration
public UnaryExpression PreIncrementAssign(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PreIncrementAssign(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that increments the expression by 1 and assigns the result back to the expression.

Declaration
public UnaryExpression PreIncrementAssign(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to apply the operations on.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo that represents the implementing method.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the resultant expression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Property(Expression, MethodInfo)

Creates a System.Linq.Expressions.MemberExpression that represents accessing a property by using a property accessor method.

Declaration
public MemberExpression Property(Expression expression, MethodInfo propertyAccessor)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.MemberExpression.Expression property equal to. This can be null for static properties.

System.Reflection.MethodInfo propertyAccessor

The System.Reflection.MethodInfo that represents a property accessor method.

Returns
Type Description
System.Linq.Expressions.MemberExpression

A System.Linq.Expressions.MemberExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberAccess, the System.Linq.Expressions.MemberExpression.Expression property set to expression and the System.Linq.Expressions.MemberExpression.Member property set to the System.Reflection.PropertyInfo that represents the property accessed in propertyAccessor.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Property(Expression, PropertyInfo)

Creates a System.Linq.Expressions.MemberExpression that represents accessing a property.

Declaration
public MemberExpression Property(Expression expression, PropertyInfo property)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.MemberExpression.Expression property equal to. This can be null for static properties.

System.Reflection.PropertyInfo property

The System.Reflection.PropertyInfo to set the System.Linq.Expressions.MemberExpression.Member property equal to.

Returns
Type Description
System.Linq.Expressions.MemberExpression

A System.Linq.Expressions.MemberExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberAccess and the System.Linq.Expressions.MemberExpression.Expression and System.Linq.Expressions.MemberExpression.Member properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Property(Expression, PropertyInfo, IEnumerable<Expression>)

Creates an System.Linq.Expressions.IndexExpression representing the access to an indexed property.

Declaration
public IndexExpression Property(Expression instance, PropertyInfo indexer, IEnumerable<Expression> arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

The object to which the property belongs. If the property is static/shared, it must be null.

System.Reflection.PropertyInfo indexer

The System.Reflection.PropertyInfo that represents the property to index.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments

An System.Collections.Generic.IEnumerable<> of System.Linq.Expressions.Expression objects that are used to index the property.

Returns
Type Description
System.Linq.Expressions.IndexExpression

The created System.Linq.Expressions.IndexExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Property(Expression, PropertyInfo, Expression[])

Creates an System.Linq.Expressions.IndexExpression representing the access to an indexed property.

Declaration
public IndexExpression Property(Expression instance, PropertyInfo indexer, Expression[] arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

The object to which the property belongs. If the property is static/shared, it must be null.

System.Reflection.PropertyInfo indexer

The System.Reflection.PropertyInfo that represents the property to index.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects that are used to index the property.

Returns
Type Description
System.Linq.Expressions.IndexExpression

The created System.Linq.Expressions.IndexExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Property(Expression, String)

Creates a System.Linq.Expressions.MemberExpression that represents accessing a property.

Declaration
public MemberExpression Property(Expression expression, string propertyName)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression whose System.Linq.Expressions.Expression.Type contains a property named propertyName. This can be null for static properties.

System.String propertyName

The name of a property to be accessed.

Returns
Type Description
System.Linq.Expressions.MemberExpression

A System.Linq.Expressions.MemberExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberAccess, the System.Linq.Expressions.MemberExpression.Expression property set to expression, and the System.Linq.Expressions.MemberExpression.Member property set to the System.Reflection.PropertyInfo that represents the property denoted by propertyName.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Property(Expression, String, Expression[])

Creates an System.Linq.Expressions.IndexExpression representing the access to an indexed property.

Declaration
public IndexExpression Property(Expression instance, string propertyName, Expression[] arguments)
Parameters
Type Name Description
System.Linq.Expressions.Expression instance

The object to which the property belongs. If the property is static/shared, it must be null.

System.String propertyName

The name of the indexer.

System.Linq.Expressions.Expression[] arguments

An array of System.Linq.Expressions.Expression objects that are used to index the property.

Returns
Type Description
System.Linq.Expressions.IndexExpression

The created System.Linq.Expressions.IndexExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Property(Expression, Type, String)

Creates a System.Linq.Expressions.MemberExpression accessing a property.

Declaration
public MemberExpression Property(Expression expression, Type type, string propertyName)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

The containing object of the property. This can be null for static properties.

System.Type type

The System.Linq.Expressions.Expression.Type that contains the property.

System.String propertyName

The property to be accessed.

Returns
Type Description
System.Linq.Expressions.MemberExpression

The created System.Linq.Expressions.MemberExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

PropertyOrField(Expression, String)

Creates a System.Linq.Expressions.MemberExpression that represents accessing a property or field.

Declaration
public MemberExpression PropertyOrField(Expression expression, string propertyOrFieldName)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression whose System.Linq.Expressions.Expression.Type contains a property or field named propertyOrFieldName. This can be null for static members.

System.String propertyOrFieldName

The name of a property or field to be accessed.

Returns
Type Description
System.Linq.Expressions.MemberExpression

A System.Linq.Expressions.MemberExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.MemberAccess, the System.Linq.Expressions.MemberExpression.Expression property set to expression, and the System.Linq.Expressions.MemberExpression.Member property set to the System.Reflection.PropertyInfo or System.Reflection.FieldInfo that represents the property or field denoted by propertyOrFieldName.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Quote(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents an expression that has a constant value of type System.Linq.Expressions.Expression.

Declaration
public UnaryExpression Quote(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Quote and the System.Linq.Expressions.UnaryExpression.Operand property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ReferenceEqual(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a reference equality comparison.

Declaration
public BinaryExpression ReferenceEqual(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Equal and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

ReferenceNotEqual(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a reference inequality comparison.

Declaration
public BinaryExpression ReferenceNotEqual(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.NotEqual and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Rethrow()

Creates a System.Linq.Expressions.UnaryExpression that represents a rethrowing of an exception.

Declaration
public UnaryExpression Rethrow()
Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents a rethrowing of an exception.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Rethrow(Type)

Creates a System.Linq.Expressions.UnaryExpression that represents a rethrowing of an exception with a given type.

Declaration
public UnaryExpression Rethrow(Type type)
Parameters
Type Name Description
System.Type type

The new System.Type of the expression.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents a rethrowing of an exception.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Return(LabelTarget)

Creates a System.Linq.Expressions.GotoExpression representing a return statement.

Declaration
public GotoExpression Return(LabelTarget target)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Return, the System.Linq.Expressions.GotoExpression.Target property set to target, and a null value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Return(LabelTarget, Expression)

Creates a System.Linq.Expressions.GotoExpression representing a return statement. The value passed to the label upon jumping can be specified.

Declaration
public GotoExpression Return(LabelTarget target, Expression value)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Linq.Expressions.Expression value

The value that will be passed to the associated label upon jumping.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Continue, the System.Linq.Expressions.GotoExpression.Target property set to target, and value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Return(LabelTarget, Expression, Type)

Creates a System.Linq.Expressions.GotoExpression representing a return statement with the specified type. The value passed to the label upon jumping can be specified.

Declaration
public GotoExpression Return(LabelTarget target, Expression value, Type type)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Linq.Expressions.Expression value

The value that will be passed to the associated label upon jumping.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Continue, the System.Linq.Expressions.GotoExpression.Target property set to target, the System.Linq.Expressions.Expression.Type property set to type, and value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Return(LabelTarget, Type)

Creates a System.Linq.Expressions.GotoExpression representing a return statement with the specified type.

Declaration
public GotoExpression Return(LabelTarget target, Type type)
Parameters
Type Name Description
System.Linq.Expressions.LabelTarget target

The System.Linq.Expressions.LabelTarget that the System.Linq.Expressions.GotoExpression will jump to.

System.Type type

An System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.GotoExpression

A System.Linq.Expressions.GotoExpression with System.Linq.Expressions.GotoExpression.Kind equal to Return, the System.Linq.Expressions.GotoExpression.Target property set to target, the System.Linq.Expressions.Expression.Type property set to type, and a null value to be passed to the target label upon jumping.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

RightShift(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise right-shift operation.

Declaration
public BinaryExpression RightShift(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.RightShift and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

RightShift(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise right-shift operation.

Declaration
public BinaryExpression RightShift(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.RightShift and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

RightShiftAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise right-shift assignment operation.

Declaration
public BinaryExpression RightShiftAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.RightShiftAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

RightShiftAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise right-shift assignment operation.

Declaration
public BinaryExpression RightShiftAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.RightShiftAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

RightShiftAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a bitwise right-shift assignment operation.

Declaration
public BinaryExpression RightShiftAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.RightShiftAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

RuntimeVariables(IEnumerable<ParameterExpression>)

Creates an instance of System.Linq.Expressions.RuntimeVariablesExpression.

Declaration
public RuntimeVariablesExpression RuntimeVariables(IEnumerable<ParameterExpression> variables)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> variables

A collection of System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.RuntimeVariablesExpression.Variables collection.

Returns
Type Description
System.Linq.Expressions.RuntimeVariablesExpression

An instance of System.Linq.Expressions.RuntimeVariablesExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.RuntimeVariables and the System.Linq.Expressions.RuntimeVariablesExpression.Variables property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

RuntimeVariables(ParameterExpression[])

Creates an instance of System.Linq.Expressions.RuntimeVariablesExpression.

Declaration
public RuntimeVariablesExpression RuntimeVariables(ParameterExpression[] variables)
Parameters
Type Name Description
System.Linq.Expressions.ParameterExpression[] variables

An array of System.Linq.Expressions.ParameterExpression objects to use to populate the System.Linq.Expressions.RuntimeVariablesExpression.Variables collection.

Returns
Type Description
System.Linq.Expressions.RuntimeVariablesExpression

An instance of System.Linq.Expressions.RuntimeVariablesExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.RuntimeVariables and the System.Linq.Expressions.RuntimeVariablesExpression.Variables property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Subtract(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic subtraction operation that does not have overflow checking.

Declaration
public BinaryExpression Subtract(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Subtract and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Subtract(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic subtraction operation that does not have overflow checking.

Declaration
public BinaryExpression Subtract(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.Subtract and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractAssign(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a subtraction assignment operation that does not have overflow checking.

Declaration
public BinaryExpression SubtractAssign(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractAssign and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractAssign(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a subtraction assignment operation that does not have overflow checking.

Declaration
public BinaryExpression SubtractAssign(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractAssign(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a subtraction assignment operation that does not have overflow checking.

Declaration
public BinaryExpression SubtractAssign(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractAssign and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractAssignChecked(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents a subtraction assignment operation that has overflow checking.

Declaration
public BinaryExpression SubtractAssignChecked(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractAssignChecked and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractAssignChecked(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents a subtraction assignment operation that has overflow checking.

Declaration
public BinaryExpression SubtractAssignChecked(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractAssignChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractAssignChecked(Expression, Expression, MethodInfo, LambdaExpression)

Creates a System.Linq.Expressions.BinaryExpression that represents a subtraction assignment operation that has overflow checking.

Declaration
public BinaryExpression SubtractAssignChecked(Expression left, Expression right, MethodInfo method, LambdaExpression conversion)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

System.Linq.Expressions.LambdaExpression conversion

A System.Linq.Expressions.LambdaExpression to set the System.Linq.Expressions.BinaryExpression.Conversion property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractAssignChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, System.Linq.Expressions.BinaryExpression.Method, and System.Linq.Expressions.BinaryExpression.Conversion properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractChecked(Expression, Expression)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic subtraction operation that has overflow checking.

Declaration
public BinaryExpression SubtractChecked(Expression left, Expression right)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractChecked and the System.Linq.Expressions.BinaryExpression.Left and System.Linq.Expressions.BinaryExpression.Right properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SubtractChecked(Expression, Expression, MethodInfo)

Creates a System.Linq.Expressions.BinaryExpression that represents an arithmetic subtraction operation that has overflow checking.

Declaration
public BinaryExpression SubtractChecked(Expression left, Expression right, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression left

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Left property equal to.

System.Linq.Expressions.Expression right

A System.Linq.Expressions.Expression to set the System.Linq.Expressions.BinaryExpression.Right property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.BinaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.BinaryExpression

A System.Linq.Expressions.BinaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.SubtractChecked and the System.Linq.Expressions.BinaryExpression.Left, System.Linq.Expressions.BinaryExpression.Right, and System.Linq.Expressions.BinaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Switch(Expression, Expression, SwitchCase[])

Creates a System.Linq.Expressions.SwitchExpression that represents a langword_csharp_switch statement that has a default case.

Declaration
public SwitchExpression Switch(Expression switchValue, Expression defaultBody, SwitchCase[] cases)
Parameters
Type Name Description
System.Linq.Expressions.Expression switchValue

The value to be tested against each case.

System.Linq.Expressions.Expression defaultBody

The result of the switch if switchValue does not match any of the cases.

System.Linq.Expressions.SwitchCase[] cases

The set of cases for this switch expression.

Returns
Type Description
System.Linq.Expressions.SwitchExpression

The created System.Linq.Expressions.SwitchExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Switch(Expression, Expression, MethodInfo, IEnumerable<SwitchCase>)

Creates a System.Linq.Expressions.SwitchExpression that represents a langword_csharp_switch statement that has a default case.

Declaration
public SwitchExpression Switch(Expression switchValue, Expression defaultBody, MethodInfo comparison, IEnumerable<SwitchCase> cases)
Parameters
Type Name Description
System.Linq.Expressions.Expression switchValue

The value to be tested against each case.

System.Linq.Expressions.Expression defaultBody

The result of the switch if switchValue does not match any of the cases.

System.Reflection.MethodInfo comparison

The equality comparison method to use.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.SwitchCase> cases

The set of cases for this switch expression.

Returns
Type Description
System.Linq.Expressions.SwitchExpression

The created System.Linq.Expressions.SwitchExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Switch(Expression, Expression, MethodInfo, SwitchCase[])

Creates a System.Linq.Expressions.SwitchExpression that represents a langword_csharp_switch statement that has a default case.

Declaration
public SwitchExpression Switch(Expression switchValue, Expression defaultBody, MethodInfo comparison, SwitchCase[] cases)
Parameters
Type Name Description
System.Linq.Expressions.Expression switchValue

The value to be tested against each case.

System.Linq.Expressions.Expression defaultBody

The result of the switch if switchValue does not match any of the cases.

System.Reflection.MethodInfo comparison

The equality comparison method to use.

System.Linq.Expressions.SwitchCase[] cases

The set of cases for this switch expression.

Returns
Type Description
System.Linq.Expressions.SwitchExpression

The created System.Linq.Expressions.SwitchExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Switch(Expression, SwitchCase[])

Creates a System.Linq.Expressions.SwitchExpression that represents a langword_csharp_switch statement without a default case.

Declaration
public SwitchExpression Switch(Expression switchValue, SwitchCase[] cases)
Parameters
Type Name Description
System.Linq.Expressions.Expression switchValue

The value to be tested against each case.

System.Linq.Expressions.SwitchCase[] cases

The set of cases for this switch expression.

Returns
Type Description
System.Linq.Expressions.SwitchExpression

The created System.Linq.Expressions.SwitchExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Switch(Type, Expression, Expression, MethodInfo, IEnumerable<SwitchCase>)

Creates a System.Linq.Expressions.SwitchExpression that represents a langword_csharp_switch statement that has a default case.

Declaration
public SwitchExpression Switch(Type type, Expression switchValue, Expression defaultBody, MethodInfo comparison, IEnumerable<SwitchCase> cases)
Parameters
Type Name Description
System.Type type

The result type of the switch.

System.Linq.Expressions.Expression switchValue

The value to be tested against each case.

System.Linq.Expressions.Expression defaultBody

The result of the switch if switchValue does not match any of the cases.

System.Reflection.MethodInfo comparison

The equality comparison method to use.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.SwitchCase> cases

The set of cases for this switch expression.

Returns
Type Description
System.Linq.Expressions.SwitchExpression

The created System.Linq.Expressions.SwitchExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Switch(Type, Expression, Expression, MethodInfo, SwitchCase[])

Creates a System.Linq.Expressions.SwitchExpression that represents a langword_csharp_switch statement that has a default case..

Declaration
public SwitchExpression Switch(Type type, Expression switchValue, Expression defaultBody, MethodInfo comparison, SwitchCase[] cases)
Parameters
Type Name Description
System.Type type

The result type of the switch.

System.Linq.Expressions.Expression switchValue

The value to be tested against each case.

System.Linq.Expressions.Expression defaultBody

The result of the switch if switchValue does not match any of the cases.

System.Reflection.MethodInfo comparison

The equality comparison method to use.

System.Linq.Expressions.SwitchCase[] cases

The set of cases for this switch expression.

Returns
Type Description
System.Linq.Expressions.SwitchExpression

The created System.Linq.Expressions.SwitchExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SwitchCase(Expression, IEnumerable<Expression>)

Creates a System.Linq.Expressions.SwitchCase object to be used in a System.Linq.Expressions.SwitchExpression object.

Declaration
public SwitchCase SwitchCase(Expression body, IEnumerable<Expression> testValues)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the case.

System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> testValues

The test values of the case.

Returns
Type Description
System.Linq.Expressions.SwitchCase

The created System.Linq.Expressions.SwitchCase.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SwitchCase(Expression, Expression[])

Creates a System.Linq.Expressions.SwitchCase for use in a System.Linq.Expressions.SwitchExpression.

Declaration
public SwitchCase SwitchCase(Expression body, Expression[] testValues)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the case.

System.Linq.Expressions.Expression[] testValues

The test values of the case.

Returns
Type Description
System.Linq.Expressions.SwitchCase

The created System.Linq.Expressions.SwitchCase.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SymbolDocument(String)

Creates an instance of System.Linq.Expressions.SymbolDocumentInfo.

Declaration
public SymbolDocumentInfo SymbolDocument(string fileName)
Parameters
Type Name Description
System.String fileName

A System.String to set the System.Linq.Expressions.SymbolDocumentInfo.FileName equal to.

Returns
Type Description
System.Linq.Expressions.SymbolDocumentInfo

A System.Linq.Expressions.SymbolDocumentInfo that has the System.Linq.Expressions.SymbolDocumentInfo.FileName property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SymbolDocument(String, Guid)

Creates an instance of System.Linq.Expressions.SymbolDocumentInfo.

Declaration
public SymbolDocumentInfo SymbolDocument(string fileName, Guid language)
Parameters
Type Name Description
System.String fileName

A System.String to set the System.Linq.Expressions.SymbolDocumentInfo.FileName equal to.

System.Guid language

A System.Guid to set the System.Linq.Expressions.SymbolDocumentInfo.Language equal to.

Returns
Type Description
System.Linq.Expressions.SymbolDocumentInfo

A System.Linq.Expressions.SymbolDocumentInfo that has the System.Linq.Expressions.SymbolDocumentInfo.FileName and System.Linq.Expressions.SymbolDocumentInfo.Language properties set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SymbolDocument(String, Guid, Guid)

Creates an instance of System.Linq.Expressions.SymbolDocumentInfo.

Declaration
public SymbolDocumentInfo SymbolDocument(string fileName, Guid language, Guid languageVendor)
Parameters
Type Name Description
System.String fileName

A System.String to set the System.Linq.Expressions.SymbolDocumentInfo.FileName equal to.

System.Guid language

A System.Guid to set the System.Linq.Expressions.SymbolDocumentInfo.Language equal to.

System.Guid languageVendor

A System.Guid to set the System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor equal to.

Returns
Type Description
System.Linq.Expressions.SymbolDocumentInfo

A System.Linq.Expressions.SymbolDocumentInfo that has the System.Linq.Expressions.SymbolDocumentInfo.FileName and System.Linq.Expressions.SymbolDocumentInfo.Language and System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor properties set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

SymbolDocument(String, Guid, Guid, Guid)

Creates an instance of System.Linq.Expressions.SymbolDocumentInfo.

Declaration
public SymbolDocumentInfo SymbolDocument(string fileName, Guid language, Guid languageVendor, Guid documentType)
Parameters
Type Name Description
System.String fileName

A System.String to set the System.Linq.Expressions.SymbolDocumentInfo.FileName equal to.

System.Guid language

A System.Guid to set the System.Linq.Expressions.SymbolDocumentInfo.Language equal to.

System.Guid languageVendor

A System.Guid to set the System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor equal to.

System.Guid documentType

A System.Guid to set the System.Linq.Expressions.SymbolDocumentInfo.DocumentType equal to.

Returns
Type Description
System.Linq.Expressions.SymbolDocumentInfo

A System.Linq.Expressions.SymbolDocumentInfo that has the System.Linq.Expressions.SymbolDocumentInfo.FileName and System.Linq.Expressions.SymbolDocumentInfo.Language and System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor and System.Linq.Expressions.SymbolDocumentInfo.DocumentType properties set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Throw(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents a throwing of an exception.

Declaration
public UnaryExpression Throw(Expression value)
Parameters
Type Name Description
System.Linq.Expressions.Expression value

An System.Linq.Expressions.Expression.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the exception.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Throw(Expression, Type)

Creates a System.Linq.Expressions.UnaryExpression that represents a throwing of an exception with a given type.

Declaration
public UnaryExpression Throw(Expression value, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression value

An System.Linq.Expressions.Expression.

System.Type type

The new System.Type of the expression.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that represents the exception.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

TryCatch(Expression, CatchBlock[])

Creates a System.Linq.Expressions.TryExpression representing a try block with any number of catch statements and neither a fault nor finally block.

Declaration
public TryExpression TryCatch(Expression body, CatchBlock[] handlers)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the try block.

System.Linq.Expressions.CatchBlock[] handlers

The array of zero or more System.Linq.Expressions.CatchBlock expressions representing the catch statements to be associated with the try block.

Returns
Type Description
System.Linq.Expressions.TryExpression

The created System.Linq.Expressions.TryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

TryCatchFinally(Expression, Expression, CatchBlock[])

Creates a System.Linq.Expressions.TryExpression representing a try block with any number of catch statements and a finally block.

Declaration
public TryExpression TryCatchFinally(Expression body, Expression finally, CatchBlock[] handlers)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the try block.

System.Linq.Expressions.Expression finally

The body of the finally block.

System.Linq.Expressions.CatchBlock[] handlers

The array of zero or more System.Linq.Expressions.CatchBlock expressions representing the catch statements to be associated with the try block.

Returns
Type Description
System.Linq.Expressions.TryExpression

The created System.Linq.Expressions.TryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

TryFault(Expression, Expression)

Creates a System.Linq.Expressions.TryExpression representing a try block with a fault block and no catch statements.

Declaration
public TryExpression TryFault(Expression body, Expression fault)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the try block.

System.Linq.Expressions.Expression fault

The body of the fault block.

Returns
Type Description
System.Linq.Expressions.TryExpression

The created System.Linq.Expressions.TryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

TryFinally(Expression, Expression)

Creates a System.Linq.Expressions.TryExpression representing a try block with a finally block and no catch statements.

Declaration
public TryExpression TryFinally(Expression body, Expression finally)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the try block.

System.Linq.Expressions.Expression finally

The body of the finally block.

Returns
Type Description
System.Linq.Expressions.TryExpression

The created System.Linq.Expressions.TryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

TypeAs(Expression, Type)

Creates a System.Linq.Expressions.UnaryExpression that represents an explicit reference or boxing conversion where null is supplied if the conversion fails.

Declaration
public UnaryExpression TypeAs(Expression expression, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Type type

A System.Type to set the System.Linq.Expressions.Expression.Type property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.TypeAs and the System.Linq.Expressions.UnaryExpression.Operand and System.Linq.Expressions.Expression.Type properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

TypeEqual(Expression, Type)

Creates a System.Linq.Expressions.TypeBinaryExpression that compares run-time type identity.

Declaration
public TypeBinaryExpression TypeEqual(Expression expression, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.Expression property equal to.

System.Type type

A System.Linq.Expressions.Expression.Type to set the System.Linq.Expressions.TypeBinaryExpression.TypeOperand property equal to.

Returns
Type Description
System.Linq.Expressions.TypeBinaryExpression

A System.Linq.Expressions.TypeBinaryExpression for which the System.Linq.Expressions.Expression.NodeType property is equal to System.Linq.Expressions.Expression.TypeEqual(System.Linq.Expressions.Expression,System.Type) and for which the System.Linq.Expressions.Expression and System.Linq.Expressions.TypeBinaryExpression.TypeOperand properties are set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

TypeIs(Expression, Type)

Creates a System.Linq.Expressions.TypeBinaryExpression.

Declaration
public TypeBinaryExpression TypeIs(Expression expression, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.TypeBinaryExpression.Expression property equal to.

System.Type type

A System.Linq.Expressions.Expression.Type to set the System.Linq.Expressions.TypeBinaryExpression.TypeOperand property equal to.

Returns
Type Description
System.Linq.Expressions.TypeBinaryExpression

A System.Linq.Expressions.TypeBinaryExpression for which the System.Linq.Expressions.Expression.NodeType property is equal to System.Linq.Expressions.ExpressionType.TypeIs and for which the System.Linq.Expressions.TypeBinaryExpression.Expression and System.Linq.Expressions.TypeBinaryExpression.TypeOperand properties are set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

UnaryPlus(Expression)

Creates a System.Linq.Expressions.UnaryExpression that represents a unary plus operation.

Declaration
public UnaryExpression UnaryPlus(Expression expression)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.UnaryPlus and the System.Linq.Expressions.UnaryExpression.Operand property set to the specified value.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

UnaryPlus(Expression, MethodInfo)

Creates a System.Linq.Expressions.UnaryExpression that represents a unary plus operation.

Declaration
public UnaryExpression UnaryPlus(Expression expression, MethodInfo method)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to set the System.Linq.Expressions.UnaryExpression.Operand property equal to.

System.Reflection.MethodInfo method

A System.Reflection.MethodInfo to set the System.Linq.Expressions.UnaryExpression.Method property equal to.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

A System.Linq.Expressions.UnaryExpression that has the System.Linq.Expressions.Expression.NodeType property equal to System.Linq.Expressions.ExpressionType.UnaryPlus and the System.Linq.Expressions.UnaryExpression.Operand and System.Linq.Expressions.UnaryExpression.Method properties set to the specified values.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Unbox(Expression, Type)

Creates a System.Linq.Expressions.UnaryExpression that represents an explicit unboxing.

Declaration
public UnaryExpression Unbox(Expression expression, Type type)
Parameters
Type Name Description
System.Linq.Expressions.Expression expression

An System.Linq.Expressions.Expression to unbox.

System.Type type

The new System.Type of the expression.

Returns
Type Description
System.Linq.Expressions.UnaryExpression

An instance of System.Linq.Expressions.UnaryExpression.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Variable(Type)

Creates a System.Linq.Expressions.ParameterExpression node that can be used to identify a parameter or a variable in an expression tree.

Declaration
public ParameterExpression Variable(Type type)
Parameters
Type Name Description
System.Type type

The type of the parameter or variable.

Returns
Type Description
System.Linq.Expressions.ParameterExpression

A System.Linq.Expressions.ParameterExpression node with the specified name and type

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Variable(Type, String)

Creates a System.Linq.Expressions.ParameterExpression node that can be used to identify a parameter or a variable in an expression tree.

Declaration
public ParameterExpression Variable(Type type, string name)
Parameters
Type Name Description
System.Type type

The type of the parameter or variable.

System.String name

The name of the parameter or variable. This name is used for debugging or printing purpose only.

Returns
Type Description
System.Linq.Expressions.ParameterExpression

A System.Linq.Expressions.ParameterExpression node with the specified name and type.

Remarks

This method does not provide any guarantees with regards to argument validation or type checking.

Implements

IExpressionFactory
In This Article
Back to top Generated by DocFX