666 references to UnaryOperatorKind
Microsoft.CodeAnalysis.CSharp (664)
Binder\Binder_Operators.cs (65)
1559UnaryOperatorKind kind, 1599if (kind == UnaryOperatorKind.UnaryMinus && 2417UnaryOperatorKind kind = SyntaxKindToUnaryOperatorKind(node.Kind()); 2446kind.WithType(UnaryOperatorKind.Dynamic).WithOverflowChecksIfApplicable(CheckOverflowAtRuntime), 2534BoundIncrementOperator? tryApplyUserDefinedInstanceOperator(ExpressionSyntax node, SyntaxToken operatorToken, UnaryOperatorKind kind, BoundExpression operand, BindingDiagnosticBag diagnostics) 2540if (kind is not (UnaryOperatorKind.PrefixIncrement or UnaryOperatorKind.PrefixDecrement or UnaryOperatorKind.PostfixIncrement or UnaryOperatorKind.PostfixDecrement) || 2549if ((kind is (UnaryOperatorKind.PostfixIncrement or UnaryOperatorKind.PostfixDecrement) && resultIsUsed) || 2561(kind is UnaryOperatorKind.PrefixIncrement or UnaryOperatorKind.PostfixIncrement ? 2565ordinaryName: kind is UnaryOperatorKind.PrefixIncrement or UnaryOperatorKind.PostfixIncrement ? 2607(kind | UnaryOperatorKind.UserDefined).WithOverflowChecksIfApplicable(checkOverflowAtRuntime), 2632(kind | UnaryOperatorKind.UserDefined).WithOverflowChecksIfApplicable(checkOverflowAtRuntime), 3120UnaryOperatorKind kind = SyntaxKindToUnaryOperatorKind(node.Kind()); 3153operatorKind: kind.WithType(UnaryOperatorKind.Dynamic).WithOverflowChecksIfApplicable(CheckOverflowAtRuntime), 3185UnaryOperatorKind resultOperatorKind = signature.Kind; 3204UnaryOperatorKind kind, 3221UnaryOperatorKind newKind = kind.Operator().WithType(upconvertSpecialType); 3229var binder = kind.Operator() == UnaryOperatorKind.BitwiseComplement ? 3239UnaryOperatorKind kind, 3314private static object? FoldNeverOverflowUnaryOperator(UnaryOperatorKind kind, ConstantValue value) 3319case UnaryOperatorKind.DecimalUnaryMinus: 3321case UnaryOperatorKind.DoubleUnaryMinus: 3322case UnaryOperatorKind.FloatUnaryMinus: 3324case UnaryOperatorKind.DecimalUnaryPlus: 3326case UnaryOperatorKind.FloatUnaryPlus: 3327case UnaryOperatorKind.DoubleUnaryPlus: 3329case UnaryOperatorKind.LongUnaryPlus: 3331case UnaryOperatorKind.ULongUnaryPlus: 3333case UnaryOperatorKind.IntUnaryPlus: 3334case UnaryOperatorKind.NIntUnaryPlus: 3336case UnaryOperatorKind.UIntUnaryPlus: 3337case UnaryOperatorKind.NUIntUnaryPlus: 3339case UnaryOperatorKind.BoolLogicalNegation: 3341case UnaryOperatorKind.IntBitwiseComplement: 3343case UnaryOperatorKind.LongBitwiseComplement: 3345case UnaryOperatorKind.UIntBitwiseComplement: 3347case UnaryOperatorKind.ULongBitwiseComplement: 3354private static object? FoldUncheckedIntegralUnaryOperator(UnaryOperatorKind kind, ConstantValue value) 3360case UnaryOperatorKind.LongUnaryMinus: 3362case UnaryOperatorKind.IntUnaryMinus: 3370private static object? FoldCheckedIntegralUnaryOperator(UnaryOperatorKind kind, ConstantValue value) 3376case UnaryOperatorKind.LongUnaryMinus: 3378case UnaryOperatorKind.IntUnaryMinus: 3386private static object? FoldNativeIntegerOverflowingUnaryOperator(UnaryOperatorKind kind, ConstantValue value) 3392case UnaryOperatorKind.NIntUnaryMinus: 3394case UnaryOperatorKind.NIntBitwiseComplement: 3395case UnaryOperatorKind.NUIntBitwiseComplement: 3403public static UnaryOperatorKind SyntaxKindToUnaryOperatorKind(SyntaxKind kind) 3407case SyntaxKind.PreIncrementExpression: return UnaryOperatorKind.PrefixIncrement; 3408case SyntaxKind.PostIncrementExpression: return UnaryOperatorKind.PostfixIncrement; 3409case SyntaxKind.PreDecrementExpression: return UnaryOperatorKind.PrefixDecrement; 3410case SyntaxKind.PostDecrementExpression: return UnaryOperatorKind.PostfixDecrement; 3411case SyntaxKind.UnaryPlusExpression: return UnaryOperatorKind.UnaryPlus; 3412case SyntaxKind.UnaryMinusExpression: return UnaryOperatorKind.UnaryMinus; 3413case SyntaxKind.LogicalNotExpression: return UnaryOperatorKind.LogicalNegation; 3414case SyntaxKind.BitwiseNotExpression: return UnaryOperatorKind.BitwiseComplement; 4845private void CheckNativeIntegerFeatureAvailability(UnaryOperatorKind operatorKind, SyntaxNode syntax, BindingDiagnosticBag diagnostics) 4852switch (operatorKind & UnaryOperatorKind.TypeMask) 4854case UnaryOperatorKind.NInt: 4855case UnaryOperatorKind.NUInt:
Binder\Binder_Statements.cs (2)
2673UnaryOperatorKind.DynamicTrue, 2722var best = this.UnaryOperatorOverloadResolution(UnaryOperatorKind.True, expr, node, diagnostics, out LookupResultKind resultKind, out ImmutableArray<MethodSymbol> originalUserDefinedOperators);
Binder\Binder_TupleOperators.cs (3)
145UnaryOperatorKind boolOpKind; 149boolOpKind = UnaryOperatorKind.False; 152boolOpKind = UnaryOperatorKind.True;
Binder\Semantics\Operators\OperatorFacts.cs (13)
231public static string UnaryOperatorNameFromOperatorKind(UnaryOperatorKind kind, bool isChecked) 233switch (kind & UnaryOperatorKind.OpMask) 235case UnaryOperatorKind.UnaryPlus: return WellKnownMemberNames.UnaryPlusOperatorName; 236case UnaryOperatorKind.UnaryMinus: return isChecked ? WellKnownMemberNames.CheckedUnaryNegationOperatorName : WellKnownMemberNames.UnaryNegationOperatorName; 237case UnaryOperatorKind.BitwiseComplement: return WellKnownMemberNames.OnesComplementOperatorName; 238case UnaryOperatorKind.LogicalNegation: return WellKnownMemberNames.LogicalNotOperatorName; 239case UnaryOperatorKind.PostfixIncrement: 240case UnaryOperatorKind.PrefixIncrement: return isChecked ? WellKnownMemberNames.CheckedIncrementOperatorName : WellKnownMemberNames.IncrementOperatorName; 241case UnaryOperatorKind.PostfixDecrement: 242case UnaryOperatorKind.PrefixDecrement: return isChecked ? WellKnownMemberNames.CheckedDecrementOperatorName : WellKnownMemberNames.DecrementOperatorName; 243case UnaryOperatorKind.True: return WellKnownMemberNames.TrueOperatorName; 244case UnaryOperatorKind.False: return WellKnownMemberNames.FalseOperatorName; 246throw ExceptionUtilities.UnexpectedValue(kind & UnaryOperatorKind.OpMask);
Binder\Semantics\Operators\OperatorKind.cs (36)
294TypeMask = UnaryOperatorKind.TypeMask, 296Int = UnaryOperatorKind.Int, 297UInt = UnaryOperatorKind.UInt, 298Long = UnaryOperatorKind.Long, 299ULong = UnaryOperatorKind.ULong, 300NInt = UnaryOperatorKind.NInt, 301NUInt = UnaryOperatorKind.NUInt, 302Char = UnaryOperatorKind.Char, //not used 303Float = UnaryOperatorKind.Float, 304Double = UnaryOperatorKind.Double, 305Decimal = UnaryOperatorKind.Decimal, 306Bool = UnaryOperatorKind.Bool, 307Object = UnaryOperatorKind._Object, 308String = UnaryOperatorKind._String, 309StringAndObject = UnaryOperatorKind._StringAndObject, 310ObjectAndString = UnaryOperatorKind._ObjectAndString, 312Enum = UnaryOperatorKind.Enum, 313EnumAndUnderlying = UnaryOperatorKind._EnumAndUnderlying, 314UnderlyingAndEnum = UnaryOperatorKind._UnderlyingAndEnum, 315Delegate = UnaryOperatorKind._Delegate, 316Pointer = UnaryOperatorKind.Pointer, 317PointerAndInt = UnaryOperatorKind._PointerAndInt, 318PointerAndUInt = UnaryOperatorKind._PointerAndUInt, 319PointerAndLong = UnaryOperatorKind._PointerAndLong, 320PointerAndULong = UnaryOperatorKind._PointerAndULong, 321IntAndPointer = UnaryOperatorKind._IntAndPointer, 322UIntAndPointer = UnaryOperatorKind._UIntAndPointer, 323LongAndPointer = UnaryOperatorKind._LongAndPointer, 324ULongAndPointer = UnaryOperatorKind._ULongAndPointer, 325NullableNull = UnaryOperatorKind._NullableNull, 326UserDefined = UnaryOperatorKind.UserDefined, 327Dynamic = UnaryOperatorKind.Dynamic, 328Utf8 = UnaryOperatorKind._Utf8, 349Lifted = UnaryOperatorKind.Lifted, 350Logical = UnaryOperatorKind._Logical, 351Checked = UnaryOperatorKind.Checked,
Binder\Semantics\Operators\OperatorKindExtensions.cs (78)
19public static int OperatorIndex(this UnaryOperatorKind kind) 24public static UnaryOperatorKind Operator(this UnaryOperatorKind kind) 26return kind & UnaryOperatorKind.OpMask; 29public static UnaryOperatorKind Unlifted(this UnaryOperatorKind kind) 31return kind & ~UnaryOperatorKind.Lifted; 34public static bool IsLifted(this UnaryOperatorKind kind) 36return 0 != (kind & UnaryOperatorKind.Lifted); 39public static bool IsChecked(this UnaryOperatorKind kind) 41return 0 != (kind & UnaryOperatorKind.Checked); 44public static bool IsUserDefined(this UnaryOperatorKind kind) 46return (kind & UnaryOperatorKind.TypeMask) == UnaryOperatorKind.UserDefined; 49public static UnaryOperatorKind OverflowChecks(this UnaryOperatorKind kind) 51return kind & UnaryOperatorKind.Checked; 54public static UnaryOperatorKind WithOverflowChecksIfApplicable(this UnaryOperatorKind kind, bool enabled) 64return kind | UnaryOperatorKind.Checked; 71case UnaryOperatorKind.PrefixIncrement: 72case UnaryOperatorKind.PostfixIncrement: 73case UnaryOperatorKind.PrefixDecrement: 74case UnaryOperatorKind.PostfixDecrement: 75case UnaryOperatorKind.UnaryMinus: 76return kind | UnaryOperatorKind.Checked; 83return kind & ~UnaryOperatorKind.Checked; 87public static UnaryOperatorKind OperandTypes(this UnaryOperatorKind kind) 89return kind & UnaryOperatorKind.TypeMask; 92public static bool IsDynamic(this UnaryOperatorKind kind) 94return kind.OperandTypes() == UnaryOperatorKind.Dynamic; 97public static bool IsIntegral(this UnaryOperatorKind kind) 101case UnaryOperatorKind.SByte: 102case UnaryOperatorKind.Byte: 103case UnaryOperatorKind.Short: 104case UnaryOperatorKind.UShort: 105case UnaryOperatorKind.Int: 106case UnaryOperatorKind.UInt: 107case UnaryOperatorKind.Long: 108case UnaryOperatorKind.ULong: 109case UnaryOperatorKind.NInt: 110case UnaryOperatorKind.NUInt: 111case UnaryOperatorKind.Char: 112case UnaryOperatorKind.Enum: 113case UnaryOperatorKind.Pointer: 120public static UnaryOperatorKind WithType(this UnaryOperatorKind kind, UnaryOperatorKind type) 122Debug.Assert(kind == (kind & ~UnaryOperatorKind.TypeMask)); 123Debug.Assert(type == (type & UnaryOperatorKind.TypeMask)); 165public static UnaryOperatorKind WithType(this UnaryOperatorKind kind, SpecialType type) 167Debug.Assert(kind == (kind & ~UnaryOperatorKind.TypeMask)); 171return kind | UnaryOperatorKind.Int; 173return kind | UnaryOperatorKind.UInt; 175return kind | UnaryOperatorKind.Long; 177return kind | UnaryOperatorKind.ULong; 281public static bool IsEnum(this UnaryOperatorKind kind) 283return kind.OperandTypes() == UnaryOperatorKind.Enum; 380public static ExpressionType ToExpressionType(this UnaryOperatorKind kind) 384case UnaryOperatorKind.PrefixIncrement: 385case UnaryOperatorKind.PostfixIncrement: 388case UnaryOperatorKind.PostfixDecrement: 389case UnaryOperatorKind.PrefixDecrement: 392case UnaryOperatorKind.UnaryPlus: return ExpressionType.UnaryPlus; 393case UnaryOperatorKind.UnaryMinus: return ExpressionType.Negate; 394case UnaryOperatorKind.LogicalNegation: return ExpressionType.Not; 395case UnaryOperatorKind.BitwiseComplement: return ExpressionType.OnesComplement; 396case UnaryOperatorKind.True: return ExpressionType.IsTrue; 397case UnaryOperatorKind.False: return ExpressionType.IsFalse; 417public static string Dump(this UnaryOperatorKind kind) 420if ((kind & UnaryOperatorKind.Lifted) != 0) b.Append("Lifted"); 421if ((kind & UnaryOperatorKind.Checked) != 0) b.Append("Checked"); 422var type = kind & UnaryOperatorKind.TypeMask; 424var op = kind & UnaryOperatorKind.OpMask;
Binder\Semantics\Operators\UnaryOperatorEasyOut.cs (92)
14private const UnaryOperatorKind ERR = UnaryOperatorKind.Error; 16private const UnaryOperatorKind BOL = UnaryOperatorKind.Bool; 17private const UnaryOperatorKind CHR = UnaryOperatorKind.Char; 18private const UnaryOperatorKind I08 = UnaryOperatorKind.SByte; 19private const UnaryOperatorKind U08 = UnaryOperatorKind.Byte; 20private const UnaryOperatorKind I16 = UnaryOperatorKind.Short; 21private const UnaryOperatorKind U16 = UnaryOperatorKind.UShort; 22private const UnaryOperatorKind I32 = UnaryOperatorKind.Int; 23private const UnaryOperatorKind U32 = UnaryOperatorKind.UInt; 24private const UnaryOperatorKind I64 = UnaryOperatorKind.Long; 25private const UnaryOperatorKind U64 = UnaryOperatorKind.ULong; 26private const UnaryOperatorKind NIN = UnaryOperatorKind.NInt; 27private const UnaryOperatorKind NUI = UnaryOperatorKind.NUInt; 28private const UnaryOperatorKind R32 = UnaryOperatorKind.Float; 29private const UnaryOperatorKind R64 = UnaryOperatorKind.Double; 30private const UnaryOperatorKind DEC = UnaryOperatorKind.Decimal; 31private const UnaryOperatorKind LBOL = UnaryOperatorKind.Lifted | UnaryOperatorKind.Bool; 32private const UnaryOperatorKind LCHR = UnaryOperatorKind.Lifted | UnaryOperatorKind.Char; 33private const UnaryOperatorKind LI08 = UnaryOperatorKind.Lifted | UnaryOperatorKind.SByte; 34private const UnaryOperatorKind LU08 = UnaryOperatorKind.Lifted | UnaryOperatorKind.Byte; 35private const UnaryOperatorKind LI16 = UnaryOperatorKind.Lifted | UnaryOperatorKind.Short; 36private const UnaryOperatorKind LU16 = UnaryOperatorKind.Lifted | UnaryOperatorKind.UShort; 37private const UnaryOperatorKind LI32 = UnaryOperatorKind.Lifted | UnaryOperatorKind.Int; 38private const UnaryOperatorKind LU32 = UnaryOperatorKind.Lifted | UnaryOperatorKind.UInt; 39private const UnaryOperatorKind LI64 = UnaryOperatorKind.Lifted | UnaryOperatorKind.Long; 40private const UnaryOperatorKind LU64 = UnaryOperatorKind.Lifted | UnaryOperatorKind.ULong; 41private const UnaryOperatorKind LNI = UnaryOperatorKind.Lifted | UnaryOperatorKind.NInt; 42private const UnaryOperatorKind LNU = UnaryOperatorKind.Lifted | UnaryOperatorKind.NUInt; 43private const UnaryOperatorKind LR32 = UnaryOperatorKind.Lifted | UnaryOperatorKind.Float; 44private const UnaryOperatorKind LR64 = UnaryOperatorKind.Lifted | UnaryOperatorKind.Double; 45private const UnaryOperatorKind LDEC = UnaryOperatorKind.Lifted | UnaryOperatorKind.Decimal; 47private static readonly UnaryOperatorKind[] s_increment = 52private static readonly UnaryOperatorKind[] s_plus = 57private static readonly UnaryOperatorKind[] s_minus = 62private static readonly UnaryOperatorKind[] s_logicalNegation = 67private static readonly UnaryOperatorKind[] s_bitwiseComplement = 72private static readonly UnaryOperatorKind[][] s_opkind = 84public static UnaryOperatorKind OpKind(UnaryOperatorKind kind, TypeSymbol operand) 89return UnaryOperatorKind.Error; 92var result = (kindIndex >= s_opkind.Length) ? UnaryOperatorKind.Error : s_opkind[kindIndex][index]; 93return result == UnaryOperatorKind.Error ? result : result | kind; 97private void UnaryOperatorEasyOut(UnaryOperatorKind kind, BoundExpression operand, UnaryOperatorOverloadResolutionResult result) 105var easyOut = UnopEasyOut.OpKind(kind, operandType); 107if (easyOut == UnaryOperatorKind.Error)
Binder\Semantics\Operators\UnaryOperatorOverloadResolution.cs (32)
23public void UnaryOperatorOverloadResolution(UnaryOperatorKind kind, bool isChecked, BoundExpression operand, UnaryOperatorOverloadResolutionResult result, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 241private void GetAllBuiltInOperators(UnaryOperatorKind kind, bool isChecked, BoundExpression operand, ArrayBuilder<UnaryOperatorAnalysisResult> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 292private void GetEnumOperations(UnaryOperatorKind kind, BoundExpression operand, ArrayBuilder<UnaryOperatorSignature> operators) 312case UnaryOperatorKind.PostfixIncrement: 313case UnaryOperatorKind.PostfixDecrement: 314case UnaryOperatorKind.PrefixIncrement: 315case UnaryOperatorKind.PrefixDecrement: 316case UnaryOperatorKind.BitwiseComplement: 317operators.Add(new UnaryOperatorSignature(kind | UnaryOperatorKind.Enum, enumType, enumType)); 318operators.Add(new UnaryOperatorSignature(kind | UnaryOperatorKind.Lifted | UnaryOperatorKind.Enum, nullableEnum, nullableEnum)); 323private static UnaryOperatorSignature? GetPointerOperation(UnaryOperatorKind kind, BoundExpression operand) 336case UnaryOperatorKind.PostfixIncrement: 337case UnaryOperatorKind.PostfixDecrement: 338case UnaryOperatorKind.PrefixIncrement: 339case UnaryOperatorKind.PrefixDecrement: 340op = new UnaryOperatorSignature(kind | UnaryOperatorKind.Pointer, pointerType, pointerType); 347private bool GetUserDefinedOperators(UnaryOperatorKind kind, bool isChecked, BoundExpression operand, ArrayBuilder<UnaryOperatorAnalysisResult> results, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 475UnaryOperatorKind kind, 515static void getDeclaredOperators(TypeSymbol constrainedToTypeOpt, NamedTypeSymbol type, UnaryOperatorKind kind, string name, ArrayBuilder<UnaryOperatorSignature> operators) 531operators.Add(new UnaryOperatorSignature(UnaryOperatorKind.UserDefined | kind, operandType, resultType, op, constrainedToTypeOpt)); 537void addLiftedOperators(TypeSymbol constrainedToTypeOpt, UnaryOperatorKind kind, ArrayBuilder<UnaryOperatorSignature> operators) 545case UnaryOperatorKind.UnaryPlus: 546case UnaryOperatorKind.PrefixDecrement: 547case UnaryOperatorKind.PrefixIncrement: 548case UnaryOperatorKind.UnaryMinus: 549case UnaryOperatorKind.PostfixDecrement: 550case UnaryOperatorKind.PostfixIncrement: 551case UnaryOperatorKind.LogicalNegation: 552case UnaryOperatorKind.BitwiseComplement: 564UnaryOperatorKind.Lifted | UnaryOperatorKind.UserDefined | kind,
Binder\Semantics\Operators\UnaryOperatorSignature.cs (3)
21public readonly UnaryOperatorKind Kind; 23public UnaryOperatorSignature(UnaryOperatorKind kind, TypeSymbol operandType, TypeSymbol returnType) 32public UnaryOperatorSignature(UnaryOperatorKind kind, TypeSymbol operandType, TypeSymbol returnType, MethodSymbol method, TypeSymbol constrainedToTypeOpt)
BoundTree\Constructors.cs (4)
706UnaryOperatorKind operatorKind, 718public BoundUnaryOperator Update(UnaryOperatorKind operatorKind, 732UnaryOperatorKind operatorKind, 747public BoundIncrementOperator Update(UnaryOperatorKind operatorKind, BoundExpression operand, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, BoundValuePlaceholder? resultPlaceholder, BoundExpression? resultConversion, LookupResultKind resultKind, TypeSymbol type)
CodeGen\EmitOperators.cs (13)
19var operatorKind = expression.OperatorKind; 33if (operatorKind == UnaryOperatorKind.BoolLogicalNegation) 42case UnaryOperatorKind.UnaryMinus: 46case UnaryOperatorKind.BitwiseComplement: 50case UnaryOperatorKind.UnaryPlus: 575Debug.Assert(unOp.OperatorKind == UnaryOperatorKind.BoolLogicalNegation); 583Debug.Assert(expression.OperatorKind.Operator() == UnaryOperatorKind.UnaryMinus); 584var type = expression.OperatorKind.OperandTypes(); 596Debug.Assert(type == UnaryOperatorKind.Int || type == UnaryOperatorKind.Long || type == UnaryOperatorKind.NInt); 605if (type == UnaryOperatorKind.Long) 609else if (type == UnaryOperatorKind.NInt)
CodeGen\EmitStatement.cs (1)
577if (unOp.OperatorKind == UnaryOperatorKind.BoolLogicalNegation)
CodeGen\Optimizer.cs (1)
1654if (node.OperatorKind.IsChecked() && node.OperatorKind.Operator() == UnaryOperatorKind.UnaryMinus)
Compilation\BuiltInOperators.cs (176)
44builder.Add(GetSignature((UnaryOperatorKind)kind)); 50internal void GetSimpleBuiltInOperators(UnaryOperatorKind kind, ArrayBuilder<UnaryOperatorSignature> operators, bool skipNativeIntegerOperators) 58(int)UnaryOperatorKind.SBytePostfixIncrement, 59(int)UnaryOperatorKind.BytePostfixIncrement, 60(int)UnaryOperatorKind.ShortPostfixIncrement, 61(int)UnaryOperatorKind.UShortPostfixIncrement, 62(int)UnaryOperatorKind.IntPostfixIncrement, 63(int)UnaryOperatorKind.UIntPostfixIncrement, 64(int)UnaryOperatorKind.LongPostfixIncrement, 65(int)UnaryOperatorKind.ULongPostfixIncrement, 66(int)UnaryOperatorKind.NIntPostfixIncrement, 67(int)UnaryOperatorKind.NUIntPostfixIncrement, 68(int)UnaryOperatorKind.CharPostfixIncrement, 69(int)UnaryOperatorKind.FloatPostfixIncrement, 70(int)UnaryOperatorKind.DoublePostfixIncrement, 71(int)UnaryOperatorKind.DecimalPostfixIncrement, 72(int)UnaryOperatorKind.LiftedSBytePostfixIncrement, 73(int)UnaryOperatorKind.LiftedBytePostfixIncrement, 74(int)UnaryOperatorKind.LiftedShortPostfixIncrement, 75(int)UnaryOperatorKind.LiftedUShortPostfixIncrement, 76(int)UnaryOperatorKind.LiftedIntPostfixIncrement, 77(int)UnaryOperatorKind.LiftedUIntPostfixIncrement, 78(int)UnaryOperatorKind.LiftedLongPostfixIncrement, 79(int)UnaryOperatorKind.LiftedULongPostfixIncrement, 80(int)UnaryOperatorKind.LiftedNIntPostfixIncrement, 81(int)UnaryOperatorKind.LiftedNUIntPostfixIncrement, 82(int)UnaryOperatorKind.LiftedCharPostfixIncrement, 83(int)UnaryOperatorKind.LiftedFloatPostfixIncrement, 84(int)UnaryOperatorKind.LiftedDoublePostfixIncrement, 85(int)UnaryOperatorKind.LiftedDecimalPostfixIncrement, 89(int)UnaryOperatorKind.SBytePostfixDecrement, 90(int)UnaryOperatorKind.BytePostfixDecrement, 91(int)UnaryOperatorKind.ShortPostfixDecrement, 92(int)UnaryOperatorKind.UShortPostfixDecrement, 93(int)UnaryOperatorKind.IntPostfixDecrement, 94(int)UnaryOperatorKind.UIntPostfixDecrement, 95(int)UnaryOperatorKind.LongPostfixDecrement, 96(int)UnaryOperatorKind.ULongPostfixDecrement, 97(int)UnaryOperatorKind.NIntPostfixDecrement, 98(int)UnaryOperatorKind.NUIntPostfixDecrement, 99(int)UnaryOperatorKind.CharPostfixDecrement, 100(int)UnaryOperatorKind.FloatPostfixDecrement, 101(int)UnaryOperatorKind.DoublePostfixDecrement, 102(int)UnaryOperatorKind.DecimalPostfixDecrement, 103(int)UnaryOperatorKind.LiftedSBytePostfixDecrement, 104(int)UnaryOperatorKind.LiftedBytePostfixDecrement, 105(int)UnaryOperatorKind.LiftedShortPostfixDecrement, 106(int)UnaryOperatorKind.LiftedUShortPostfixDecrement, 107(int)UnaryOperatorKind.LiftedIntPostfixDecrement, 108(int)UnaryOperatorKind.LiftedUIntPostfixDecrement, 109(int)UnaryOperatorKind.LiftedLongPostfixDecrement, 110(int)UnaryOperatorKind.LiftedULongPostfixDecrement, 111(int)UnaryOperatorKind.LiftedNIntPostfixDecrement, 112(int)UnaryOperatorKind.LiftedNUIntPostfixDecrement, 113(int)UnaryOperatorKind.LiftedCharPostfixDecrement, 114(int)UnaryOperatorKind.LiftedFloatPostfixDecrement, 115(int)UnaryOperatorKind.LiftedDoublePostfixDecrement, 116(int)UnaryOperatorKind.LiftedDecimalPostfixDecrement, 120(int)UnaryOperatorKind.SBytePrefixIncrement, 121(int)UnaryOperatorKind.BytePrefixIncrement, 122(int)UnaryOperatorKind.ShortPrefixIncrement, 123(int)UnaryOperatorKind.UShortPrefixIncrement, 124(int)UnaryOperatorKind.IntPrefixIncrement, 125(int)UnaryOperatorKind.UIntPrefixIncrement, 126(int)UnaryOperatorKind.LongPrefixIncrement, 127(int)UnaryOperatorKind.ULongPrefixIncrement, 128(int)UnaryOperatorKind.NIntPrefixIncrement, 129(int)UnaryOperatorKind.NUIntPrefixIncrement, 130(int)UnaryOperatorKind.CharPrefixIncrement, 131(int)UnaryOperatorKind.FloatPrefixIncrement, 132(int)UnaryOperatorKind.DoublePrefixIncrement, 133(int)UnaryOperatorKind.DecimalPrefixIncrement, 134(int)UnaryOperatorKind.LiftedSBytePrefixIncrement, 135(int)UnaryOperatorKind.LiftedBytePrefixIncrement, 136(int)UnaryOperatorKind.LiftedShortPrefixIncrement, 137(int)UnaryOperatorKind.LiftedUShortPrefixIncrement, 138(int)UnaryOperatorKind.LiftedIntPrefixIncrement, 139(int)UnaryOperatorKind.LiftedUIntPrefixIncrement, 140(int)UnaryOperatorKind.LiftedLongPrefixIncrement, 141(int)UnaryOperatorKind.LiftedULongPrefixIncrement, 142(int)UnaryOperatorKind.LiftedNIntPrefixIncrement, 143(int)UnaryOperatorKind.LiftedNUIntPrefixIncrement, 144(int)UnaryOperatorKind.LiftedCharPrefixIncrement, 145(int)UnaryOperatorKind.LiftedFloatPrefixIncrement, 146(int)UnaryOperatorKind.LiftedDoublePrefixIncrement, 147(int)UnaryOperatorKind.LiftedDecimalPrefixIncrement, 151(int)UnaryOperatorKind.SBytePrefixDecrement, 152(int)UnaryOperatorKind.BytePrefixDecrement, 153(int)UnaryOperatorKind.ShortPrefixDecrement, 154(int)UnaryOperatorKind.UShortPrefixDecrement, 155(int)UnaryOperatorKind.IntPrefixDecrement, 156(int)UnaryOperatorKind.UIntPrefixDecrement, 157(int)UnaryOperatorKind.NIntPrefixDecrement, 158(int)UnaryOperatorKind.NUIntPrefixDecrement, 159(int)UnaryOperatorKind.LongPrefixDecrement, 160(int)UnaryOperatorKind.ULongPrefixDecrement, 161(int)UnaryOperatorKind.CharPrefixDecrement, 162(int)UnaryOperatorKind.FloatPrefixDecrement, 163(int)UnaryOperatorKind.DoublePrefixDecrement, 164(int)UnaryOperatorKind.DecimalPrefixDecrement, 165(int)UnaryOperatorKind.LiftedSBytePrefixDecrement, 166(int)UnaryOperatorKind.LiftedBytePrefixDecrement, 167(int)UnaryOperatorKind.LiftedShortPrefixDecrement, 168(int)UnaryOperatorKind.LiftedUShortPrefixDecrement, 169(int)UnaryOperatorKind.LiftedIntPrefixDecrement, 170(int)UnaryOperatorKind.LiftedUIntPrefixDecrement, 171(int)UnaryOperatorKind.LiftedLongPrefixDecrement, 172(int)UnaryOperatorKind.LiftedULongPrefixDecrement, 173(int)UnaryOperatorKind.LiftedNIntPrefixDecrement, 174(int)UnaryOperatorKind.LiftedNUIntPrefixDecrement, 175(int)UnaryOperatorKind.LiftedCharPrefixDecrement, 176(int)UnaryOperatorKind.LiftedFloatPrefixDecrement, 177(int)UnaryOperatorKind.LiftedDoublePrefixDecrement, 178(int)UnaryOperatorKind.LiftedDecimalPrefixDecrement, 182(int)UnaryOperatorKind.IntUnaryPlus, 183(int)UnaryOperatorKind.UIntUnaryPlus, 184(int)UnaryOperatorKind.LongUnaryPlus, 185(int)UnaryOperatorKind.ULongUnaryPlus, 186(int)UnaryOperatorKind.NIntUnaryPlus, 187(int)UnaryOperatorKind.NUIntUnaryPlus, 188(int)UnaryOperatorKind.FloatUnaryPlus, 189(int)UnaryOperatorKind.DoubleUnaryPlus, 190(int)UnaryOperatorKind.DecimalUnaryPlus, 191(int)UnaryOperatorKind.LiftedIntUnaryPlus, 192(int)UnaryOperatorKind.LiftedUIntUnaryPlus, 193(int)UnaryOperatorKind.LiftedLongUnaryPlus, 194(int)UnaryOperatorKind.LiftedULongUnaryPlus, 195(int)UnaryOperatorKind.LiftedNIntUnaryPlus, 196(int)UnaryOperatorKind.LiftedNUIntUnaryPlus, 197(int)UnaryOperatorKind.LiftedFloatUnaryPlus, 198(int)UnaryOperatorKind.LiftedDoubleUnaryPlus, 199(int)UnaryOperatorKind.LiftedDecimalUnaryPlus, 203(int)UnaryOperatorKind.IntUnaryMinus, 204(int)UnaryOperatorKind.LongUnaryMinus, 205(int)UnaryOperatorKind.NIntUnaryMinus, 206(int)UnaryOperatorKind.FloatUnaryMinus, 207(int)UnaryOperatorKind.DoubleUnaryMinus, 208(int)UnaryOperatorKind.DecimalUnaryMinus, 209(int)UnaryOperatorKind.LiftedIntUnaryMinus, 210(int)UnaryOperatorKind.LiftedLongUnaryMinus, 211(int)UnaryOperatorKind.LiftedNIntUnaryMinus, 212(int)UnaryOperatorKind.LiftedFloatUnaryMinus, 213(int)UnaryOperatorKind.LiftedDoubleUnaryMinus, 214(int)UnaryOperatorKind.LiftedDecimalUnaryMinus, 218(int)UnaryOperatorKind.BoolLogicalNegation, 219(int)UnaryOperatorKind.LiftedBoolLogicalNegation, 223(int)UnaryOperatorKind.IntBitwiseComplement, 224(int)UnaryOperatorKind.UIntBitwiseComplement, 225(int)UnaryOperatorKind.LongBitwiseComplement, 226(int)UnaryOperatorKind.ULongBitwiseComplement, 227(int)UnaryOperatorKind.NIntBitwiseComplement, 228(int)UnaryOperatorKind.NUIntBitwiseComplement, 229(int)UnaryOperatorKind.LiftedIntBitwiseComplement, 230(int)UnaryOperatorKind.LiftedUIntBitwiseComplement, 231(int)UnaryOperatorKind.LiftedLongBitwiseComplement, 232(int)UnaryOperatorKind.LiftedULongBitwiseComplement, 233(int)UnaryOperatorKind.LiftedNIntBitwiseComplement, 234(int)UnaryOperatorKind.LiftedNUIntBitwiseComplement, 250case UnaryOperatorKind.NInt: 251case UnaryOperatorKind.NUInt: 259internal UnaryOperatorSignature GetSignature(UnaryOperatorKind kind) 264case UnaryOperatorKind.SByte: opType = _compilation.GetSpecialType(SpecialType.System_SByte); break; 265case UnaryOperatorKind.Byte: opType = _compilation.GetSpecialType(SpecialType.System_Byte); break; 266case UnaryOperatorKind.Short: opType = _compilation.GetSpecialType(SpecialType.System_Int16); break; 267case UnaryOperatorKind.UShort: opType = _compilation.GetSpecialType(SpecialType.System_UInt16); break; 268case UnaryOperatorKind.Int: opType = _compilation.GetSpecialType(SpecialType.System_Int32); break; 269case UnaryOperatorKind.UInt: opType = _compilation.GetSpecialType(SpecialType.System_UInt32); break; 270case UnaryOperatorKind.Long: opType = _compilation.GetSpecialType(SpecialType.System_Int64); break; 271case UnaryOperatorKind.ULong: opType = _compilation.GetSpecialType(SpecialType.System_UInt64); break; 272case UnaryOperatorKind.NInt: opType = _compilation.CreateNativeIntegerTypeSymbol(signed: true); break; 273case UnaryOperatorKind.NUInt: opType = _compilation.CreateNativeIntegerTypeSymbol(signed: false); break; 274case UnaryOperatorKind.Char: opType = _compilation.GetSpecialType(SpecialType.System_Char); break; 275case UnaryOperatorKind.Float: opType = _compilation.GetSpecialType(SpecialType.System_Single); break; 276case UnaryOperatorKind.Double: opType = _compilation.GetSpecialType(SpecialType.System_Double); break; 277case UnaryOperatorKind.Decimal: opType = _compilation.GetSpecialType(SpecialType.System_Decimal); break; 278case UnaryOperatorKind.Bool: opType = _compilation.GetSpecialType(SpecialType.System_Boolean); break;
Compilation\CSharpCompilation.cs (8)
4510var unaryKind = Binder.SyntaxKindToUnaryOperatorKind(SyntaxFacts.GetPrefixUnaryExpression(syntaxKind)); 4515var easyOutUnaryKind = OverloadResolution.UnopEasyOut.OpKind(unaryKind, csharpOperandType); 4517if (easyOutUnaryKind != UnaryOperatorKind.Error) 4531unaryKind is UnaryOperatorKind.PrefixIncrement or UnaryOperatorKind.PrefixDecrement or UnaryOperatorKind.BitwiseComplement && 4539unaryKind is UnaryOperatorKind.PrefixIncrement or UnaryOperatorKind.PrefixDecrement &&
Compilation\CSharpSemanticModel.cs (9)
2015UnaryOperatorKind operatorKind = @operator.OperatorKind; 2016return operatorKind == UnaryOperatorKind.UserDefinedTrue || operatorKind == UnaryOperatorKind.UserDefinedFalse; 3804UnaryOperatorKind operandType = unaryOperator.OperatorKind.OperandTypes(); 3807if (operandType == 0 || operandType == UnaryOperatorKind.UserDefined || unaryOperator.ResultKind != LookupResultKind.Viable) 3817UnaryOperatorKind op = unaryOperator.OperatorKind.Operator(); 3827UnaryOperatorKind operandType = increment.OperatorKind.OperandTypes(); 3830if (operandType == 0 || operandType == UnaryOperatorKind.UserDefined || increment.ResultKind != LookupResultKind.Viable) 3840UnaryOperatorKind op = increment.OperatorKind.Operator();
FlowAnalysis\AbstractFlowPass.cs (1)
2766if (node.OperatorKind == UnaryOperatorKind.BoolLogicalNegation)
FlowAnalysis\NullableWalker.cs (6)
10829var op = node.OperatorKind.Operator(); 10830TypeWithState resultType = (op == UnaryOperatorKind.PrefixIncrement || op == UnaryOperatorKind.PrefixDecrement) ? resultOfIncrementType : operandType; 11588case UnaryOperatorKind.BoolLogicalNegation: 11594case UnaryOperatorKind.DynamicTrue: 11600case UnaryOperatorKind.DynamicLogicalNegation:
Generated\BoundNodes.xml.Generated.cs (6)
1183public BoundUnaryOperator(SyntaxNode syntax, UnaryOperatorKind operatorKind, BoundExpression operand, ConstantValue? constantValueOpt, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type, bool hasErrors = false) 1200public UnaryOperatorKind OperatorKind { get; } 1211public BoundUnaryOperator Update(UnaryOperatorKind operatorKind, BoundExpression operand, ConstantValue? constantValueOpt, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type) 1225public BoundIncrementOperator(SyntaxNode syntax, UnaryOperatorKind operatorKind, BoundExpression operand, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, BoundValuePlaceholder? resultPlaceholder, BoundExpression? resultConversion, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type, bool hasErrors = false) 1245public UnaryOperatorKind OperatorKind { get; } 1259public BoundIncrementOperator Update(UnaryOperatorKind operatorKind, BoundExpression operand, MethodSymbol? methodOpt, TypeSymbol? constrainedToTypeOpt, BoundValuePlaceholder? operandPlaceholder, BoundExpression? operandConversion, BoundValuePlaceholder? resultPlaceholder, BoundExpression? resultConversion, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalUserDefinedOperatorsOpt, TypeSymbol type)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (10)
1137var opKind = node.OperatorKind; 1138var op = opKind & UnaryOperatorKind.OpMask; 1139var isChecked = (opKind & UnaryOperatorKind.Checked) != 0; 1144case UnaryOperatorKind.UnaryPlus: 1151case UnaryOperatorKind.UnaryMinus: 1156case UnaryOperatorKind.BitwiseComplement: 1157case UnaryOperatorKind.LogicalNegation: 1185if (node.OperatorKind.OperandTypes() == UnaryOperatorKind.Enum && (opKind & UnaryOperatorKind.Lifted) != 0)
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (19)
342return MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, loweredRight, loweredRight.Type); 345return MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, loweredLeft, loweredLeft.Type); 356return MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, loweredRight, loweredRight.Type); 359return MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, loweredLeft, loweredLeft.Type); 370return MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, loweredRight, loweredRight.Type); 373return MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, loweredLeft, loweredLeft.Type); 626var testOperator = isAnd ? UnaryOperatorKind.DynamicFalse : UnaryOperatorKind.DynamicTrue; 632if (testOperator == UnaryOperatorKind.DynamicFalse && constantLeft == ConstantValue.False || 633testOperator == UnaryOperatorKind.DynamicTrue && constantLeft == ConstantValue.True) 675bool leftTestIsConstantFalse = testOperator == UnaryOperatorKind.DynamicFalse && constantLeft == ConstantValue.True || 676testOperator == UnaryOperatorKind.DynamicTrue && constantLeft == ConstantValue.False; 736return _dynamicFactory.MakeDynamicUnaryOperator(negative ? UnaryOperatorKind.DynamicFalse : UnaryOperatorKind.DynamicTrue, loweredLeft, boolean).ToExpression(); 753return new BoundUnaryOperator(syntax, UnaryOperatorKind.BoolLogicalNegation, converted, ConstantValue.NotAvailable, MethodSymbol.None, constrainedToTypeOpt: null, LookupResultKind.Viable, boolean) 880MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, callHasValue, boolType) : 1863BoundExpression invert = MakeUnaryOperator(UnaryOperatorKind.BoolLogicalNegation, syntax, method: null, constrainedToTypeOpt: null, innerOr, boolType); 1996new BoundUnaryOperator(syntax, UnaryOperatorKind.BoolLogicalNegation, call, ConstantValue.NotAvailable, null, constrainedToTypeOpt: null, LookupResultKind.Viable, returnType);
Lowering\LocalRewriter\LocalRewriter_TupleBinaryOperator.cs (3)
558return _factory.Not(MakeUnaryOperator(UnaryOperatorKind.DynamicFalse, left.Syntax, method: null, constrainedToTypeOpt: null, dynamicResult, boolType)); 562return MakeUnaryOperator(UnaryOperatorKind.DynamicTrue, left.Syntax, method: null, constrainedToTypeOpt: null, dynamicResult, boolType); 578if (boolOperator.Kind != UnaryOperatorKind.Error)
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (67)
33case UnaryOperatorKind.PrefixDecrement: 34case UnaryOperatorKind.PrefixIncrement: 35case UnaryOperatorKind.PostfixDecrement: 36case UnaryOperatorKind.PostfixIncrement: 51if (node.OperatorKind == UnaryOperatorKind.DynamicTrue && binaryOperator.OperatorKind == BinaryOperatorKind.DynamicLogicalOr || 52node.OperatorKind == UnaryOperatorKind.DynamicFalse && binaryOperator.OperatorKind == BinaryOperatorKind.DynamicLogicalAnd) 63UnaryOperatorKind kind, 75UnaryOperatorKind kind, 84Debug.Assert((kind == UnaryOperatorKind.DynamicTrue || kind == UnaryOperatorKind.DynamicFalse) && type.SpecialType == SpecialType.System_Boolean 94case UnaryOperatorKind.DynamicTrue: 96case UnaryOperatorKind.DynamicLogicalNegation: 114if (!_inExpressionLambda || kind == UnaryOperatorKind.UserDefinedTrue || kind == UnaryOperatorKind.UserDefinedFalse) 124else if (kind.Operator() == UnaryOperatorKind.UnaryPlus) 130if (kind == UnaryOperatorKind.EnumBitwiseComplement) 140UnaryOperatorKind newKind = kind.Operator().WithType(upconvertSpecialType); 164if (kind == UnaryOperatorKind.DecimalUnaryMinus) 179UnaryOperatorKind kind, 243UnaryOperatorKind operatorKind, 353private BoundExpression GetLiftedUnaryOperatorConsequence(UnaryOperatorKind kind, SyntaxNode syntax, MethodSymbol? method, TypeSymbol? constrainedToTypeOpt, TypeSymbol type, BoundExpression nonNullOperand) 377var op = node.OperatorKind.Operator(); 378return op == UnaryOperatorKind.PostfixIncrement || op == UnaryOperatorKind.PrefixIncrement; 383var op = node.OperatorKind.Operator(); 384return op == UnaryOperatorKind.PrefixIncrement || op == UnaryOperatorKind.PrefixDecrement; 710if (node.OperatorKind.OperandTypes() == UnaryOperatorKind.UserDefined) 902if (node.OperatorKind.OperandTypes() == UnaryOperatorKind.Pointer) 1032UnaryOperatorKind kind = node.OperatorKind.OperandTypes(); 1037if (kind == UnaryOperatorKind.Enum) 1046case UnaryOperatorKind.Int: 1049case UnaryOperatorKind.SByte: 1052case UnaryOperatorKind.Short: 1055case UnaryOperatorKind.Byte: 1058case UnaryOperatorKind.UShort: 1061case UnaryOperatorKind.Char: 1064case UnaryOperatorKind.UInt: 1067case UnaryOperatorKind.Long: 1070case UnaryOperatorKind.ULong: 1073case UnaryOperatorKind.NInt: 1076case UnaryOperatorKind.NUInt: 1079case UnaryOperatorKind.Float: 1082case UnaryOperatorKind.Double: 1085case UnaryOperatorKind.Decimal: 1088case UnaryOperatorKind.Pointer: 1090case UnaryOperatorKind.UserDefined: 1091case UnaryOperatorKind.Bool: 1112UnaryOperatorKind unaryOperatorKind = node.OperatorKind; 1117case UnaryOperatorKind.Int: 1118case UnaryOperatorKind.SByte: 1119case UnaryOperatorKind.Short: 1122case UnaryOperatorKind.Byte: 1123case UnaryOperatorKind.UShort: 1124case UnaryOperatorKind.Char: 1125case UnaryOperatorKind.UInt: 1128case UnaryOperatorKind.Long: 1131case UnaryOperatorKind.ULong: 1134case UnaryOperatorKind.NInt: 1137case UnaryOperatorKind.NUInt: 1140case UnaryOperatorKind.Float: 1143case UnaryOperatorKind.Double: 1146case UnaryOperatorKind.Decimal: //Dev10 special cased this, but we'll let DecimalRewriter handle it 1149case UnaryOperatorKind.Enum: 1187case UnaryOperatorKind.Pointer: 1190case UnaryOperatorKind.UserDefined: 1191case UnaryOperatorKind.Bool:
Lowering\LocalRewriter\LoweredDynamicOperationFactory.cs (1)
115UnaryOperatorKind operatorKind,
Lowering\SyntheticBoundNodeFactory.cs (2)
1641return new BoundUnaryOperator(expression.Syntax, UnaryOperatorKind.BoolLogicalNegation, expression, null, null, constrainedToTypeOpt: null, LookupResultKind.Viable, expression.Type); 1888new BoundUnaryOperator(syntax, UnaryOperatorKind.BoolLogicalNegation, call, ConstantValue.NotAvailable, methodOpt: null, constrainedToTypeOpt: null, LookupResultKind.Viable, returnType);
Operations\CSharpOperationFactory_Methods.cs (13)
495internal static bool IsPostfixIncrementOrDecrement(CSharp.UnaryOperatorKind operatorKind) 499case CSharp.UnaryOperatorKind.PostfixIncrement: 500case CSharp.UnaryOperatorKind.PostfixDecrement: 508internal static bool IsDecrement(CSharp.UnaryOperatorKind operatorKind) 512case CSharp.UnaryOperatorKind.PrefixDecrement: 513case CSharp.UnaryOperatorKind.PostfixDecrement: 521internal static UnaryOperatorKind DeriveUnaryOperatorKind(CSharp.UnaryOperatorKind operatorKind) 525case CSharp.UnaryOperatorKind.UnaryPlus: 528case CSharp.UnaryOperatorKind.UnaryMinus: 531case CSharp.UnaryOperatorKind.LogicalNegation: 534case CSharp.UnaryOperatorKind.BitwiseComplement: 537case CSharp.UnaryOperatorKind.True: 540case CSharp.UnaryOperatorKind.False:
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (1)
Emit\NumericIntPtrTests.cs (1)
1565foreach (var operatorKind in unaryOperators)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1)
Semantics\NativeIntegerTests.cs (1)
4805foreach (var operatorKind in unaryOperators)