9 overrides of RefKind
Microsoft.CodeAnalysis.CSharp (9)
Binder\Binder.ValueChecks.cs (1)
3398public override RefKind RefKind
Symbols\FunctionPointers\FunctionPointerParameterSymbol.cs (1)
27public override RefKind RefKind { get; }
Symbols\Metadata\PE\PEParameterSymbol.cs (1)
470public override RefKind RefKind
Symbols\SignatureOnlyParameterSymbol.cs (1)
50public override RefKind RefKind { get { return _refKind; } }
Symbols\Source\SourceClonedParameterSymbol.cs (1)
97public override RefKind RefKind
Symbols\Source\SourceParameterSymbol.cs (1)
215public sealed override RefKind RefKind
Symbols\Source\ThisParameterSymbol.cs (1)
153public override RefKind RefKind
Symbols\Synthesized\SynthesizedParameterSymbol.cs (1)
47public override RefKind RefKind => _refKind;
Symbols\Wrapped\WrappedParameterSymbol.cs (1)
44public sealed override RefKind RefKind
230 references to RefKind
Microsoft.CodeAnalysis.CSharp (230)
Binder\Binder.ValueChecks.cs (22)
368Debug.Assert(parameter.RefKind.IsWritableReference() && parameter.Type.IsRefLikeOrAllowsRefLikeType()); 1416if (parameterSymbol.RefKind is RefKind.In or RefKind.RefReadOnlyParameter && RequiresAssignableVariable(valueKind)) 1421else if (parameterSymbol.RefKind == RefKind.None && RequiresRefAssignableVariable(valueKind)) 1427Debug.Assert(parameterSymbol.RefKind != RefKind.None || !RequiresRefAssignableVariable(valueKind)); 1431if (parameterSymbol.RefKind == RefKind.None && 1530{ RefKind: RefKind.Out, UseUpdatedEscapeRules: true } => SafeContext.ReturnOnly, 1542{ RefKind: RefKind.None } => SafeContext.CurrentMethod, 1544{ HasUnscopedRefAttribute: true, UseUpdatedEscapeRules: true, RefKind: RefKind.Out } => SafeContext.ReturnOnly, 1577Debug.Assert(parameterSymbol.RefKind == RefKind.None || isRefScoped || refSafeToEscape.IsReturnOnly); 2369(param is { RefKind: not RefKind.None, Type: { } type } && type.IsRefLikeOrAllowsRefLikeType())) && 2597(param is { RefKind: not RefKind.None, Type: { } type } && type.IsRefLikeOrAllowsRefLikeType())) && 2728var refKind = parameter?.RefKind ?? RefKind.None; 2734parameter?.RefKind is RefKind.In or RefKind.RefReadOnlyParameter) 2736refKind = parameter.RefKind; 2746parameter.RefKind.IsWritableReference(); 2806refKind = thisParameter.RefKind; 2963return parameter.RefKind == RefKind.Ref && 3047if (parameter.Type.IsRefLikeOrAllowsRefLikeType() && parameter.RefKind != RefKind.Out && GetParameterValEscapeLevel(parameter) is { } valEscapeLevel) 3054if (parameter.RefKind != RefKind.None && GetParameterRefEscapeLevel(parameter) is { } refEscapeLevel) 3118if (parameter.RefKind != RefKind.None && !parameter.IsThis) 3388Debug.Assert(underlyingParameter.RefKind != RefKind.Out); // Shouldn't get here for a constructor 3402if (_underlyingParameter.RefKind is not RefKind.None and var underlyingRefKind)
Binder\Binder_Attributes.cs (1)
252if (attributeConstructor.Parameters.Any(static p => p.RefKind is RefKind.In or RefKind.RefReadOnlyParameter))
Binder\Binder_Conversions.cs (3)
1569if (method.Parameters is not [.., { RefKind: RefKind.None, Type: NamedTypeSymbol parameterType }] 3578sourceRefKind: delegateParameter.RefKind, 3579destinationRefKind: methodParameter.RefKind,
Binder\Binder_Deconstruct.cs (1)
690if (parameters[i].RefKind != RefKind.Out)
Binder\Binder_Expressions.cs (15)
2118if (IsBadLocalOrParameterCapture(parameter, parameter.Type, parameter.RefKind)) 2122if (parameter.RefKind != RefKind.None) 2142(parameter.RefKind != RefKind.None || parameter.Type.IsRestrictedType()) && 2145if (parameter.RefKind != RefKind.None) 2159else if (primaryCtor is { ThisParameter.RefKind: not RefKind.None } && 2618if (thisSymbol is not null && thisSymbol.ContainingSymbol != ContainingMemberOrLambda && thisSymbol.RefKind != RefKind.None) 3874refKind = receiverParameter.RefKind; 3895refKind = parameter.RefKind; 3914refKind = parameter.RefKind; 3989if (argRefKind is RefKind.None or RefKind.In && parameter.RefKind == RefKind.RefReadOnlyParameter) 4003if (parameter.RefKind == RefKind.In) 4013else if (argRefKind == RefKind.None && parameter.RefKind == RefKind.RefReadOnlyParameter) 10690original.Parameters[0] is { Type.SpecialType: SpecialType.System_Int32, RefKind: RefKind.None }) 10791original.Parameters[0] is { Type.SpecialType: SpecialType.System_Int32, RefKind: RefKind.None } && 10792original.Parameters[1] is { Type.SpecialType: SpecialType.System_Int32, RefKind: RefKind.None };
Binder\Binder_Invocation.cs (3)
1271if (receiverParameter.RefKind == RefKind.Ref) 1287else if (receiverParameter.RefKind == RefKind.In) 1375if (extensionParameter.RefKind == RefKind.Ref)
Binder\Binder_Operators.cs (4)
3861(parameterCount == 0 || method.Parameters[0].RefKind is RefKind.None or RefKind.In); 3925if (!((extensionParameter.Type.IsValueType && extensionParameter.RefKind == RefKind.Ref) || 3926(extensionParameter.Type.IsReferenceType && extensionParameter.RefKind == RefKind.None))) 4267if (parameterSymbol.RefKind != RefKind.None)
Binder\Binder_Patterns.cs (1)
370Parameters: [{ RefKind: RefKind.Out }],
Binder\Binder_Statements.cs (2)
2185var delegateRefKind = delegateParameters[i].RefKind; 2245var delegateRefKind = delegateParameters[i].RefKind;
Binder\ExecutableCodeBinder.cs (1)
115if (parameter.RefKind != RefKind.None)
Binder\ForEachLoopBinder.cs (1)
252else if (getEnumeratorMethod.IsExtensionBlockMember() && getEnumeratorMethod.ContainingType.ExtensionParameter.RefKind == RefKind.Ref)
Binder\RefSafetyAnalysis.cs (1)
1027!parameter.RefKind.IsWritableReference())
Binder\Semantics\Conversions\Conversions.cs (2)
451isParamsArray: parameter.IsParamsArray, isParamsCollection: parameter.IsParamsCollection, parameter.RefKind); 455analyzedArguments.RefKinds.Add(parameter.RefKind);
Binder\Semantics\Conversions\ConversionsBase.cs (5)
1529delegateParameterRefKind: delegateParameters[p].RefKind, 1584if (delegateParameters[p].RefKind == RefKind.Out) 3421if (sourceParam.RefKind != destinationParam.RefKind) 3426if (!hasConversion(sourceParam.RefKind, destinationSig.Parameters[i].TypeWithAnnotations, sourceSig.Parameters[i].TypeWithAnnotations, ref useSiteInfo))
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (3)
2451if ((sourceParam.Type.IsReferenceType || sourceParam.Type.IsFunctionPointer()) && sourceParam.RefKind == RefKind.None) 2801if ((sourceParam.Type.IsReferenceType || sourceParam.Type.IsFunctionPointer()) && sourceParam.RefKind == RefKind.None) 3207[extension.ExtensionParameter.RefKind],
Binder\Semantics\OverloadResolution\OverloadResolution.cs (5)
2692return isExtensionParameterOfStaticExtensionMember ? RefKind.None : parameter.RefKind; 3796if (param1.RefKind != param2.RefKind) 3916hasSomeRefKinds |= member.ContainingType.ExtensionParameter.RefKind != RefKind.None; 3969var paramRefKind = parameter.RefKind;
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (2)
1161if (parameters[i].RefKind != RefKind.None) 1231RefKind refParameter = parameter.RefKind;
BoundTree\BoundDagEvaluation.cs (2)
327Debug.Assert(parameter.RefKind == RefKind.Out); 339Debug.Assert(parameter.RefKind == RefKind.Out);
BoundTree\BoundExpressionExtensions.cs (1)
28return ((BoundParameter)node).ParameterSymbol.RefKind;
BoundTree\UnboundLambda.cs (1)
1176refKindsBuilder.Add(p.RefKind);
CodeGen\CodeGenerator_HasHome.cs (1)
88((BoundParameter)expression).ParameterSymbol.RefKind is not (RefKind.In or RefKind.RefReadOnlyParameter);
CodeGen\CodeGenerator_RefSafety.cs (2)
100if (parameter.RefKind.IsWritableReference()) 105else if (parameter.RefKind != RefKind.None && parameter.EffectiveScope == ScopedKind.None)
CodeGen\EmitAddress.cs (1)
480if (parameterSymbol.RefKind == RefKind.None)
CodeGen\EmitExpression.cs (12)
962Debug.Assert(parameters.All(p => p.RefKind == RefKind.None) || !argRefKindsOpt.IsDefault, "there are nontrivial parameters, so we must have argRefKinds"); 988Debug.Assert(argRefKind == parameters[i].RefKind || 989parameters[i].RefKind switch 999Debug.Assert(parameters[i].RefKind != RefKind.RefReadOnlyParameter, 1003argRefKind = parameters[i].RefKind switch 1299return ((BoundParameter)receiver).ParameterSymbol.RefKind != RefKind.None; 1435if (parameter.ParameterSymbol.RefKind != RefKind.None) 2249return ((BoundParameter)receiver).ParameterSymbol.RefKind != RefKind.None; 2670if (System.Linq.ImmutableArrayExtensions.All(ctor.Parameters, p => p.RefKind == RefKind.None) && 2801return ((BoundParameter)left).ParameterSymbol.RefKind == RefKind.None; 2844if (left.ParameterSymbol.RefKind != RefKind.None && 3341if (parameter.ParameterSymbol.RefKind != RefKind.None && !refAssign)
CodeGen\EmitStatement.cs (1)
1319if (parameter.ParameterSymbol.RefKind == RefKind.None)
CodeGen\Optimizer.cs (1)
1050if (((BoundParameter)lhs).ParameterSymbol.RefKind != RefKind.None)
DocumentationComments\DocumentationCommentIDVisitor.PartVisitor.cs (1)
248if (symbol.RefKind != RefKind.None)
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (6)
671return parameter.RefKind is RefKind.None == other.RefKind is RefKind.None && 701ValidateFunctionPointerParamOrReturn(param.TypeWithAnnotations, param.RefKind, param.RefCustomModifiers, allowOut: true); 702ValidateFunctionPointerParamOrReturn(otherParam.TypeWithAnnotations, otherParam.RefKind, otherParam.RefCustomModifiers, allowOut: true); 704return param.RefKind == otherParam.RefKind && AreTypesEqual(param.TypeWithAnnotations, otherParam.TypeWithAnnotations);
Emitter\Model\ParameterSymbolAdapter.cs (1)
41return AdaptedParameterSymbol.RefKind != RefKind.None;
Emitter\Model\ParameterTypeInformation.cs (1)
39return _underlyingParameter.RefKind != RefKind.None;
FlowAnalysis\AbstractFlowPass.cs (2)
1491var thisRefKind = thisParameter.RefKind; 1606if (method is null || Binder.GetCorrespondingParameter(i, method.Parameters, argsToParamsOpt, expanded)?.RefKind.IsWritableReference() != false)
FlowAnalysis\DataFlowsOutWalker.cs (1)
233((param.RefKind != RefKind.None && !param.IsImplicitlyDeclared && !RegionContains(param.GetFirstLocation().SourceSpan)) ||
FlowAnalysis\DefiniteAssignment.cs (11)
350NoteWrite(parameter, value: null, read: true, isRef: parameter.RefKind != RefKind.None); 1187((ParameterSymbol)symbol).RefKind == RefKind.Out) 1575if (isRef && param.RefKind == RefKind.Out) 1767if (parameter.RefKind != RefKind.Out) 1779if (thisParameter.RefKind != RefKind.Out) 1791if (extensionParameter.RefKind != RefKind.Out) 1814if (current is not MethodSymbol && parameter.RefKind == RefKind.Out) 1844if (parameter.RefKind == RefKind.Out && !(this.CurrentSymbol is MethodSymbol currentMethod && currentMethod.IsAsync)) // out parameters not allowed in async 1852NoteWrite(parameter, value: null, read: true, isRef: parameter.RefKind != RefKind.None); 1910if (!parameter.IsThis && parameter.RefKind != RefKind.Out && parameter.ContainingSymbol is SynthesizedPrimaryConstructor primaryCtor) 1922if (parameter.RefKind != RefKind.None)
FlowAnalysis\NullableWalker.cs (9)
1384var refKind = parameter.RefKind; 3041if (parameter.RefKind != RefKind.Out) 4729formalParameterRefKinds: [extensionParameter.RefKind], 7073return extensionParameter.RefKind == RefKind.Ref ? RefKind.Ref : RefKind.None; 11375case BoundParameter { ParameterSymbol: { RefKind: RefKind.None } parameter } when 11509VisitArgumentConversionAndInboundAssignmentsAndPreConditions(conversionOpt: null, variable.Expression, underlyingConversion, parameter.RefKind, 11524variable.Expression, parameter.RefKind, parameter, parameter.TypeWithAnnotations, GetRValueAnnotations(parameter), 12117ImmutableArray<RefKind> refKindsOpt = extensionParameter.RefKind == RefKind.Ref ? [RefKind.Ref] : default; 13451parameter.RefKind,
FlowAnalysis\ReadWriteWalker.cs (3)
87if (p.RefKind != RefKind.None) _readOutside.Add(p); 90if (_symbol.TryGetInstanceExtensionParameter(out ParameterSymbol extensionParameter) && extensionParameter.RefKind != RefKind.None) 100if ((object)thisParameter != null && thisParameter.RefKind != RefKind.None)
Lowering\AsyncRewriter\RuntimeAsyncRewriter.cs (2)
56if (thisParameter is { Type.IsValueType: true, RefKind: not RefKind.None }) 313Debug.Assert(thisParameter is not { Type.IsValueType: true, RefKind: RefKind.Ref });
Lowering\DiagnosticsPass_ExpressionTrees.cs (1)
621if (p.RefKind != RefKind.None && p.TryGetFirstLocation() is Location location)
Lowering\DiagnosticsPass_Warnings.cs (1)
244if (method.Parameters[i].RefKind != RefKind.None && (argumentRefKindsOpt.IsDefault || argumentRefKindsOpt[i] == RefKind.None)) return true;
Lowering\ExtensionMethodReferenceRewriter.cs (1)
105var receiverRefKind = method.Parameters[0].RefKind;
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (2)
309if (parameter.RefKind == RefKind.Out || parameter.IsDiscard) 455Debug.Assert(parameter.RefKind == RefKind.None);
Lowering\Instrumentation\ModuleCancellationInstrumenter.cs (1)
186member is MethodSymbol { Parameters: [.., { RefKind: RefKind.None, Type: { } lastParamType }] parametersWithCancellationToken } overload &&
Lowering\LocalRewriter\LocalRewriter.cs (1)
1142symbol.Parameters.Any(static p => p.RefKind == RefKind.In))
Lowering\LocalRewriter\LocalRewriter_Call.cs (9)
254|| methodThisParameter.RefKind != interceptorThisParameterForCompare.RefKind: 300var thisRefKind = methodThisParameter.RefKind; 322argumentRefKindsOpt = method.Parameters.SelectAsArray(static param => param.RefKind); 903RefKind paramRefKind = parameters[paramIndex].RefKind; 958RefKind receiverRefKind = methodOrIndexer.ContainingType.ExtensionParameter.RefKind; 1225var paramRefKind = parameters[i].RefKind; 1423RefKind paramRefKind = parameters[p].RefKind; 1703RefKind paramRefKind = parameters[argIndex].RefKind;
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (2)
258return symbol.IsExtensionBlockMember() && !symbol.IsStatic && symbol.ContainingType.ExtensionParameter is { RefKind: RefKind.None, Type.IsReferenceType: false }; 985((BoundParameter)expression).ParameterSymbol.RefKind != RefKind.None ||
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (1)
171case BoundParameter { ParameterSymbol: { RefKind: RefKind.None } parameterSymbol }:
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (1)
330possiblyRefCapturedReceiver = _factory.StoreToTemp(possiblyRefCapturedReceiver, out var refCapture, createSpan.Parameters[0].RefKind == RefKind.In ? RefKindExtensions.StrictIn : RefKind.Ref);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (1)
146if (unwrappedRight is { ConstantValueOpt: not null } or BoundLocal { LocalSymbol.IsRef: false } or BoundParameter { ParameterSymbol.RefKind: RefKind.None } &&
Lowering\LocalRewriter\LocalRewriter_ObjectOrCollectionInitializerExpression.cs (2)
186.All(p => p.RefKind is RefKind.None or RefKind.In or RefKind.RefReadOnlyParameter)); 203if (initializer.InvokedAsExtensionMethod && addMethod.Parameters[0].RefKind == RefKind.Ref)
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (3)
490readOnlySpanCtorRefParamGeneric.Parameters[0].RefKind != RefKind.Out) 528Debug.Assert(readOnlySpanCtorRefParamChar.Parameters[0].RefKind != RefKind.Out); 535argumentRefKindsOpt: [readOnlySpanCtorRefParamChar.Parameters[0].RefKind == RefKind.Ref ? RefKind.Ref : RefKindExtensions.StrictIn],
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (1)
641return ((BoundParameter)expression).ParameterSymbol.RefKind != RefKind.None;
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (1)
500Debug.Assert(method.Parameters.AsSpan()[1..].All(static (p) => (p.IsOptional || p.IsParams) && p.RefKind is RefKind.None or RefKind.In or RefKind.RefReadOnlyParameter));
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (2)
222case ParameterSymbol { RefKind: RefKind.None }: 270Debug.Assert(parameter.IsThis || parameter.RefKind == RefKind.None);
Lowering\StateMachineRewriter\RefInitializationHoister.cs (2)
286or BoundParameter { ParameterSymbol.RefKind: RefKind.None }); 291or BoundParameter { ParameterSymbol.RefKind: RefKind.None })
Lowering\SynthesizedMethodBaseSymbol.cs (1)
126p.RefKind,
Symbols\Compilation_WellKnownMembers.cs (2)
1049handle(param.RefKind, param.RefCustomModifiers, param.TypeWithAnnotations); 1214return parameter.RefKind != RefKind.None;
Symbols\Extensions\SynthesizedExtensionMarker.cs (1)
91RefKind parameterRefKind = parameter.RefKind;
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (1)
469originalParam.RefKind,
Symbols\MemberSignatureComparer.cs (2)
783var refKind1 = param1.RefKind; 784var refKind2 = param2.RefKind;
Symbols\Metadata\PE\DynamicTypeDecoder.cs (1)
369var (transformedParamType, paramTransformed) = handle(ref this, param.RefKind, param.RefCustomModifiers, param.TypeWithAnnotations);
Symbols\Metadata\PE\MemberRefMetadataDecoder.cs (1)
254if ((candidateParam.RefKind != RefKind.None) != targetParam.IsByRef)
Symbols\Metadata\PE\PEMethodSymbol.cs (1)
1157switch (parameter.RefKind)
Symbols\NamedTypeSymbol.cs (4)
392if (thisParam.RefKind == RefKind.Ref && !thisParam.Type.IsValueType) 397if (thisParam.RefKind is RefKind.In or RefKind.RefReadOnlyParameter 1968Parameters: [{ RefKind: RefKind.In or RefKind.None }] 2002return ctor is { DeclaredAccessibility: Accessibility.Public, ParameterCount: 1, Parameters: [{ RefKind: RefKind.In or RefKind.None }] };
Symbols\ParameterSignature.cs (1)
46var refKind = parameter.RefKind;
Symbols\ParameterSymbol.cs (2)
167((refKind = RefKind) == RefKind.None || 475RefKind IParameterSymbolInternal.RefKind => RefKind;
Symbols\PropertySymbolExtensions.cs (2)
73if (param.RefKind == RefKind.Ref || param.RefKind == RefKind.Out)
Symbols\PublicModel\ParameterSymbol.cs (1)
59RefKind IParameterSymbol.RefKind => _underlying.RefKind;
Symbols\ReducedExtensionMethodSymbol.cs (1)
544internal override bool IsEffectivelyReadOnly => _reducedFrom.Parameters[0].RefKind is RefKind.In or RefKind.RefReadOnlyParameter;
Symbols\Retargeting\RetargetingSymbolTranslator.cs (2)
1008param.RefKind), 1082param.RefKind),
Symbols\Source\CustomModifierUtils.cs (1)
146destinationParameter.RefKind != RefKind.None ? sourceParameter.RefCustomModifiers : ImmutableArray<CustomModifier>.Empty,
Symbols\Source\ExplicitInterfaceHelpers.cs (2)
438if (implementedMemberParameters[i].RefKind != collisionCandidateParameters[i].RefKind)
Symbols\Source\ParameterHelpers.cs (4)
323refKind: parameter.RefKind, containingSymbol: parameter.ContainingSymbol, thisKeyword: thisKeyword, paramsKeyword: paramsKeyword, firstDefault: firstDefault, diagnostics: diagnostics); 348if (parameter.RefKind == RefKind.In) 359else if (parameter.RefKind == RefKind.RefReadOnlyParameter) 449return IsRefScopedByDefault(parameter.UseUpdatedEscapeRules, parameter.RefKind);
Symbols\Source\SourceMemberContainerSymbol.cs (4)
2358var refKind1 = method1.Parameters[i].RefKind; 2359var refKind2 = method2.Parameters[i].RefKind; 4622if (methodParam.RefKind != RefKind.None) 4645methodParams[0].RefKind == RefKind.None &&
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (10)
1337overrideParameter.RefKind, 1346overrideParameter.RefKind, 1427p is { EffectiveScope: ScopedKind.None, RefKind: RefKind.Ref } or { EffectiveScope: ScopedKind.ScopedRef, RefKind: RefKind.Out } && 1438if ((overrideThisParameter is { RefKind: RefKind.Ref or RefKind.Out } && overrideThisParameter.Type.IsRefLikeOrAllowsRefLikeType()) || 1444else if (parameters.Any(p => (p.RefKind is RefKind.Ref or RefKind.Out) && p.Type.IsRefLikeOrAllowsRefLikeType())) 1455int nRefParameters = parameters.Count(p => p.RefKind is RefKind.Ref or RefKind.In or RefKind.RefReadOnlyParameter or RefKind.Out); 1460else if (parameters.Any(p => p.RefKind == RefKind.None && p.Type.IsRefLikeOrAllowsRefLikeType())) 1558if (baseParameter.RefKind != overrideParameter.RefKind)
Symbols\Source\SourceMethodSymbol.cs (1)
69if (parameter.RefKind != RefKind.None)
Symbols\Source\SourceMethodSymbolWithAttributes.cs (2)
785if (param.RefKind == RefKind.Out) 1414checkAndReportManagedTypes(param.Type, param.RefKind, param.GetNonNullSyntaxNode(), isParam: true, diagnostics);
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (3)
334if (parameter.RefKind != RefKind.None) 402appendRefKind(extensionParameter.RefKind, builder, forParameter: true); 732appendRefKind(parameter.RefKind, builder, forParameter: true);
Symbols\Source\SourceOrdinaryMethodSymbol.cs (2)
212var parameter0RefKind = this.Parameters[0].RefKind; 865else if (IsPartial && !HasExplicitAccessModifier && Parameters.Any(static p => p.RefKind == RefKind.Out))
Symbols\Source\SourceParameterSymbolBase.cs (2)
100AddSynthesizedAttribute(ref attributes, compilation.SynthesizeDynamicAttribute(type.Type, type.CustomModifiers.Length + parameter.RefCustomModifiers.Length, parameter.RefKind)); 119switch (parameter.RefKind)
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (4)
399switch (extensionParameter.RefKind) 430throw ExceptionUtilities.UnexpectedValue(extensionParameter.RefKind); 473if (p.RefKind != RefKind.None && p.RefKind != RefKind.In)
Symbols\SymbolExtensions.cs (1)
512refKind = parameter.RefKind;
Symbols\Synthesized\Records\SynthesizedRecordClone.cs (1)
124if (ctor.ParameterCount == 1 && ctor.Parameters[0].RefKind == RefKind.None &&
Symbols\Synthesized\Records\SynthesizedRecordCopyCtor.cs (1)
148method.Parameters[0].RefKind == RefKind.None;
Symbols\Synthesized\Records\SynthesizedRecordEqualityOperator.cs (1)
45if (member is MethodSymbol candidate && candidate.ParameterCount == 1 && candidate.Parameters[0].RefKind == RefKind.None &&
Symbols\Synthesized\SynthesizedHotReloadExceptionConstructorSymbol.cs (1)
58delegateInvoke.GetParameters() is not [{ RefKind: RefKind.None } parameter] ||
Symbols\Synthesized\SynthesizedParameterSymbol.cs (2)
315oldParam.RefKind, 365Debug.Assert(baseParameterForAttributes is null || baseParameterForAttributes.RefKind == refKind);
Symbols\VarianceSafety.cs (1)
245requireOutputSafety: param.RefKind != RefKind.None,
Symbols\Wrapped\WrappedParameterSymbol.cs (1)
46get { return _underlyingParameter.RefKind; }