public static UnaryOperatorAnalysisResult Inapplicable(UnaryOperatorSignature signature, Conversion conversion) { return new UnaryOperatorAnalysisResult(OperatorAnalysisResultKind.Inapplicable, signature, conversion); }
private UnaryOperatorSignature? GetPointerOperation(UnaryOperatorKind kind, BoundExpression operand) { Debug.Assert(operand != null); var pointerType = operand.Type as PointerTypeSymbol; if (pointerType == null) { return null; } UnaryOperatorSignature? op = null; switch (kind) { case UnaryOperatorKind.PostfixIncrement: case UnaryOperatorKind.PostfixDecrement: case UnaryOperatorKind.PrefixIncrement: case UnaryOperatorKind.PrefixDecrement: op = new UnaryOperatorSignature(kind | UnaryOperatorKind.Pointer, pointerType, pointerType); break; } return op; }
private UnaryOperatorAnalysisResult(OperatorAnalysisResultKind kind, UnaryOperatorSignature signature, Conversion conversion) : this() { this.Kind = kind; this.Signature = signature; this.Conversion = conversion; }