92 references to Method
Microsoft.CodeAnalysis.CSharp (58)
Binder\Binder.cs (2)
626if (conversion.IsValid && conversion.Method is object) 628ReportDiagnosticsIfObsolete(diagnostics, conversion.Method, node, hasBaseReceiver);
Binder\Binder.ValueChecks.cs (6)
3692conversion.Conversion.Method.HasUnsupportedMetadata || 3693conversion.Conversion.Method.RefKind == RefKind.None)); 4069conversion.Conversion.Method.HasUnsupportedMetadata || 4070conversion.Conversion.Method.RefKind == RefKind.None); 4478var operatorMethod = conversion.Conversion.Method; 5296var operatorMethod = conversion.Conversion.Method;
Binder\Binder_Conversions.cs (6)
305if (conversion.Method is not null) 307ReportUseSite(conversion.Method, diagnostics, syntax.Location); 413if (conversion.Method is MethodSymbol method && method.IsStatic) 2570receiverOpt = ReplaceTypeOrValueReceiver(receiverOpt, useType: conversion.Method?.RequiresInstanceReceiver == false && !conversion.IsExtensionMethod, diagnostics); 3020Debug.Assert(conversion.Method is object); 3021MethodSymbol selectedMethod = conversion.Method;
Binder\Binder_Deconstruct.cs (2)
150if (conversion.Method != null) 152CheckImplicitThisCopyInReadOnlyMember(boundRHS, conversion.Method, diagnostics);
Binder\Binder_Expressions.cs (1)
5447return new BoundDelegateCreationExpression(node, methodGroup, conversion.Method, conversion.IsExtensionMethod, wasTargetTyped, type, hasErrors);
Binder\ForEachLoopBinder.cs (2)
561Debug.Assert((object)collectionConversionClassification.Method == null, 563Debug.Assert((object)currentConversionClassification.Method == null,
Binder\Semantics\Conversions\Conversion.cs (7)
588this.Method is object || 1022return this.Method.GetPublicSymbol(); 1183return this.Kind == other.Kind && this.Method == other.Method; 1192return Hash.Combine(this.Method, (int)this.Kind); 1226if (self.Method is object) 1228sub.Add(new TreeDumperNode("method", self.Method.ToDisplayString(), null));
Binder\Semantics\OverloadResolution\OverloadResolution.cs (1)
3657bool result = !_binder.MethodIsCompatibleWithDelegateOrFunctionPointer(node.ReceiverOpt, conv.IsExtensionMethod, conv.Method, delegateType, Location.None, BindingDiagnosticBag.Discarded);
Binder\SwitchBinder.cs (1)
418Debug.Assert(conversion.Method.IsUserDefinedConversion());
BoundTree\BoundExpression.cs (1)
472get { return this.Conversion.Method; }
FlowAnalysis\AbstractFlowPass.cs (1)
3042var method = conversion.Method;
FlowAnalysis\NullableWalker.cs (4)
9341var method = conversion.Method; 9881var method = conversion.Method; 11037if (node.OperandConversion is BoundConversion { Conversion: var operandConversion } && operandConversion.IsUserDefined && operandConversion.Method?.ParameterCount == 1) 11039targetTypeOfOperandConversion = operandConversion.Method.ReturnTypeWithAnnotations;
Lowering\BoundTreeToDifferentEnclosingContextRewriter.cs (2)
157if (conversion.Method is not null) 159conversion = conversion.SetConversionMethod(VisitMethodSymbol(conversion.Method));
Lowering\DiagnosticsPass_ExpressionTrees.cs (2)
851CheckMethodGroup((BoundMethodGroup)node.Operand, node.Conversion.Method, node.IsExtensionMethod, parentIsConversion: true, node.Type); 898if (_inExpressionLambda && node.Conversion.Method is MethodSymbol method && (method.IsAbstract || method.IsVirtual) && method.IsStatic)
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (1)
216if (conversion.Method.MethodKind == MethodKind.LocalFunction)
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (16)
533Debug.Assert(conversion.Method is null); 872Debug.Assert(conversion.Method is { }); 886if (!TypeSymbol.Equals(rewrittenOperand.Type, conversion.Method.GetParameterType(0), TypeCompareKind.ConsiderEverything2)) 895TypeSymbol userDefinedConversionRewrittenType = conversion.Method.ReturnType; 901conversion.Method.GetParameterType(0).Equals(rewrittenOperand.Type.GetNullableUnderlyingType(), TypeCompareKind.AllIgnoreOptions) && 1224Debug.Assert(conversion.Method is { }); 1230conversion.Method, 1346Debug.Assert(conversion.Method is { } && !conversion.Method.ReturnsVoid && conversion.Method.ParameterCount == 1); 1350var parameterType = conversion.Method.GetParameterType(0); 1367return new BoundReadOnlySpanFromArray(syntax, rewrittenOperand, conversion.Method, rewrittenType) { WasCompilerGenerated = true }; 1375conversion.Method, 1446Debug.Assert(conversion.Method is { }); 1452conversion.Method, 1762var meth = conversion.Method;
Lowering\SyntheticBoundNodeFactory.cs (3)
1514if (conversion.Method is { } && !TypeSymbol.Equals(conversion.Method.Parameters[0].Type, arg.Type, TypeCompareKind.ConsiderEverything2)) 1516arg = Convert(conversion.Method.Parameters[0].Type, arg);
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (2)
Emit\NumericIntPtrTests.cs (2)
10554Assert.Equal("nint nint.op_Implicit(System.String s)", model.GetConversion(returnStatements[0].Expression).Method.ToDisplayString(TestFormat)); 10555Assert.Equal("nuint nuint.op_Implicit(System.String s)", model.GetConversion(returnStatements[1].Expression).Method.ToDisplayString(TestFormat));
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (4)
Semantics\ForEachTests.cs (2)
2190Assert.Equal(udc, loopInfo0.ElementConversion.Method); 2199Assert.Null(loopInfo1.ElementConversion.Method); // No longer using UDC.
Semantics\InterpolationTests.cs (1)
4614Assert.Null(semanticInfo.ImplicitConversion.Method);
Semantics\RawInterpolationTests_Handler.cs (1)
2915Assert.Null(semanticInfo.ImplicitConversion.Method);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (28)
Compilation\GetSemanticInfoTests.cs (2)
3480Assert.Null(argConversion.Method); 3534Assert.Null(argConversion.Method);
Compilation\SemanticModelGetSemanticInfoTests.cs (2)
6434Assert.Equal("C.Goo(int)", semanticInfo.ImplicitConversion.Method.ToString()); 12525Assert.Equal("Conv.implicit operator int(Conv)", semanticInfo.ImplicitConversion.Method.ToString());
Symbols\CheckedUserDefinedOperatorsTests.cs (24)
7244Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(xNode.SpanStart, xNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7245Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(xNode.SpanStart, xNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7247Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(yNode.SpanStart, yNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7248Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(yNode.SpanStart, yNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7250Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(xNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7251Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(xNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7253Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(yNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7254Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.ClassifyConversion(yNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7316Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode.SpanStart, xNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7317Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode.SpanStart, xNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7318Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode.SpanStart, yNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7319Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode.SpanStart, yNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7321Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7322Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7323Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7324Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7387Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode.SpanStart, xNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7388Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode.SpanStart, xNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7390Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode.SpanStart, yNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7391Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode.SpanStart, yNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7393Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7394Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(xNode, int64, isExplicitInSource: true).Method.ToTestDisplayString()); 7396Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode, int64, isExplicitInSource: false).Method.ToTestDisplayString()); 7397Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.ClassifyConversion(yNode, int64, isExplicitInSource: true).Method.ToTestDisplayString());