19 overrides of IsRefLikeType
Microsoft.CodeAnalysis.CSharp (19)
Symbols\AnonymousTypes\PublicSymbols\AnonymousManager.TypeOrDelegatePublicSymbol.cs (1)
116public sealed override bool IsRefLikeType
Symbols\AnonymousTypes\SynthesizedSymbols\AnonymousType.TypeOrDelegateTemplateSymbol.cs (1)
167public sealed override bool IsRefLikeType
Symbols\ArrayTypeSymbol.cs (1)
241public sealed override bool IsRefLikeType
Symbols\DynamicTypeSymbol.cs (1)
112public sealed override bool IsRefLikeType
Symbols\ErrorTypeSymbol.cs (1)
111public sealed override bool IsRefLikeType
Symbols\FunctionPointers\FunctionPointerTypeSymbol.cs (1)
77public override bool IsRefLikeType => false;
Symbols\FunctionTypeSymbol.cs (1)
104public override bool IsRefLikeType => false;
Symbols\Metadata\PE\PENamedTypeSymbol.cs (1)
2886public override bool IsRefLikeType
Symbols\PointerTypeSymbol.cs (1)
112public sealed override bool IsRefLikeType
Symbols\Source\SourceMemberContainerSymbol.cs (1)
889public sealed override bool IsRefLikeType => HasFlag(DeclarationModifiers.Ref);
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListEnumeratorTypeSymbol.cs (1)
149public override bool IsRefLikeType => false;
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
862public override bool IsRefLikeType => false;
Symbols\Synthesized\SynthesizedContainer.cs (1)
160public sealed override bool IsRefLikeType => false;
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (1)
95public override bool IsRefLikeType => false;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (1)
112public override bool IsRefLikeType => false;
Symbols\Synthesized\SynthesizedInlineArrayTypeSymbol.cs (1)
66public override bool IsRefLikeType => false;
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (1)
59public override bool IsRefLikeType => false;
Symbols\TypeParameterSymbol.cs (1)
600public sealed override bool IsRefLikeType
Symbols\Wrapped\WrappedNamedTypeSymbol.cs (1)
229public override bool IsRefLikeType
29 references to IsRefLikeType
Microsoft.CodeAnalysis.CSharp (29)
Binder\Binder.ValueChecks.cs (4)
2880return method.ContainingType.IsRefLikeType; 4461if (fieldSymbol.IsStatic || !fieldSymbol.ContainingType.IsRefLikeType) 4788if (expr.Type?.IsRefLikeType != true) 5177if (fieldSymbol.IsStatic || !fieldSymbol.ContainingType.IsRefLikeType)
Binder\Binder_Operators.cs (3)
5208if (targetType.IsRefLikeType) 5216else if (operandType.IsRefLikeType) 5638if (operandType?.IsRefLikeType == true)
Binder\Binder_Statements.cs (1)
765Debug.Assert(expr.Type.IsRefLikeType || hasAwait); // pattern dispose lookup is only valid on ref structs or asynchronous usings
Binder\ForEachLoopBinder.cs (3)
1206if (enumeratorType.IsRefLikeType || isAsync) 1262Debug.Assert(!enumeratorType.IsRefLikeType); // Ref like types are supposed to be structs, therefore, sealed. 1854needSupportForRefStructInterfaces = type.IsRefLikeType;
Binder\LockBinder.cs (1)
91if (scopeType is not NamedTypeSymbol { Name: WellKnownMemberNames.LockScopeTypeName, Arity: 0, IsValueType: true, IsRefLikeType: true, DeclaredAccessibility: Accessibility.Public } ||
Binder\Semantics\Conversions\Conversions.cs (1)
537if (spanType.TypeKind == TypeKind.Struct && spanType.IsRefLikeType)
Binder\Semantics\Conversions\ConversionsBase.cs (1)
3047else if (typeToCheck.IsRefLikeType)
Binder\UsingStatementBinder.cs (1)
193if (type is object && (type.IsRefLikeType || hasAwait))
CodeGen\EmitExpression.cs (1)
4051Debug.Assert(!type.IsRefLikeType);
FlowAnalysis\NullableWalker.cs (1)
13534Debug.Assert(node.Type is null || node.Type.IsErrorType() || node.Type.IsRefLikeType);
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (1)
237_ when variableType.IsRefLikeType && !hasOverriddenToString(variableType)
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
236(!builder.ReturnType.IsRefLikeType || parameter.EffectiveScope == ScopedKind.ScopedValue))
Symbols\ConstraintsHelper.cs (1)
1376if (typeArgument.Type is NamedTypeSymbol { IsRefLikeType: true } refLike &&
Symbols\PublicModel\TypeSymbol.cs (1)
197bool ITypeSymbol.IsRefLikeType => UnderlyingTypeSymbol.IsRefLikeType;
Symbols\Source\SourcePropertySymbolBase.cs (1)
1920else if (type.IsRefLikeOrAllowsRefLikeType() && (this.IsStatic || !this.ContainingType.IsRefLikeType))
Symbols\TypeSymbol.cs (1)
1637if (!isStatic && implementingType.IsRefLikeType)
Symbols\TypeSymbolExtensions.cs (3)
587return type is { IsRefLikeType: true } or TypeParameterSymbol { AllowsRefLikeType: true }; 1456IsRefLikeType: true, 1469IsRefLikeType: true,
Symbols\TypeWithAnnotations.cs (2)
902internal override bool IsRefLikeType(TypeSymbol typeSymbol) => typeSymbol.IsRefLikeType; 975internal override bool IsRefLikeType(TypeSymbol typeSymbol) => typeSymbol.IsRefLikeType;
Symbols\Wrapped\WrappedNamedTypeSymbol.cs (1)
231get { return _underlyingType.IsRefLikeType; }