4 types derived from BinaryExpression
System.Linq.Expressions (4)
System\Linq\Expressions\BinaryExpression.cs (4)
458
internal sealed class LogicalBinaryExpression :
BinaryExpression
472
internal class AssignBinaryExpression :
BinaryExpression
511
internal sealed class CoalesceConversionBinaryExpression :
BinaryExpression
546
internal class SimpleBinaryExpression :
BinaryExpression
928 references to BinaryExpression
Microsoft.AspNetCore.Components.Endpoints (5)
FormMapping\Factories\ComplexType\ComplexTypeExpressionConverterFactoryOfT.cs (5)
171
var
failedAndHasHandler = Expression.And(Expression.Not(succeeded), HasHandler(context));
173
var
clause = model.Type.IsValueType ? failedAndHasHandler :
214
static
BinaryExpression
HasHandler(ParameterExpression context)
355
var
propertyConverter = Expression.Assign(
455
var
constructorParameterConverter = Expression.Assign(
Microsoft.AspNetCore.Components.Forms (3)
FieldIdentifier.cs (1)
144
case
BinaryExpression
binaryExpression when binaryExpression.NodeType == ExpressionType.ArrayIndex:
src\Components\Shared\src\ExpressionFormatting\ExpressionFormatter.cs (2)
81
var
binaryExpression = (
BinaryExpression
)node;
Microsoft.AspNetCore.Components.Web (2)
src\Components\Shared\src\ExpressionFormatting\ExpressionFormatter.cs (2)
81
var
binaryExpression = (
BinaryExpression
)node;
Microsoft.AspNetCore.Http.Extensions (12)
RequestDelegateFactory.cs (5)
107
private static readonly
BinaryExpression
TempSourceStringNotNullExpr = Expression.NotEqual(TempSourceStringExpr, Expression.Constant(null));
108
private static readonly
BinaryExpression
TempSourceStringNullExpr = Expression.Equal(TempSourceStringExpr, Expression.Constant(null));
1989
var
boundValueExpr = Expression.ArrayIndex(BoundValuesArrayExpr, Expression.Constant(factoryContext.ParameterBinders.Count - 1));
2141
var
initializeReaderExpr = Expression.Assign(
2149
var
setMaxRecursionDepthExpr = Expression.Assign(
src\Components\Endpoints\src\FormMapping\Factories\ComplexType\ComplexTypeExpressionConverterFactoryOfT.cs (5)
171
var
failedAndHasHandler = Expression.And(Expression.Not(succeeded), HasHandler(context));
173
var
clause = model.Type.IsValueType ? failedAndHasHandler :
214
static
BinaryExpression
HasHandler(ParameterExpression context)
355
var
propertyConverter = Expression.Assign(
455
var
constructorParameterConverter = Expression.Assign(
src\Shared\ObjectMethodExecutor\ObjectMethodExecutor.cs (2)
209
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
261
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
Microsoft.AspNetCore.JsonPatch (2)
JsonPatchDocumentOfT.cs (2)
682
var
binaryExpression = (
BinaryExpression
)expr;
Microsoft.AspNetCore.Mvc.Core (2)
src\Shared\ObjectMethodExecutor\ObjectMethodExecutor.cs (2)
209
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
261
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
Microsoft.AspNetCore.Mvc.ViewFeatures (5)
CachedExpressionCompiler.cs (1)
246
var
nullTest = isNullableValueType ?
ExpressionHelper.cs (4)
73
var
binaryExpression = (
BinaryExpression
)part;
158
var
binaryExpression = (
BinaryExpression
)part;
Microsoft.AspNetCore.OpenApi (2)
src\Shared\ObjectMethodExecutor\ObjectMethodExecutor.cs (2)
209
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
261
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
Microsoft.AspNetCore.Shared.Tests (2)
src\Shared\ObjectMethodExecutor\ObjectMethodExecutor.cs (2)
209
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
261
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
Microsoft.AspNetCore.SignalR.Core (2)
src\Shared\ObjectMethodExecutor\ObjectMethodExecutor.cs (2)
209
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
261
var
valueObj = Expression.ArrayIndex(parametersParameter, Expression.Constant(i));
Microsoft.CodeAnalysis.VisualBasic.Emit.UnitTests (1)
ExpressionTrees\Sources\ExprLambdaUtils.vb (1)
161
Protected Overrides Function VisitBinary(node As
BinaryExpression
) As Expression
Microsoft.CSharp (1)
Microsoft\CSharp\RuntimeBinder\Semantics\Types\PredefinedTypes.cs (1)
160
new PredefinedTypeInfo(PredefinedType.PT_BINARYEXPRESSION, typeof(System.Linq.Expressions.
BinaryExpression
), "System.Linq.Expressions.BinaryExpression"),
Microsoft.DotNet.SwaggerGenerator.CodeGenerator (1)
HelperFactory.cs (1)
316
var
element = Expression.ArrayIndex(argumentsParameter, Expression.Constant(index));
Microsoft.Extensions.DependencyInjection (3)
ServiceLookup\Expressions\ExpressionResolverBuilder.cs (3)
21
private static readonly
BinaryExpression
ResolvedServicesVariableAssignment =
27
private static readonly
BinaryExpression
SyncVariableAssignment =
245
BinaryExpression
assignExpression = Expression.Assign(
netstandard (1)
netstandard.cs (1)
986
[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Linq.Expressions.
BinaryExpression
))]
System.ComponentModel.Composition (3)
System\ComponentModel\Composition\ConstraintServices.cs (3)
56
private static
BinaryExpression
CreateContractConstraintBody(string contractName, ParameterExpression parameter)
84
private static
BinaryExpression
CreateCreationPolicyConstraint(CreationPolicy policy, ParameterExpression parameter)
104
private static
BinaryExpression
CreateTypeIdentityConstraint(string requiredTypeIdentity, ParameterExpression parameter)
System.Composition.Hosting (1)
System\Composition\Hosting\Providers\Metadata\MetadataViewProvider.cs (1)
60
var
assign = Expression.Assign(
System.Composition.TypedParts (2)
System\Composition\TypedParts\ActivationFeatures\PropertyInjectionFeature.cs (2)
80
var
assignTyped = Expression.Assign(typed, Expression.Convert(inst, partType.AsType()));
87
var
assignment = Expression.Assign(
System.Core (1)
System.Core.cs (1)
124
[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Linq.Expressions.
BinaryExpression
))]
System.Linq.Expressions (876)
System\Linq\Expressions\BinaryExpression.cs (799)
92
public
BinaryExpression
Update(Expression left, LambdaExpression? conversion, Expression right)
313
internal static
BinaryExpression
Create(ExpressionType nodeType, Expression left, Expression right, Type type, MethodInfo? method, LambdaExpression? conversion)
580
/// Creates a <see cref="
BinaryExpression
"/> that represents an assignment operation.
582
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
583
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
584
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Assign"/>
585
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.
587
public static
BinaryExpression
Assign(Expression left, Expression right)
602
private static
BinaryExpression
? GetUserDefinedBinaryOperator(ExpressionType binaryType, string name, Expression left, Expression right, bool liftToNull)
631
private static
BinaryExpression
GetMethodBasedBinaryOperator(ExpressionType binaryType, Expression left, Expression right, MethodInfo method, bool liftToNull)
662
private static
BinaryExpression
GetMethodBasedAssignOperator(ExpressionType binaryType, Expression left, Expression right, MethodInfo method, LambdaExpression? conversion, bool liftToNull)
664
BinaryExpression
b = GetMethodBasedBinaryOperator(binaryType, left, right, method, liftToNull);
682
private static
BinaryExpression
GetUserDefinedBinaryOperatorOrThrow(ExpressionType binaryType, string name, Expression left, Expression right, bool liftToNull)
684
BinaryExpression
? b = GetUserDefinedBinaryOperator(binaryType, name, left, right, liftToNull);
695
private static
BinaryExpression
GetUserDefinedAssignOperatorOrThrow(ExpressionType binaryType, string name, Expression left, Expression right, LambdaExpression? conversion, bool liftToNull)
697
BinaryExpression
b = GetUserDefinedBinaryOperatorOrThrow(binaryType, name, left, right, liftToNull);
864
/// Creates a <see cref="
BinaryExpression
" />, given the left and right operands, by calling an appropriate factory method.
870
public static
BinaryExpression
MakeBinary(ExpressionType binaryType, Expression left, Expression right)
876
/// Creates a <see cref="
BinaryExpression
" />, given the left and right operands, by calling an appropriate factory method.
884
public static
BinaryExpression
MakeBinary(ExpressionType binaryType, Expression left, Expression right, bool liftToNull, MethodInfo? method)
891
/// Creates a <see cref="
BinaryExpression
" />, given the left and right operands, by calling an appropriate factory method.
900
public static
BinaryExpression
MakeBinary(ExpressionType binaryType, Expression left, Expression right, bool liftToNull, MethodInfo? method, LambdaExpression? conversion) =>
948
/// Creates a <see cref="
BinaryExpression
"/> that represents an equality comparison.
950
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
951
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
952
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Equal"/>
953
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
954
public static
BinaryExpression
Equal(Expression left, Expression right)
960
/// Creates a <see cref="
BinaryExpression
"/> that represents an equality comparison.
962
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
963
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
964
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
966
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Equal"/>
967
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.IsLiftedToNull"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
969
public static
BinaryExpression
Equal(Expression left, Expression right, bool liftToNull, MethodInfo? method)
981
/// Creates a <see cref="
BinaryExpression
"/> that represents a reference equality comparison.
983
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
984
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
985
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Equal"/>
986
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.
988
public static
BinaryExpression
ReferenceEqual(Expression left, Expression right)
1000
/// Creates a <see cref="
BinaryExpression
"/> that represents an inequality comparison.
1002
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1003
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1004
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.NotEqual"/>
1005
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1006
public static
BinaryExpression
NotEqual(Expression left, Expression right)
1012
/// Creates a <see cref="
BinaryExpression
"/> that represents an inequality comparison.
1014
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1015
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1017
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1018
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.NotEqual"/>
1019
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.IsLiftedToNull"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1021
public static
BinaryExpression
NotEqual(Expression left, Expression right, bool liftToNull, MethodInfo? method)
1033
/// Creates a <see cref="
BinaryExpression
"/> that represents a reference inequality comparison.
1035
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1036
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1037
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.NotEqual"/>
1038
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.
1040
public static
BinaryExpression
ReferenceNotEqual(Expression left, Expression right)
1051
private static
BinaryExpression
GetEqualityComparisonOperator(ExpressionType binaryType, string opName, Expression left, Expression right, bool liftToNull)
1069
BinaryExpression
? b = GetUserDefinedBinaryOperator(binaryType, opName, left, right, liftToNull);
1093
/// Creates a <see cref="
BinaryExpression
"/> that represents a "greater than" numeric comparison.
1095
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1096
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1097
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.GreaterThan"/>
1098
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1099
public static
BinaryExpression
GreaterThan(Expression left, Expression right)
1105
/// Creates a <see cref="
BinaryExpression
"/> that represents a "greater than" numeric comparison.
1107
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1108
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1109
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1111
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.GreaterThan"/>
1112
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.IsLiftedToNull"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1114
public static
BinaryExpression
GreaterThan(Expression left, Expression right, bool liftToNull, MethodInfo? method)
1126
/// Creates a <see cref="
BinaryExpression
"/> that represents a "less than" numeric comparison.
1128
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1129
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1130
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LessThan"/>
1131
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1133
public static
BinaryExpression
LessThan(Expression left, Expression right)
1139
/// Creates a <see cref="
BinaryExpression
"/> that represents a "less than" numeric comparison.
1141
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1142
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1143
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1145
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LessThan"/>
1146
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.IsLiftedToNull"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1148
public static
BinaryExpression
LessThan(Expression left, Expression right, bool liftToNull, MethodInfo? method)
1160
/// Creates a <see cref="
BinaryExpression
"/> that represents a "greater than or equal" numeric comparison.
1162
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1163
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1164
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.GreaterThanOrEqual"/>
1165
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1166
public static
BinaryExpression
GreaterThanOrEqual(Expression left, Expression right)
1172
/// Creates a <see cref="
BinaryExpression
"/> that represents a "greater than or equal" numeric comparison.
1174
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1175
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1176
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1178
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.GreaterThanOrEqual"/>
1179
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.IsLiftedToNull"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1181
public static
BinaryExpression
GreaterThanOrEqual(Expression left, Expression right, bool liftToNull, MethodInfo? method)
1193
/// Creates a <see cref="
BinaryExpression
"/> that represents a "less than or equal" numeric comparison.
1195
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1196
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1197
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LessThanOrEqual"/>
1198
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1199
public static
BinaryExpression
LessThanOrEqual(Expression left, Expression right)
1205
/// Creates a <see cref="
BinaryExpression
"/> that represents a "less than or equal" numeric comparison.
1207
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1208
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1209
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1211
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LessThanOrEqual"/>
1212
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.IsLiftedToNull"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1214
public static
BinaryExpression
LessThanOrEqual(Expression left, Expression right, bool liftToNull, MethodInfo? method)
1225
private static
BinaryExpression
GetComparisonOperator(ExpressionType binaryType, string opName, Expression left, Expression right, bool liftToNull)
1246
/// Creates a <see cref="
BinaryExpression
"/> that represents a conditional AND operation that evaluates the second operand only if it has to.
1248
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1249
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1250
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AndAlso"/>
1251
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1252
public static
BinaryExpression
AndAlso(Expression left, Expression right)
1258
/// Creates a <see cref="
BinaryExpression
"/> that represents a conditional AND operation that evaluates the second operand only if it has to.
1260
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1261
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1262
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1263
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AndAlso"/>
1264
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1266
public static
BinaryExpression
AndAlso(Expression left, Expression right, MethodInfo? method)
1299
/// Creates a <see cref="
BinaryExpression
"/> that represents a conditional OR operation that evaluates the second operand only if it has to.
1301
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1302
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1303
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.OrElse"/>
1304
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1305
public static
BinaryExpression
OrElse(Expression left, Expression right)
1311
/// Creates a <see cref="
BinaryExpression
"/> that represents a conditional OR operation that evaluates the second operand only if it has to.
1313
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1314
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1315
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1316
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.OrElse"/>
1317
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1319
public static
BinaryExpression
OrElse(Expression left, Expression right, MethodInfo? method)
1356
/// Creates a <see cref="
BinaryExpression
" /> that represents a coalescing operation.
1358
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1359
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1360
/// <returns>A <see cref="
BinaryExpression
" /> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Coalesce"/>
1361
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1362
public static
BinaryExpression
Coalesce(Expression left, Expression right)
1368
/// Creates a <see cref="
BinaryExpression
" /> that represents a coalescing operation.
1370
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1371
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1373
/// <returns>A <see cref="
BinaryExpression
" /> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Coalesce"/>
1374
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/> and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
1376
public static
BinaryExpression
Coalesce(Expression left, Expression right, LambdaExpression? conversion)
1453
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic addition operation that does not have overflow checking.
1455
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1456
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1457
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Add"/>
1458
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1459
public static
BinaryExpression
Add(Expression left, Expression right)
1465
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic addition operation that does not have overflow checking.
1467
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1468
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1469
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1470
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Add"/>
1471
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1473
public static
BinaryExpression
Add(Expression left, Expression right, MethodInfo? method)
1489
/// Creates a <see cref="
BinaryExpression
"/> that represents an addition assignment operation that does not have overflow checking.
1491
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1492
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1493
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AddAssign"/>
1494
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1495
public static
BinaryExpression
AddAssign(Expression left, Expression right)
1501
/// Creates a <see cref="
BinaryExpression
"/> that represents an addition assignment operation that does not have overflow checking.
1503
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1504
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1505
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1506
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AddAssign"/>
1507
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1509
public static
BinaryExpression
AddAssign(Expression left, Expression right, MethodInfo? method)
1515
/// Creates a <see cref="
BinaryExpression
"/> that represents an addition assignment operation that does not have overflow checking.
1517
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1518
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1519
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1520
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
1521
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AddAssign"/>
1522
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
1523
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
1525
public static
BinaryExpression
AddAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
1570
/// Creates a <see cref="
BinaryExpression
"/> that represents an addition assignment operation that has overflow checking.
1572
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1573
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1574
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to
1575
/// <see cref="ExpressionType.AddAssignChecked"/> and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/>
1578
public static
BinaryExpression
AddAssignChecked(Expression left, Expression right)
1584
/// Creates a <see cref="
BinaryExpression
"/> that represents an addition assignment operation that has overflow checking.
1586
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1587
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1588
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1589
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AddAssignChecked"/>
1590
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1592
public static
BinaryExpression
AddAssignChecked(Expression left, Expression right, MethodInfo? method)
1598
/// Creates a <see cref="
BinaryExpression
"/> that represents an addition assignment operation that has overflow checking.
1600
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1601
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1602
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1603
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
1604
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AddAssignChecked"/>
1605
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
1606
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
1608
public static
BinaryExpression
AddAssignChecked(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
1631
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic addition operation that has overflow checking.
1633
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1634
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1635
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AddChecked"/>
1636
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1637
public static
BinaryExpression
AddChecked(Expression left, Expression right)
1643
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic addition operation that has overflow checking.
1645
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1646
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1647
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1648
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AddChecked"/>
1649
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1651
public static
BinaryExpression
AddChecked(Expression left, Expression right, MethodInfo? method)
1667
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic subtraction operation that does not have overflow checking.
1669
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1670
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1671
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Subtract"/>
1672
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1673
public static
BinaryExpression
Subtract(Expression left, Expression right)
1679
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic subtraction operation that does not have overflow checking.
1681
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1682
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1683
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1684
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Subtract"/>
1685
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1687
public static
BinaryExpression
Subtract(Expression left, Expression right, MethodInfo? method)
1703
/// Creates a <see cref="
BinaryExpression
"/> that represents a subtraction assignment operation that does not have overflow checking.
1705
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1706
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1707
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractAssign"/>
1708
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1709
public static
BinaryExpression
SubtractAssign(Expression left, Expression right)
1715
/// Creates a <see cref="
BinaryExpression
"/> that represents a subtraction assignment operation that does not have overflow checking.
1717
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1718
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1719
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1720
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractAssign"/>
1721
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1723
public static
BinaryExpression
SubtractAssign(Expression left, Expression right, MethodInfo? method)
1729
/// Creates a <see cref="
BinaryExpression
"/> that represents a subtraction assignment operation that does not have overflow checking.
1731
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1732
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1733
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1734
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
1735
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractAssign"/>
1736
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
1737
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
1739
public static
BinaryExpression
SubtractAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
1761
/// Creates a <see cref="
BinaryExpression
"/> that represents a subtraction assignment operation that has overflow checking.
1763
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1764
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1765
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractAssignChecked"/>
1766
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1767
public static
BinaryExpression
SubtractAssignChecked(Expression left, Expression right)
1773
/// Creates a <see cref="
BinaryExpression
"/> that represents a subtraction assignment operation that has overflow checking.
1775
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1776
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1777
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1778
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractAssignChecked"/>
1779
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1781
public static
BinaryExpression
SubtractAssignChecked(Expression left, Expression right, MethodInfo? method)
1787
/// Creates a <see cref="
BinaryExpression
"/> that represents a subtraction assignment operation that has overflow checking.
1789
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1790
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1791
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1792
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
1793
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractAssignChecked"/>
1794
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
1795
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
1797
public static
BinaryExpression
SubtractAssignChecked(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
1819
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic subtraction operation that has overflow checking.
1821
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1822
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1823
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractChecked"/>
1824
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1825
public static
BinaryExpression
SubtractChecked(Expression left, Expression right)
1831
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic subtraction operation that has overflow checking.
1833
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1834
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1835
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1836
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.SubtractChecked"/>
1837
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1839
public static
BinaryExpression
SubtractChecked(Expression left, Expression right, MethodInfo? method)
1855
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic division operation.
1857
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1858
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1859
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Divide"/>
1860
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1861
public static
BinaryExpression
Divide(Expression left, Expression right)
1867
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic division operation.
1869
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1870
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1871
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1872
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Divide"/>
1873
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1875
public static
BinaryExpression
Divide(Expression left, Expression right, MethodInfo? method)
1891
/// Creates a <see cref="
BinaryExpression
"/> that represents a division assignment operation that does not have overflow checking.
1893
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1894
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1895
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.DivideAssign"/>
1896
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1897
public static
BinaryExpression
DivideAssign(Expression left, Expression right)
1903
/// Creates a <see cref="
BinaryExpression
"/> that represents a division assignment operation that does not have overflow checking.
1905
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1906
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1907
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1908
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.DivideAssign"/>
1909
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1911
public static
BinaryExpression
DivideAssign(Expression left, Expression right, MethodInfo? method)
1917
/// Creates a <see cref="
BinaryExpression
"/> that represents a division assignment operation that does not have overflow checking.
1919
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1920
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1921
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1922
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
1923
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.DivideAssign"/>
1924
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
1925
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
1927
public static
BinaryExpression
DivideAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
1949
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic remainder operation.
1951
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1952
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1953
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Modulo"/>
1954
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1955
public static
BinaryExpression
Modulo(Expression left, Expression right)
1961
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic remainder operation.
1963
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1964
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1965
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
1966
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Modulo"/>
1967
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
1969
public static
BinaryExpression
Modulo(Expression left, Expression right, MethodInfo? method)
1985
/// Creates a <see cref="
BinaryExpression
"/> that represents a remainder assignment operation.
1987
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
1988
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
1989
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ModuloAssign"/>
1990
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
1991
public static
BinaryExpression
ModuloAssign(Expression left, Expression right)
1997
/// Creates a <see cref="
BinaryExpression
"/> that represents a remainder assignment operation.
1999
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2000
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2001
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2002
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ModuloAssign"/>
2003
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2005
public static
BinaryExpression
ModuloAssign(Expression left, Expression right, MethodInfo? method)
2011
/// Creates a <see cref="
BinaryExpression
"/> that represents a remainder assignment operation.
2013
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2014
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2015
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2016
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2017
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ModuloAssign"/>
2018
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2019
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2021
public static
BinaryExpression
ModuloAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2043
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic multiplication operation that does not have overflow checking.
2045
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2046
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2047
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Multiply"/>
2048
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2049
public static
BinaryExpression
Multiply(Expression left, Expression right)
2055
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic multiplication operation that does not have overflow checking.
2057
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2058
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2059
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2060
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Multiply"/>
2061
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2063
public static
BinaryExpression
Multiply(Expression left, Expression right, MethodInfo? method)
2079
/// Creates a <see cref="
BinaryExpression
"/> that represents a multiplication assignment operation that does not have overflow checking.
2081
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2082
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2083
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyAssign"/>
2084
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2085
public static
BinaryExpression
MultiplyAssign(Expression left, Expression right)
2091
/// Creates a <see cref="
BinaryExpression
"/> that represents a multiplication assignment operation that does not have overflow checking.
2093
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2094
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2095
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2096
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyAssign"/>
2097
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2099
public static
BinaryExpression
MultiplyAssign(Expression left, Expression right, MethodInfo? method)
2105
/// Creates a <see cref="
BinaryExpression
"/> that represents a multiplication assignment operation that does not have overflow checking.
2107
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2108
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2109
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2110
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2111
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyAssign"/>
2112
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2113
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2115
public static
BinaryExpression
MultiplyAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2137
/// Creates a <see cref="
BinaryExpression
"/> that represents a multiplication assignment operation that has overflow checking.
2139
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2140
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2141
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyAssignChecked"/>
2142
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2143
public static
BinaryExpression
MultiplyAssignChecked(Expression left, Expression right)
2149
/// Creates a <see cref="
BinaryExpression
"/> that represents a multiplication assignment operation that has overflow checking.
2151
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2152
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2153
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2154
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyAssignChecked"/>
2155
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2157
public static
BinaryExpression
MultiplyAssignChecked(Expression left, Expression right, MethodInfo? method)
2163
/// Creates a <see cref="
BinaryExpression
"/> that represents a multiplication assignment operation that has overflow checking.
2165
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2166
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2167
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2168
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2169
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyAssignChecked"/>
2170
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2171
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2173
public static
BinaryExpression
MultiplyAssignChecked(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2195
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic multiplication operation that has overflow checking.
2197
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2198
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2199
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyChecked"/>
2200
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2201
public static
BinaryExpression
MultiplyChecked(Expression left, Expression right)
2207
/// Creates a <see cref="
BinaryExpression
"/> that represents an arithmetic multiplication operation that has overflow checking.
2209
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2210
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2211
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2212
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.MultiplyChecked"/>
2213
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2215
public static
BinaryExpression
MultiplyChecked(Expression left, Expression right, MethodInfo? method)
2247
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise left-shift operation.
2249
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2250
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2251
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LeftShift"/>
2252
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2253
public static
BinaryExpression
LeftShift(Expression left, Expression right)
2259
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise left-shift operation.
2261
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2262
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2263
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2264
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LeftShift"/>
2265
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2267
public static
BinaryExpression
LeftShift(Expression left, Expression right, MethodInfo? method)
2284
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise left-shift assignment operation.
2286
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2287
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2288
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LeftShiftAssign"/>
2289
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2290
public static
BinaryExpression
LeftShiftAssign(Expression left, Expression right)
2296
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise left-shift assignment operation.
2298
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2299
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2300
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2301
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LeftShiftAssign"/>
2302
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2304
public static
BinaryExpression
LeftShiftAssign(Expression left, Expression right, MethodInfo? method)
2310
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise left-shift assignment operation.
2312
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2313
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2314
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2315
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2316
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.LeftShiftAssign"/>
2317
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2318
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2320
public static
BinaryExpression
LeftShiftAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2343
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise right-shift operation.
2345
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2346
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2347
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.RightShift"/>
2348
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2349
public static
BinaryExpression
RightShift(Expression left, Expression right)
2355
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise right-shift operation.
2357
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2358
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2359
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2360
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.RightShift"/>
2361
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2363
public static
BinaryExpression
RightShift(Expression left, Expression right, MethodInfo? method)
2380
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise right-shift assignment operation.
2382
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2383
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2384
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.RightShiftAssign"/>
2385
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2386
public static
BinaryExpression
RightShiftAssign(Expression left, Expression right)
2392
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise right-shift assignment operation.
2394
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2395
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2396
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2397
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.RightShiftAssign"/>
2398
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2400
public static
BinaryExpression
RightShiftAssign(Expression left, Expression right, MethodInfo? method)
2406
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise right-shift assignment operation.
2408
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2409
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2410
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2411
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2412
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.RightShiftAssign"/>
2413
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2414
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2416
public static
BinaryExpression
RightShiftAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2439
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise AND operation.
2441
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2442
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2443
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.And"/>
2444
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2445
public static
BinaryExpression
And(Expression left, Expression right)
2451
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise AND operation.
2453
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2454
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2455
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2456
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.And"/>
2457
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2459
public static
BinaryExpression
And(Expression left, Expression right, MethodInfo? method)
2475
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise AND assignment operation.
2477
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2478
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2479
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AndAssign"/>
2480
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2481
public static
BinaryExpression
AndAssign(Expression left, Expression right)
2487
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise AND assignment operation.
2489
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2490
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2491
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2492
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AndAssign"/>
2493
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2495
public static
BinaryExpression
AndAssign(Expression left, Expression right, MethodInfo? method)
2501
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise AND assignment operation.
2503
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2504
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2505
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2506
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2507
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.AndAssign"/>
2508
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2509
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2511
public static
BinaryExpression
AndAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2533
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise OR operation.
2535
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2536
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2537
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Or"/>
2538
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2539
public static
BinaryExpression
Or(Expression left, Expression right)
2545
/// Creates a <see cref="
BinaryExpression
"/> that represents an bitwise OR operation.
2547
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2548
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2549
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2550
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Or"/>
2551
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2553
public static
BinaryExpression
Or(Expression left, Expression right, MethodInfo? method)
2569
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise OR assignment operation.
2571
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2572
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2573
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.OrAssign"/>
2574
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2575
public static
BinaryExpression
OrAssign(Expression left, Expression right)
2581
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise OR assignment operation.
2583
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2584
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2585
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2586
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.OrAssign"/>
2587
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2589
public static
BinaryExpression
OrAssign(Expression left, Expression right, MethodInfo? method)
2595
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise OR assignment operation.
2597
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2598
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2599
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2600
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2601
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.OrAssign"/>
2602
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2603
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2605
public static
BinaryExpression
OrAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2627
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise or logical XOR operation, using op_ExclusiveOr for user-defined types.
2629
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2630
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2631
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ExclusiveOr"/>
2632
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2633
public static
BinaryExpression
ExclusiveOr(Expression left, Expression right)
2639
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise or logical XOR operation, using op_ExclusiveOr for user-defined types.
2641
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2642
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2643
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2644
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ExclusiveOr"/>
2645
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2647
public static
BinaryExpression
ExclusiveOr(Expression left, Expression right, MethodInfo? method)
2663
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise or logical XOR assignment operation, using op_ExclusiveOr for user-defined types.
2665
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2666
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2667
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ExclusiveOrAssign"/>
2668
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2669
public static
BinaryExpression
ExclusiveOrAssign(Expression left, Expression right)
2675
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise or logical XOR assignment operation, using op_ExclusiveOr for user-defined types.
2677
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2678
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2679
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2680
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ExclusiveOrAssign"/>
2681
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2683
public static
BinaryExpression
ExclusiveOrAssign(Expression left, Expression right, MethodInfo? method)
2689
/// Creates a <see cref="
BinaryExpression
"/> that represents a bitwise or logical XOR assignment operation, using op_ExclusiveOr for user-defined types.
2691
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2692
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2693
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2694
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2695
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ExclusiveOrAssign"/>
2696
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2697
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2699
public static
BinaryExpression
ExclusiveOrAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2721
/// Creates a <see cref="
BinaryExpression
"/> that represents raising a number to a power.
2723
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2724
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2725
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Power"/>
2726
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2727
public static
BinaryExpression
Power(Expression left, Expression right)
2733
/// Creates a <see cref="
BinaryExpression
"/> that represents raising a number to a power.
2735
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2736
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2737
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2738
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.Power"/>
2739
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2741
public static
BinaryExpression
Power(Expression left, Expression right, MethodInfo? method)
2757
BinaryExpression
? b = GetUserDefinedBinaryOperator(ExpressionType.Power, name, left, right, liftToNull: true);
2779
/// Creates a <see cref="
BinaryExpression
"/> that represents raising an expression to a power and assigning the result back to the expression.
2781
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2782
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2783
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.PowerAssign"/>
2784
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2785
public static
BinaryExpression
PowerAssign(Expression left, Expression right)
2791
/// Creates a <see cref="
BinaryExpression
"/> that represents raising an expression to a power and assigning the result back to the expression.
2793
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2794
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2795
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2796
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.PowerAssign"/>
2797
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, and <see cref="
BinaryExpression
.Method"/> properties set to the specified values.
2799
public static
BinaryExpression
PowerAssign(Expression left, Expression right, MethodInfo? method)
2805
/// Creates a <see cref="
BinaryExpression
"/> that represents raising an expression to a power and assigning the result back to the expression.
2807
/// <param name="left">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2808
/// <param name="right">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2809
/// <param name="method">A <see cref="MethodInfo"/> to set the <see cref="
BinaryExpression
.Method"/> property equal to.</param>
2810
/// <param name="conversion">A <see cref="LambdaExpression"/> to set the <see cref="
BinaryExpression
.Conversion"/> property equal to.</param>
2811
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.PowerAssign"/>
2812
/// and the <see cref="
BinaryExpression
.Left"/>, <see cref="
BinaryExpression
.Right"/>, <see cref="
BinaryExpression
.Method"/>,
2813
/// and <see cref="
BinaryExpression
.Conversion"/> properties set to the specified values.
2815
public static
BinaryExpression
PowerAssign(Expression left, Expression right, MethodInfo? method, LambdaExpression? conversion)
2836
/// Creates a <see cref="
BinaryExpression
"/> that represents applying an array index operator to an array of rank one.
2838
/// <param name="array">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Left"/> property equal to.</param>
2839
/// <param name="index">An <see cref="Expression"/> to set the <see cref="
BinaryExpression
.Right"/> property equal to.</param>
2840
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ArrayIndex"/>
2841
/// and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
2842
public static
BinaryExpression
ArrayIndex(Expression array, Expression index)
System\Linq\Expressions\Compiler\LambdaCompiler.Address.cs (2)
35
AddressOf((
BinaryExpression
)node, type);
66
private void AddressOf(
BinaryExpression
node, Type type)
System\Linq\Expressions\Compiler\LambdaCompiler.Binary.cs (3)
22
BinaryExpression
b = (
BinaryExpression
)expr;
93
private void EmitBinaryMethod(
BinaryExpression
b, CompilationFlags flags)
System\Linq\Expressions\Compiler\LambdaCompiler.Logical.cs (21)
88
BinaryExpression
b = (
BinaryExpression
)expr;
110
private void EmitNullableCoalesce(
BinaryExpression
b)
175
private void EmitLambdaReferenceCoalesce(
BinaryExpression
b)
205
private void EmitReferenceCoalesceWithoutConversion(
BinaryExpression
b)
236
private void EmitLiftedAndAlso(
BinaryExpression
b)
276
private void EmitMethodAndAlso(
BinaryExpression
b, CompilationFlags flags)
298
private void EmitUnliftedAndAlso(
BinaryExpression
b)
312
BinaryExpression
b = (
BinaryExpression
)expr;
339
private void EmitLiftedOrElse(
BinaryExpression
b)
370
private void EmitUnliftedOrElse(
BinaryExpression
b)
382
private void EmitMethodOrElse(
BinaryExpression
b, CompilationFlags flags)
406
BinaryExpression
b = (
BinaryExpression
)expr;
468
EmitBranchLogical(branchValue, (
BinaryExpression
)node, label);
477
EmitBranchComparison(branchValue, (
BinaryExpression
)node, label);
506
private void EmitBranchComparison(bool branch,
BinaryExpression
node, Label label)
581
private void EmitBranchLogical(bool branch,
BinaryExpression
node, Label label)
621
private void EmitBranchAnd(bool branch,
BinaryExpression
node, Label label)
635
private void EmitBranchOr(bool branch,
BinaryExpression
node, Label label)
System\Linq\Expressions\Compiler\StackSpiller.cs (12)
181
private Result RewriteIndexAssignment(
BinaryExpression
node, Stack stack)
214
var
node = (
BinaryExpression
)expr;
231
expr =
BinaryExpression
.Create(
254
var
node = (
BinaryExpression
)expr;
270
BinaryExpression
.Create(
280
private Result RewriteVariableAssignment(
BinaryExpression
node, Stack stack)
295
var
node = (
BinaryExpression
)expr;
307
private Result RewriteExtensionAssignment(
BinaryExpression
node, Stack stack)
351
private Result RewriteMemberAssignment(
BinaryExpression
node, Stack stack)
System\Linq\Expressions\DebugViewWriter.cs (7)
292
protected internal override Expression VisitBinary(
BinaryExpression
node)
415
var
binary = node as
BinaryExpression
;
418
return !(binary.Left is
BinaryExpression
|| binary.Right is
BinaryExpression
);
610
BinaryExpression
? binary = parent as
BinaryExpression
;
System\Linq\Expressions\Expression.DebuggerProxy.cs (2)
14
private readonly
BinaryExpression
_node;
16
public BinaryExpressionProxy(
BinaryExpression
node)
System\Linq\Expressions\ExpressionStringBuilder.cs (1)
142
protected internal override Expression VisitBinary(
BinaryExpression
node)
System\Linq\Expressions\ExpressionVisitor.cs (5)
187
/// Visits the children of the <see cref="
BinaryExpression
"/>.
192
protected internal virtual Expression VisitBinary(
BinaryExpression
node)
657
private static
BinaryExpression
ValidateBinary(
BinaryExpression
before,
BinaryExpression
after)
System\Linq\Expressions\Interpreter\LightCompiler.cs (19)
605
private void CompileIndexAssignment(
BinaryExpression
node, bool asVoid)
650
private void CompileMemberAssignment(
BinaryExpression
node, bool asVoid)
721
private void CompileVariableAssignment(
BinaryExpression
node, bool asVoid)
731
var
node = (
BinaryExpression
)expr;
755
var
node = (
BinaryExpression
)expr;
943
CompileComparison((
BinaryExpression
)node);
996
private void CompileComparison(
BinaryExpression
node)
1325
CompileLogicalBinaryExpression((
BinaryExpression
)expr, andAlso: true);
1330
CompileLogicalBinaryExpression((
BinaryExpression
)expr, andAlso: false);
1333
private void CompileLogicalBinaryExpression(
BinaryExpression
b, bool andAlso)
1353
private void CompileMethodLogicalBinaryExpression(
BinaryExpression
expr, bool andAlso)
1372
private void CompileLiftedLogicalBinaryExpression(
BinaryExpression
node, bool andAlso)
1452
private void CompileUnliftedLogicalBinaryExpression(
BinaryExpression
expr, bool andAlso)
2260
var
array = (
BinaryExpression
)node;
2593
var
node = (
BinaryExpression
)expr;
System\Linq\Expressions\MethodCallExpression.cs (3)
1393
/// <returns>A <see cref="
BinaryExpression
"/> that has the <see cref="NodeType"/> property equal to <see cref="ExpressionType.ArrayIndex"/> and the <see cref="
BinaryExpression
.Left"/> and <see cref="
BinaryExpression
.Right"/> properties set to the specified values.</returns>
System\Linq\Expressions\SwitchExpression.cs (1)
271
BinaryExpression
equal = Equal(switchValue, firstTestValue, false, comparison);
System\Linq\Expressions\UnaryExpression.cs (1)
187
BinaryExpression
initTemp1 = Assign(temp1, member.Expression);
System.Private.Xml (1)
System\Xml\Serialization\ReflectionXmlSerializationReader.cs (1)
2078
var
assignExpr = Expression.Assign(fieldExpr, valueParam);