2 overrides of OriginalDefinition
Microsoft.CodeAnalysis.CSharp (2)
Symbols\ReducedExtensionMethodSymbol.cs (1)
368public override MethodSymbol OriginalDefinition
Symbols\SubstitutedMethodSymbol.cs (1)
141public sealed override MethodSymbol OriginalDefinition
113 references to OriginalDefinition
Microsoft.CodeAnalysis.CSharp (67)
Binder\Binder_Conversions.cs (1)
781var isSynthesized = delegateType.DelegateInvokeMethod?.OriginalDefinition is SynthesizedDelegateInvokeMethod;
Binder\Binder_Expressions.cs (2)
8729method.OriginalDefinition is var original && 8830property.GetOwnOrInheritedGetMethod()?.OriginalDefinition is MethodSymbol getMethod &&
Binder\Binder_Operators.cs (1)
1130SourceUserDefinedOperatorSymbol.IsSelfConstrainedTypeParameter((definition = signature.Method.OriginalDefinition).ReturnType.StrippedType(), definition.ContainingType));
Binder\ForEachLoopBinder.cs (1)
1498return moveNextMethodCandidate.OriginalDefinition.ReturnType.SpecialType != SpecialType.System_Boolean;
Binder\Semantics\Conversions\Conversions.cs (1)
60if (methodSymbol.OriginalDefinition is SynthesizedDelegateInvokeMethod invoke)
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (2)
1295var p = op1.Method.OriginalDefinition.GetParameters(); 1312var p = op2.Method.OriginalDefinition.GetParameters();
Binder\Semantics\OverloadResolution\OverloadResolution.cs (1)
576if (method.Arity == 0 || method.OriginalDefinition == (object)method)
BoundTree\Constructors.cs (1)
194hasErrors: method.OriginalDefinition is ErrorMethodSymbol
CodeGen\EmitExpression.cs (4)
1973var originalMethod = method.OriginalDefinition; 2250expression.Constructor.OriginalDefinition == (object)this._module.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__ctor_Array)) || 2252expression.Constructor.OriginalDefinition == (object)this._module.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__ctor_Array_Start_Length))) && 2263var originalDef = constructor.OriginalDefinition;
Compiler\MethodBodySynthesizer.Lowered.cs (3)
243F.CurrentFunction = (MethodSymbol)this.OriginalDefinition; 281F.CurrentFunction = (MethodSymbol)this.OriginalDefinition; 320F.CurrentFunction = this.OriginalDefinition;
Emitter\Model\GenericMethodInstanceReference.cs (1)
45UnderlyingMethod.OriginalDefinition,
Emitter\Model\MethodSymbolAdapter.cs (2)
277(MethodSymbol)AdaptedMethodSymbol.OriginalDefinition, 293return ((MethodSymbol)AdaptedMethodSymbol.OriginalDefinition).GetCciAdapter();
Emitter\Model\PEModuleBuilder.cs (1)
1321Debug.Assert(!(methodSymbol.OriginalDefinition is NativeIntegerMethodSymbol));
Emitter\Model\SpecializedMethodReference.cs (1)
35return UnderlyingMethod.OriginalDefinition.GetCciAdapter();
FlowAnalysis\AbstractFlowPass.cs (4)
1292if (node.Method?.OriginalDefinition is LocalFunctionSymbol localFunc) 1431Debug.Assert(method?.OriginalDefinition.MethodKind != MethodKind.LocalFunction); 1520if (node.MethodOpt?.OriginalDefinition is LocalFunctionSymbol localFunc) 1643else if (node.SymbolOpt?.OriginalDefinition is LocalFunctionSymbol localFunc)
FlowAnalysis\NullableWalker.cs (7)
5888|| method.OriginalDefinition.Equals(compilation.GetWellKnownTypeMember(WellKnownMember.System_Threading_Interlocked__CompareExchange_T), SymbolEqualityComparer.ConsiderEverything.CompareKind); 5974else if (method.OriginalDefinition == compilation.GetSpecialTypeMember(SpecialMember.System_Nullable_T_get_Value)) 6283if (node is BoundCall { Method: { OriginalDefinition: LocalFunctionSymbol localFunction } }) 7980if (method?.OriginalDefinition is LocalFunctionSymbol localFunc) 8697if (node.MethodOpt?.OriginalDefinition is LocalFunctionSymbol localFunc) 9286if (deconstructMethod.OriginalDefinition != deconstructMethod) 10525? getResult.OriginalDefinition.AsMember(taskAwaiterType)
Lowering\ClosureConversion\ClosureConversion.Analysis.Tree.cs (4)
430_methodsConvertedToDelegates.Add(node.Symbol.OriginalDefinition); 438=> VisitNestedFunction(node.Symbol.OriginalDefinition, node.Body); 445AddIfCaptured(node.Method.OriginalDefinition, node.Syntax); 455var method = node.MethodOpt.OriginalDefinition;
Lowering\ClosureConversion\ClosureConversion.cs (2)
844Analysis.GetNestedFunctionInTree(_analysis.ScopeTree, node.Method.OriginalDefinition).SynthesizedLoweredMethod : node.Method; 863var function = Analysis.GetNestedFunctionInTree(_analysis.ScopeTree, localFunc.OriginalDefinition);
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
212if (method?.OriginalDefinition is LocalFunctionSymbol localFunction)
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
111module.EmbeddedTypesManagerOpt.EmbedMethodIfNeedTo(m.OriginalDefinition.GetCciAdapter(), syntaxNode, _diagnostics.DiagnosticBag);
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
923method = method.OriginalDefinition;
Lowering\MethodToClassRewriter.cs (1)
643return ((MethodSymbol)method.OriginalDefinition)
Lowering\SynthesizedMethodBaseSymbol.cs (1)
206get { return this.TypeMap.SubstituteType(this.BaseMethod.OriginalDefinition.ReturnTypeWithAnnotations); }
Lowering\SyntheticBoundNodeFactory.cs (1)
817type: method.ReturnType, hasErrors: method.OriginalDefinition is ErrorMethodSymbol)
Operations\CSharpOperationFactory.cs (2)
708if (boundObjectCreationExpression.ResultKind == LookupResultKind.OverloadResolutionFailure || constructor.OriginalDefinition is ErrorMethodSymbol) 881if (accessor == null || boundObjectInitializerMember.ResultKind == LookupResultKind.OverloadResolutionFailure || accessor.OriginalDefinition is ErrorMethodSymbol)
Operations\CSharpOperationFactory_Methods.cs (1)
122resultKind == LookupResultKind.OverloadResolutionFailure || targetMethod?.OriginalDefinition is ErrorMethodSymbol;
SymbolDisplay\SymbolDisplayVisitor.Members.cs (1)
505symbol.GetSymbol()?.OriginalDefinition is SourceUserDefinedOperatorSymbolBase sourceUserDefinedOperatorSymbolBase)
Symbols\ConstraintsHelper.cs (2)
811((MethodSymbol)method.OriginalDefinition).TypeParameters, 1498if (ReferenceEquals(method.OriginalDefinition, method))
Symbols\ConstructedMethodSymbol.cs (2)
20map: new TypeMap(constructedFrom.ContainingType, ((MethodSymbol)constructedFrom.OriginalDefinition).TypeParameters, typeArgumentsWithAnnotations), 21originalDefinition: (MethodSymbol)constructedFrom.OriginalDefinition,
Symbols\MethodSymbol.cs (3)
55return this.OriginalDefinition; 494return (MethodSymbol)OverriddenOrHiddenMembersResult.GetOverriddenMember(this, OriginalDefinition.OverriddenMethod); 938return this.OriginalDefinition.GetUseSiteInfo();
Symbols\OverriddenOrHiddenMembersHelpers.cs (1)
971csharpOverriddenMethod.IsDefinition || csharpOverriddenMethod.OriginalDefinition.MethodHasRuntimeCollision();
Symbols\PublicModel\MethodSymbol.cs (1)
160return _underlying.OriginalDefinition.GetPublicSymbol();
Symbols\Retargeting\RetargetingSymbolTranslator.cs (3)
896Debug.Assert(ReferenceEquals(method, method.OriginalDefinition)); 905if (ReferenceEquals(method.ContainingModule, this.UnderlyingModule) && ReferenceEquals(method, method.OriginalDefinition)) 922var retargetedDefinition = Retarget(method.OriginalDefinition, retargetedMethodComparer);
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (1)
1778MethodSymbol implementingMethodOriginalDefinition = implementingMethod.OriginalDefinition;
Symbols\SubstitutedMethodSymbol.cs (2)
429if ((object)this.OriginalDefinition != (object)other.OriginalDefinition && 430this.OriginalDefinition != other.OriginalDefinition)
Symbols\Synthesized\Records\SynthesizedRecordObjectMethod.cs (1)
47var overridden = overriding.OverriddenMethod?.OriginalDefinition;
Symbols\TypeMap.cs (2)
148return WithAlphaRename(oldOwner.OriginalDefinition.TypeParameters, newOwner, out newTypeParameters); 176var currentParameters = oldOwner.OriginalDefinition.TypeParameters;
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (4)
CodeGen\CodeGenTupleTest.cs (4)
12857Assert.NotSame(m1ToString, m1ToString.OriginalDefinition); 12859Assert.Equal("System.String (T1, T2).ToString()", m1ToString.OriginalDefinition.ToTestDisplayString()); 13538Assert.NotSame(m9Test, m9Test.OriginalDefinition); 13540Assert.Equal("void (T1, T2).Test<U>(U val)", m9Test.OriginalDefinition.ToTestDisplayString());
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler (2)
CompilationContext.cs (1)
1838MethodSymbol sourceMethod = new EECompilationContextMethod(candidateSubstitutedSourceMethod.DeclaringCompilation!, candidateMethod.OriginalDefinition);
Symbols\EEMethodSymbol.cs (1)
660substitutedSourceMethod: this.SubstitutedSourceMethod.OriginalDefinition,
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler.UnitTests (2)
HoistedThisTests.cs (2)
1440Assert.Equal(iteratorMethod, ((EECompilationContextMethod)guessedIterator.OriginalDefinition).UnderlyingMethod.OriginalDefinition);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (38)
Symbols\CovariantReturnTests.cs (2)
273if (method.OriginalDefinition is PEMethodSymbol originalMethod && 313if (getMethod.OriginalDefinition is PEMethodSymbol originalMethod &&
Symbols\DefaultInterfaceImplementationTests.cs (3)
225peModule.Module.GetMethodDefPropsOrThrow(((PEMethodSymbol)m1.OriginalDefinition).Handle, out _, out _, out _, out rva); 32892peModule.Module.GetMethodDefPropsOrThrow(((PEMethodSymbol)m1.OriginalDefinition).Handle, out _, out _, out _, out rva); 33721Assert.NotEqual(m1.OriginalDefinition is PEMethodSymbol, m1.IsExtern);
Symbols\Metadata\PE\LoadingMethods.cs (3)
462Assert.Equal(interfaceMethod, substitutedInterfaceMethod.OriginalDefinition); 498Assert.Equal(interfaceMethod, substitutedInterfaceMethod.OriginalDefinition); 741Assert.Equal(interfaceMethod, innerClassImplementingMethod.OriginalDefinition);
Symbols\OverriddenOrHiddenMembersTests.cs (3)
640Assert.Same(baseClassGetHashCode, derivedClassGetHashCode.OverriddenMethod.OriginalDefinition); 3694Assert.Equal("void Validator<T>.DoValidate(T objectToValidate)", doValidateObject.OverriddenMethod.OriginalDefinition.ToTestDisplayString()); 3950Assert.Equal("void Validator<T>.DoValidate(T objectToValidate)", doValidateObject.OverriddenMethod.OriginalDefinition.ToTestDisplayString());
Symbols\Retargeting\RetargetExplicitInterfaceImplementation.cs (3)
404Assert.Same(interfaceV2Method1, retargetedClassC1Method1Impl.OriginalDefinition); 408Assert.Same(interfaceV2Method1, retargetedClassC2Method1Impl.OriginalDefinition); 412Assert.Same(interfaceV2Method1, retargetedClassC3Method1Impl.OriginalDefinition);
Symbols\Source\MethodTests.cs (2)
1824Assert.Equal(substitutedInterfaceMethod.OriginalDefinition, explicitImpl.OriginalDefinition);
Symbols\StaticAbstractMembersInInterfacesTests.cs (22)
16896Assert.Equal("void C1<T>.M01(System.Int32 x)", c1M01.OriginalDefinition.ToTestDisplayString()); 16903if (c1M01.OriginalDefinition.ContainingModule is PEModuleSymbol) 16978Assert.Equal("void C1<T>.M01(T x)", c1M01.OriginalDefinition.ToTestDisplayString()); 16985if (c1M01.OriginalDefinition.ContainingModule is PEModuleSymbol) 17060Assert.Equal("void C1<T>.I1.M01(System.Int32 x)", c1M01.OriginalDefinition.ToTestDisplayString()); 17131Assert.Equal("void C1<T>.I1<T>.M01(T x)", c1M01.OriginalDefinition.ToTestDisplayString()); 17206Assert.Equal(expectedDisplay, c1M01.OriginalDefinition.ToTestDisplayString()); 17213if (c1M01.OriginalDefinition.ContainingModule is PEModuleSymbol) 17293Assert.Equal(expectedDisplay, c1M01.OriginalDefinition.ToTestDisplayString()); 17300if (c1M01.OriginalDefinition.ContainingModule is PEModuleSymbol) 17403Assert.Equal("void C1<T>.M01(T x)", c1M01.OriginalDefinition.ToTestDisplayString()); 17407Assert.Equal("void C1<T>.M01(System.Int32 x)", c1M01.OriginalDefinition.ToTestDisplayString()); 17505Assert.Equal("void C1<T>.M01(T x)", c1M01.OriginalDefinition.ToTestDisplayString()); 17509Assert.Equal("void C1<T>.M01(System.Int32 x)", c1M01.OriginalDefinition.ToTestDisplayString()); 21734Assert.Equal("C1<T, U> C1<T, U>." + opName + "(C1<T, U> x, U y)", c1M01.OriginalDefinition.ToTestDisplayString()); 21741if (c1M01.OriginalDefinition.ContainingModule is PEModuleSymbol) 21843Assert.Equal("C1<T, U> C1<T, U>.I1<C1<T, U>, U>." + opName + "(C1<T, U> x, U y)", c1M01.OriginalDefinition.ToTestDisplayString()); 21946Assert.Equal(expectedDisplay, c1M01.OriginalDefinition.ToTestDisplayString()); 21953if (c1M01.OriginalDefinition.ContainingModule is PEModuleSymbol) 29669Assert.Equal("U C1<T, U>." + opName + "(C1<T, U> x)", c1M01.OriginalDefinition.ToTestDisplayString()); 29676if (c1M01.OriginalDefinition.ContainingModule is PEModuleSymbol) 29775Assert.Equal("U C1<T, U>.I1<C1<T, U>, U>." + opName + "(C1<T, U> x)", c1M01.OriginalDefinition.ToTestDisplayString());