2 overrides of OriginalDefinition
Microsoft.CodeAnalysis.CSharp (2)
Symbols\ReducedExtensionMethodSymbol.cs (1)
377public override MethodSymbol OriginalDefinition
Symbols\SubstitutedMethodSymbol.cs (1)
143public sealed override MethodSymbol OriginalDefinition
123 references to OriginalDefinition
Microsoft.CodeAnalysis.CSharp (123)
Binder\Binder.ValueChecks.cs (1)
106if (method.OriginalDefinition.TryGetCorrespondingExtensionImplementationMethod() is MethodSymbol implementationMethod)
Binder\Binder_Conversions.cs (4)
1040_diagnostics.Add(ErrorCode.ERR_ParamsCollectionInfiniteChainOfConstructorCalls, syntax, inProgress, inProgressConstructor.OriginalDefinition); 1588methodWithTargetTypeParameters = method.OriginalDefinition.Construct(allTypeParameters); 3005var isSynthesized = delegateType.DelegateInvokeMethod?.OriginalDefinition is SynthesizedDelegateInvokeMethod; 3737var sourceMethod = selectedMethod.OriginalDefinition as SourceOrdinaryMethodSymbol;
Binder\Binder_Expressions.cs (2)
10787return method.OriginalDefinition is var original && 10852property.GetOwnOrInheritedGetMethod()?.OriginalDefinition is MethodSymbol getMethod &&
Binder\Binder_Operators.cs (2)
1767SourceUserDefinedOperatorSymbol.IsSelfConstrainedTypeParameter((definition = signature.Method.OriginalDefinition).ReturnType.StrippedType(), definition.ContainingType)); 1948NamedTypeSymbol extensionContainingType = signature.Method.OriginalDefinition.ContainingType.ContainingType;
Binder\Binder_Patterns.cs (3)
303declaredMethod = candidate.OriginalDefinition.AsMember(declaringType); 393return isMatch(method.OriginalDefinition, unionDefinition); 404method = method.OriginalDefinition.AsMember(container);
Binder\ForEachLoopBinder.cs (1)
1756return moveNextMethodCandidate.OriginalDefinition.ReturnType.SpecialType != SpecialType.System_Boolean;
Binder\Semantics\Conversions\Conversions.cs (1)
60if (methodSymbol.OriginalDefinition is SynthesizedDelegateInvokeMethod invoke)
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (3)
1377var p = op1.Method.OriginalDefinition.GetParameters(); 1394var p = op2.Method.OriginalDefinition.GetParameters(); 1605var method = candidate.Method.OriginalDefinition;
Binder\Semantics\Operators\UnaryOperatorOverloadResolution.cs (9)
253if (x.OriginalDefinition.ContainingType.ContainingType != (object)x.OriginalDefinition.ContainingType.ContainingType) 258var xExtension = x.OriginalDefinition.ContainingType; 261var yExtension = y.OriginalDefinition.ContainingType; 270x.OriginalDefinition.AsMember(Normalize(xExtension)), 271y.OriginalDefinition.AsMember(Normalize(yExtension))); 288int result = typeComparer.GetHashCode(op.OriginalDefinition.ContainingType.ContainingType); 290var extension = op.OriginalDefinition.ContainingType; 295foreach (var parameter in op.OriginalDefinition.AsMember(Normalize(extension)).Parameters)
BoundTree\BoundExpressionExtensions.cs (1)
146delegateType is { DelegateInvokeMethod.OriginalDefinition: SynthesizedDelegateInvokeMethod { RefKind: RefKind.RefReadOnly } })
BoundTree\Constructors.cs (2)
140Debug.Assert(method.OriginalDefinition is ErrorMethodSymbol); 233hasErrors: method.OriginalDefinition is ErrorMethodSymbol
CodeGen\EmitExpression.cs (4)
2225var originalMethod = method.OriginalDefinition; 2505expression.Constructor.OriginalDefinition == (object)this._module.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__ctor_Array)) || 2507expression.Constructor.OriginalDefinition == (object)this._module.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__ctor_Array_Start_Length))) && 2518var 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 (4)
78var synthesizedGlobalMethod = AdaptedMethodSymbol.OriginalDefinition as SynthesizedGlobalMethodSymbol; 282(MethodSymbol)AdaptedMethodSymbol.OriginalDefinition, 298return ((MethodSymbol)AdaptedMethodSymbol.OriginalDefinition).GetCciAdapter(); 308if (AdaptedMethodSymbol.OriginalDefinition is SynthesizedGlobalMethodSymbol synthesizedGlobalMethod)
Emitter\Model\PEModuleBuilder.cs (1)
1416Debug.Assert(!(methodSymbol.OriginalDefinition is NativeIntegerMethodSymbol));
Emitter\Model\SpecializedMethodReference.cs (1)
35return UnderlyingMethod.OriginalDefinition.GetCciAdapter();
FlowAnalysis\AbstractFlowPass.cs (4)
1433if (node.Method?.OriginalDefinition is LocalFunctionSymbol localFunc) 1567Debug.Assert(method?.OriginalDefinition.MethodKind != MethodKind.LocalFunction); 1673if (node.MethodOpt?.OriginalDefinition is LocalFunctionSymbol localFunc) 1800else if (node.SymbolOpt?.OriginalDefinition is LocalFunctionSymbol localFunc)
FlowAnalysis\NullableWalker.cs (16)
5718NamedTypeSymbol extension = method.OriginalDefinition.ContainingType; 5726method.OriginalDefinition.ParameterTypesWithAnnotations, 5727method.OriginalDefinition.ParameterRefKinds, 5740method = method.OriginalDefinition.AsMember(extension); 7271|| method.OriginalDefinition.Equals(compilation.GetWellKnownTypeMember(WellKnownMember.System_Threading_Interlocked__CompareExchange_T), SymbolEqualityComparer.ConsiderEverything.CompareKind); 7354else if (method.OriginalDefinition == compilation.GetSpecialTypeMember(SpecialMember.System_Nullable_T_get_Value)) 7733if (node is BoundCall { Method: { OriginalDefinition: LocalFunctionSymbol localFunction } }) 9872if (method?.OriginalDefinition is LocalFunctionSymbol localFunc) 10628static (factory, factoryDefinition) => factory.OriginalDefinition == (object)factoryDefinition, 10629factory.OriginalDefinition); 10855if (node.MethodOpt?.OriginalDefinition is LocalFunctionSymbol localFunc) 11456if (deconstructMethod.OriginalDefinition != deconstructMethod) 12814NamedTypeSymbol extension = method.OriginalDefinition.ContainingType; 12822method.OriginalDefinition.ParameterTypesWithAnnotations, 12823method.OriginalDefinition.ParameterRefKinds, 12832method = method.OriginalDefinition.AsMember(extension);
Lowering\BoundTreeToDifferentEnclosingContextRewriter.cs (1)
280return ((MethodSymbol)method.OriginalDefinition)
Lowering\ClosureConversion\ClosureConversion.Analysis.Tree.cs (4)
448_methodsConvertedToDelegates.Add(node.Symbol.OriginalDefinition); 456=> VisitNestedFunction(node.Symbol.OriginalDefinition, node.Body); 463AddIfCaptured(node.Method.OriginalDefinition, node.Syntax); 474var method = node.MethodOpt.OriginalDefinition;
Lowering\ClosureConversion\ClosureConversion.cs (2)
874Analysis.GetNestedFunctionInTree(_analysis.ScopeTree, node.Method.OriginalDefinition).SynthesizedLoweredMethod : node.Method; 893var function = Analysis.GetNestedFunctionInTree(_analysis.ScopeTree, localFunc.OriginalDefinition);
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
223if (method?.OriginalDefinition is LocalFunctionSymbol localFunction)
Lowering\ExtensionMethodBodyRewriter.cs (1)
162return ((MethodSymbol)_symbolMap[symbol.OriginalDefinition]).ConstructIfGeneric(TypeMap.SubstituteTypes(symbol.TypeArgumentsWithAnnotations));
Lowering\ExtensionMethodReferenceRewriter.cs (6)
102Debug.Assert(boundCall.Method.OriginalDefinition.TryGetCorrespondingExtensionImplementationMethod() == (object)method.OriginalDefinition); 156method.OriginalDefinition.TryGetCorrespondingExtensionImplementationMethod() is MethodSymbol implementationMethod) 169method.OriginalDefinition.TryGetCorrespondingExtensionImplementationMethod() is null); 221Debug.Assert(node.MethodOpt!.OriginalDefinition.TryGetCorrespondingExtensionImplementationMethod() == (object)methodOpt.OriginalDefinition);
Lowering\Instrumentation\ModuleCancellationInstrumenter.cs (2)
162var methodDefinition = method.OriginalDefinition; 170if (member == _factory.TopLevelMethod?.OriginalDefinition)
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
111module.EmbeddedTypesManagerOpt.EmbedMethodIfNeedTo(m.OriginalDefinition.GetCciAdapter(), syntaxNode, _diagnostics.DiagnosticBag);
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
137return addMethod.Equals(collectionInitializer.AddMethod.OriginalDefinition);
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (1)
1070method = method.OriginalDefinition;
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (1)
1107if (method is not { Name: WellKnownMemberNames.SliceMethodName, OriginalDefinition: var originalDefinition, ContainingType: NamedTypeSymbol containingType })
Lowering\SpillSequenceSpiller.cs (8)
439if (call.Method.OriginalDefinition is SynthesizedInlineArrayFirstElementRefMethod or SynthesizedInlineArrayFirstElementRefReadOnlyMethod) 444else if (call.Method.OriginalDefinition is SynthesizedInlineArrayElementRefMethod or SynthesizedInlineArrayElementRefReadOnlyMethod) 448else if (call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_Span_T__get_Item) || 449call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__get_Item)) 458else if (call.Method.OriginalDefinition is SynthesizedInlineArrayAsSpanMethod or SynthesizedInlineArrayAsReadOnlySpanMethod) 462else if (call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_Span_T__Slice_Int_Int) || 463call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__Slice_Int_Int)) 484objectCreationExpression.Constructor.OriginalDefinition == _F.Compilation.GetSpecialTypeMember(SpecialMember.System_ReadOnlySpan_T__ctor_Reference))
Lowering\SynthesizedMethodBaseSymbol.cs (2)
196get { return this.TypeMap.SubstituteType(this.BaseMethod.OriginalDefinition.ReturnTypeWithAnnotations); } 201get { return this.TypeMap.SubstituteCustomModifiers(this.BaseMethod.OriginalDefinition.RefCustomModifiers); }
Lowering\SyntheticBoundNodeFactory.cs (1)
889type: method.ReturnType, hasErrors: method.OriginalDefinition is ErrorMethodSymbol)
Operations\CSharpOperationFactory.cs (2)
709=> boundObjectCreationExpression is { ResultKind: not LookupResultKind.OverloadResolutionFailure, Constructor.OriginalDefinition: not ErrorMethodSymbol }; 902if (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)
504symbol.GetSymbol()?.OriginalDefinition is SourceUserDefinedOperatorSymbolBase sourceUserDefinedOperatorSymbolBase)
Symbols\ConstraintsHelper.cs (2)
871((MethodSymbol)method.OriginalDefinition).TypeParameters, 1611if (ReferenceEquals(method.OriginalDefinition, method))
Symbols\ConstructedMethodSymbol.cs (2)
20map: new TypeMap(constructedFrom.ContainingType, ((MethodSymbol)constructedFrom.OriginalDefinition).TypeParameters, typeArgumentsWithAnnotations), 21originalDefinition: (MethodSymbol)constructedFrom.OriginalDefinition,
Symbols\MemberSymbolExtensions.cs (1)
98return member is { ContainingSymbol: NamedTypeSymbol { IsExtension: true }, OriginalDefinition: not SynthesizedExtensionMarker };
Symbols\MethodSymbol.cs (3)
57return this.OriginalDefinition; 511return (MethodSymbol)OverriddenOrHiddenMembersResult.GetOverriddenMember(this, OriginalDefinition.OverriddenMethod); 965return this.OriginalDefinition.GetUseSiteInfo();
Symbols\NamedTypeSymbol.cs (2)
372if (implementationsToShadow is null || !implementationsToShadow.Remove(method.OriginalDefinition)) 465shadows.OriginalDefinition.TryGetCorrespondingExtensionImplementationMethod() is { } toShadow)
Symbols\OverriddenOrHiddenMembersHelpers.cs (1)
971csharpOverriddenMethod.IsDefinition || csharpOverriddenMethod.OriginalDefinition.MethodHasRuntimeCollision();
Symbols\PublicModel\MethodSymbol.cs (2)
162return _underlying.OriginalDefinition.GetPublicSymbol(); 359var implDefinition = _underlying.OriginalDefinition.TryGetCorrespondingExtensionImplementationMethod();
Symbols\Retargeting\RetargetingSymbolTranslator.cs (3)
877Debug.Assert(ReferenceEquals(method, method.OriginalDefinition)); 886if (ReferenceEquals(method.ContainingModule, this.UnderlyingModule) && ReferenceEquals(method, method.OriginalDefinition)) 903var retargetedDefinition = Retarget(method.OriginalDefinition, retargetedMethodComparer);
Symbols\Source\SourceMemberContainerSymbol.cs (1)
2349if (method1.OriginalDefinition is SourceMemberMethodSymbol { MethodKind: MethodKind.Constructor } constructor &&
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (1)
1894MethodSymbol implementingMethodOriginalDefinition = implementingMethod.OriginalDefinition;
Symbols\SubstitutedMethodSymbol.cs (2)
445if ((object)this.OriginalDefinition != (object)other.OriginalDefinition && 446this.OriginalDefinition != other.OriginalDefinition)
Symbols\Synthesized\Records\SynthesizedRecordObjectMethod.cs (1)
41var overridden = overriding.OverriddenMethod?.OriginalDefinition;
Symbols\Synthesized\SynthesizedPropertySymbol.cs (1)
68F.CurrentFunction = this.OriginalDefinition;
Symbols\TypeMap.cs (2)
148return WithAlphaRename(oldOwner.OriginalDefinition.TypeParameters, newOwner, propagateAttributes: propagateAttributes, out newTypeParameters); 171var currentParameters = oldOwner.OriginalDefinition.TypeParameters;