35 instantiations of PointerTypeSymbol
Microsoft.CodeAnalysis.CSharp (24)
Binder\Binder_Conversions.cs (1)
877
stackAllocType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(elementType));
Binder\Binder_Expressions.cs (3)
365
var type = new
PointerTypeSymbol
(TypeWithAnnotations.Create(boundStackAlloc.ElementType));
3799
new
PointerTypeSymbol
(BindType(typeSyntax, diagnostics)));
3838
new
PointerTypeSymbol
(elementType));
Binder\Binder_Operators.cs (1)
2522
TypeSymbol pointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(operandType));
Binder\Binder_Statements.cs (1)
1374
TypeSymbol pointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(elementType));
Binder\Binder_Symbols.cs (1)
599
return TypeWithAnnotations.Create(new
PointerTypeSymbol
(elementType));
Binder\Semantics\Conversions\Conversions.cs (1)
392
var sourceAsPointer = new
PointerTypeSymbol
(TypeWithAnnotations.Create(sourceExpression.ElementType));
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (1)
583
var voidPointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(Compilation.GetSpecialType(SpecialType.System_Void)));
Compilation\CSharpCompilation.cs (1)
2215
return new
PointerTypeSymbol
(TypeWithAnnotations.Create(elementType, elementNullableAnnotation));
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (2)
596
return new
PointerTypeSymbol
(symbol.PointedAtTypeWithAnnotations.WithTypeAndModifiers(otherPointedAtType, otherModifiers));
1106
return new
PointerTypeSymbol
(symbol.PointedAtTypeWithAnnotations.WithTypeAndModifiers(translatedPointedAtType, translatedModifiers));
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
374
var operandType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(_factory.SpecialType(SpecialType.System_Void)));
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (1)
527
BoundExpression firstElementAddress = new BoundAddressOfOperator(factory.Syntax, firstElement, type: new
PointerTypeSymbol
(arrayElementType));
Lowering\SyntheticBoundNodeFactory.cs (1)
1163
return new BoundPointerIndirectionOperator(Syntax, Default(new
PointerTypeSymbol
(type)), refersToLocation: false, type.Type);
Symbols\AbstractTypeMap.cs (1)
235
return new
PointerTypeSymbol
(pointedAtType);
Symbols\AssemblySymbol.cs (1)
740
return new
PointerTypeSymbol
(TypeWithAnnotations.Create(symbol));
Symbols\Metadata\PE\DynamicTypeDecoder.cs (1)
343
new
PointerTypeSymbol
(pointerType.PointedAtTypeWithAnnotations.WithTypeAndModifiers(transformedPointedAtType, pointerType.PointedAtTypeWithAnnotations.CustomModifiers));
Symbols\Metadata\PE\PEFieldSymbol.cs (1)
335
type = TypeWithAnnotations.Create(new
PointerTypeSymbol
(TypeWithAnnotations.Create(fixedElementType)));
Symbols\Metadata\PE\SymbolFactory.cs (1)
46
return new
PointerTypeSymbol
(CreateType(type, customModifiers));
Symbols\PointerTypeSymbol.cs (1)
282
return PointedAtTypeWithAnnotations.IsSameAs(newPointedAtType) ? this : new
PointerTypeSymbol
(newPointedAtType);
Symbols\Retargeting\RetargetingSymbolTranslator.cs (1)
756
return new
PointerTypeSymbol
(newPointed);
Symbols\Source\SourceMemberFieldSymbol.cs (1)
557
type = TypeWithAnnotations.Create(new
PointerTypeSymbol
(type));
Symbols\TypeSymbolExtensions.cs (1)
1947
pointerType = new
PointerTypeSymbol
(pointedAtType);
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler (1)
CSharpEESymbolProvider.cs (1)
44
type = new
PointerTypeSymbol
(TypeWithAnnotations.Create(info.Type));
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (7)
Semantics\UnsafeTests.cs (7)
5015
var structPointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(structType));
5328
var intPointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(intType));
5395
var intPointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(intType));
5453
var intPointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(intType));
7382
var charPointerSymbol = new
PointerTypeSymbol
(TypeWithAnnotations.Create(charSymbol));
7454
var charPointerSymbol = new
PointerTypeSymbol
(TypeWithAnnotations.Create(charSymbol));
7456
var voidPointerSymbol = new
PointerTypeSymbol
(TypeWithAnnotations.Create(voidSymbol));
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (3)
Symbols\Metadata\PE\DynamicTransformsTests.cs (1)
340
var pointerToInt = new
PointerTypeSymbol
(TypeWithAnnotations.Create(_intType));
Symbols\MockSymbolTests.cs (1)
55
PointerTypeSymbol pts1 = new
PointerTypeSymbol
(TypeWithAnnotations.Create(pointedAtType));
Symbols\Source\ModifierTests.cs (1)
158
var pointerType = new
PointerTypeSymbol
(TypeWithAnnotations.Create(typeParamType, customModifiers: customModifiers)); // NOTE: We're constructing this manually, since it's illegal.
134 references to PointerTypeSymbol
Microsoft.CodeAnalysis.CSharp (105)
Binder\Binder_Crefs.cs (1)
559
return ContainsNestedTypeOfUnconstructedGenericType(((
PointerTypeSymbol
)type).PointedAtType);
Binder\Binder_Expressions.cs (3)
365
var
type = new PointerTypeSymbol(TypeWithAnnotations.Create(boundStackAlloc.ElementType));
8198
PointerTypeSymbol
pointerType = (
PointerTypeSymbol
)expr.Type;
Binder\Binder_Operators.cs (2)
2445
var
operandType = operand.Type as
PointerTypeSymbol
;
Binder\Binder_Statements.cs (1)
1264
elementType = ((
PointerTypeSymbol
)fa.Type).PointedAtType;
Binder\Semantics\AccessCheck.cs (1)
155
return IsSymbolAccessibleCore(((
PointerTypeSymbol
)symbol).PointedAtType, within, null, out failedThroughTypeCheck, compilation, ref useSiteInfo, basesBeingResolved);
Binder\Semantics\Conversions\Conversions.cs (1)
392
var
sourceAsPointer = new PointerTypeSymbol(TypeWithAnnotations.Create(sourceExpression.ElementType));
Binder\Semantics\Conversions\ConversionsBase.cs (1)
3144
return source.IsPointerOrFunctionPointer() && destination is
PointerTypeSymbol
{ PointedAtType: { SpecialType: SpecialType.System_Void } };
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (6)
543
PointerTypeSymbol
pointerType,
583
var
voidPointerType = new PointerTypeSymbol(TypeWithAnnotations.Create(Compilation.GetSpecialType(SpecialType.System_Void)));
684
var
leftType = left.Type as
PointerTypeSymbol
;
685
var
rightType = right.Type as
PointerTypeSymbol
;
Binder\Semantics\Operators\UnaryOperatorOverloadResolution.cs (2)
325
var
pointerType = operand.Type as
PointerTypeSymbol
;
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (2)
1713
ExactInference(((
PointerTypeSymbol
)source.Type).PointedAtTypeWithAnnotations, ((
PointerTypeSymbol
)target.Type).PointedAtTypeWithAnnotations, ref useSiteInfo);
Binder\Semantics\OverloadResolution\OverloadResolution.cs (4)
2309
var
p1 = (
PointerTypeSymbol
)t1;
2310
var
p2 = (
PointerTypeSymbol
)t2;
CodeGen\EmitStackAllocInitializer.cs (2)
21
Debug.Assert(type is
PointerTypeSymbol
|| type is NamedTypeSymbol);
24
? ((
PointerTypeSymbol
)type).PointedAtTypeWithAnnotations
CodeGen\EmitStatement.cs (2)
1770
PointerTypeSymbol
pointerType = (
PointerTypeSymbol
)local.Type;
CodeGen\Optimizer.cs (1)
1019
left.Type.Equals(((
PointerTypeSymbol
)right.Type).PointedAtType, TypeCompareKind.AllIgnoreOptions);
Compilation\CSharpCompilation.cs (3)
2208
internal
PointerTypeSymbol
CreatePointerTypeSymbol(TypeSymbol elementType, NullableAnnotation elementNullableAnnotation = NullableAnnotation.Oblivious)
4075
csharpLeftType is
PointerTypeSymbol
{ PointedAtType.SpecialType: SpecialType.System_Void } &&
4076
csharpRightType is
PointerTypeSymbol
{ PointedAtType.SpecialType: SpecialType.System_Void })
DocumentationComments\DocumentationCommentIDVisitor.PartVisitor.cs (1)
220
public override object VisitPointerType(
PointerTypeSymbol
symbol, StringBuilder builder)
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (6)
586
public override Symbol? VisitPointerType(
PointerTypeSymbol
symbol)
865
private bool ArePointerTypesEqual(
PointerTypeSymbol
type,
PointerTypeSymbol
other)
960
return ArePointerTypesEqual((
PointerTypeSymbol
)type, (
PointerTypeSymbol
)other);
1102
public override Symbol VisitPointerType(
PointerTypeSymbol
symbol)
Emitter\Model\PEModuleBuilder.cs (2)
1136
return Translate((
PointerTypeSymbol
)typeSymbol);
1507
internal Cci.IPointerTypeReference Translate(
PointerTypeSymbol
symbol)
Emitter\Model\PointerTypeSymbolAdapter.cs (2)
145
internal PointerTypeSymbolAdapter(
PointerTypeSymbol
underlyingPointerTypeSymbol)
151
internal
PointerTypeSymbol
AdaptedPointerTypeSymbol { get; }
FlowAnalysis\NullableWalker.cs (2)
4169
PointerTypeSymbol
pointerType => pointerType.PointedAtTypeWithAnnotations,
4257
PointerTypeSymbol
pointerType => pointerType.WithPointedAtType(inferredType),
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
374
var
operandType = new PointerTypeSymbol(TypeWithAnnotations.Create(_factory.SpecialType(SpecialType.System_Void)));
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (5)
2181
loweredRight = MakeSizeOfMultiplication(loweredRight, (
PointerTypeSymbol
)loweredLeft.Type, kind.IsChecked());
2186
loweredLeft = MakeSizeOfMultiplication(loweredLeft, (
PointerTypeSymbol
)loweredRight.Type, kind.IsChecked());
2222
private BoundExpression MakeSizeOfMultiplication(BoundExpression numericOperand,
PointerTypeSymbol
pointerType, bool isChecked)
2376
PointerTypeSymbol
pointerType = (
PointerTypeSymbol
)loweredLeft.Type;
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (1)
247
TypeSymbol initializerType = ((
PointerTypeSymbol
)initializerExpr.Type).PointedAtType;
Symbols\AbstractTypeMap.cs (3)
109
result = SubstitutePointerType((
PointerTypeSymbol
)previous);
226
private
PointerTypeSymbol
SubstitutePointerType(
PointerTypeSymbol
t)
Symbols\Compilation_WellKnownMembers.cs (2)
930
HandleCustomModifiers(((
PointerTypeSymbol
)type).PointedAtTypeWithAnnotations.CustomModifiers.Length, transformFlagsBuilder);
1120
return type.Kind == SymbolKind.PointerType ? ((
PointerTypeSymbol
)type).PointedAtType : null;
Symbols\ConstraintsHelper.cs (1)
548
Binder.CheckManagedAddr(args.CurrentCompilation, ((
PointerTypeSymbol
)type).PointedAtType, args.Location, args.Diagnostics);
Symbols\Metadata\PE\DynamicTypeDecoder.cs (3)
167
return TransformPointerType((
PointerTypeSymbol
)type);
325
private
PointerTypeSymbol
TransformPointerType(
PointerTypeSymbol
pointerType)
Symbols\Metadata\PE\MetadataDecoder.cs (1)
225
return IsOrClosedOverATypeFromAssemblies(((
PointerTypeSymbol
)symbol).PointedAtType, assemblies);
Symbols\Metadata\PE\NativeIntegerTypeDecoder.cs (3)
90
return TransformPointerType((
PointerTypeSymbol
)type);
164
private
PointerTypeSymbol
? TransformPointerType(
PointerTypeSymbol
type)
Symbols\Metadata\PE\TupleTypeDecoder.cs (3)
171
return DecodePointerType((
PointerTypeSymbol
)type);
204
private
PointerTypeSymbol
DecodePointerType(
PointerTypeSymbol
type)
Symbols\PointerTypeSymbol.cs (5)
222
current = ((
PointerTypeSymbol
)current).PointedAtType;
230
return this.Equals(t2 as
PointerTypeSymbol
, comparison);
233
private bool Equals(
PointerTypeSymbol
? other, TypeCompareKind comparison)
276
TypeWithAnnotations pointedAtType = PointedAtTypeWithAnnotations.MergeEquivalentTypes(((
PointerTypeSymbol
)other).PointedAtTypeWithAnnotations, VarianceKind.None);
280
internal
PointerTypeSymbol
WithPointedAtType(TypeWithAnnotations newPointedAtType)
Symbols\PublicModel\PointerTypeSymbol.cs (2)
13
private readonly Symbols.
PointerTypeSymbol
_underlying;
16
public PointerTypeSymbol(Symbols.
PointerTypeSymbol
underlying, CodeAnalysis.NullableAnnotation nullableAnnotation)
Symbols\Retargeting\RetargetingSymbolTranslator.cs (4)
654
return IsOrClosedOverAnExplicitLocalType(((
PointerTypeSymbol
)symbol).PointedAtType);
746
public
PointerTypeSymbol
Retarget(
PointerTypeSymbol
type)
1376
public override Symbol VisitPointerType(
PointerTypeSymbol
symbol, RetargetOptions options)
Symbols\Source\SourceFixedFieldSymbol.cs (4)
47
var item1 = new TypedConstant(systemType, TypedConstantKind.Type, ((
PointerTypeSymbol
)this.Type).PointedAtType);
109
TypeSymbol elementType = ((
PointerTypeSymbol
)this.Type).PointedAtType;
160
_internalField = new SynthesizedFieldSymbol(this, ((
PointerTypeSymbol
)field.Type).PointedAtType, FixedElementFieldName, isPublic: true);
183
var elementType = ((
PointerTypeSymbol
)_field.Type).PointedAtType;
Symbols\Source\SourceMemberFieldSymbol.cs (1)
569
var elementType = ((
PointerTypeSymbol
)type.Type).PointedAtType;
Symbols\SymbolDistinguisher.cs (1)
150
symbol = ((
PointerTypeSymbol
)symbol).PointedAtType;
Symbols\SymbolExtensions.cs (1)
665
internal static IPointerTypeSymbol? GetPublicSymbol(this
PointerTypeSymbol
? symbol)
Symbols\SymbolVisitor.cs (1)
95
public virtual void VisitPointerType(
PointerTypeSymbol
symbol)
Symbols\SymbolVisitor`1.cs (1)
95
public virtual TResult VisitPointerType(
PointerTypeSymbol
symbol)
Symbols\SymbolVisitor`2.cs (2)
112
/// Called when visiting a <see cref="
PointerTypeSymbol
" />; Override this with specific
118
public virtual TResult VisitPointerType(
PointerTypeSymbol
symbol, TArgument argument)
Symbols\TypeSymbolExtensions.cs (6)
838
next = ((
PointerTypeSymbol
)current).PointedAtTypeWithAnnotations;
1384
return type is
PointerTypeSymbol
;
1460
return type is
PointerTypeSymbol
p && p.PointedAtType.IsVoidType();
1845
var
pointerType = (
PointerTypeSymbol
)type;
1939
private static bool NormalizeTaskTypesInPointer(CSharpCompilation compilation, ref
PointerTypeSymbol
pointerType)
Symbols\TypeUnification.cs (5)
135
PointerTypeSymbol
pt1 = (
PointerTypeSymbol
)t1.Type;
136
PointerTypeSymbol
pt2 = (
PointerTypeSymbol
)t2.Type;
272
return Contains(((
PointerTypeSymbol
)type).PointedAtType, typeParam);
Utilities\TypeSymbolExtensions.cs (4)
38
var
pointer = (
PointerTypeSymbol
)type;
106
var
pointer = (
PointerTypeSymbol
)type;
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (3)
Emit\EditAndContinue\SymbolMatcherTests.cs (3)
201
Assert.Equal(1, ((
PointerTypeSymbol
)member1.Parameters[0].Type).PointedAtTypeWithAnnotations.CustomModifiers.Length);
217
Assert.Equal(1, ((
PointerTypeSymbol
)other.Parameters[0].Type).PointedAtTypeWithAnnotations.CustomModifiers.Length);
476
var
member = compilation1.CreatePointerTypeSymbol(elementType);
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler (1)
EEAssemblyBuilder.cs (1)
102
type = ((
PointerTypeSymbol
)local.Type).PointedAtType;
Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler.UnitTests (3)
ManagedAddressOfTests.cs (1)
308
Assert.Equal(SpecialType.System_String, ((
PointerTypeSymbol
)returnType).PointedAtType.SpecialType);
PseudoVariableTests.cs (2)
1121
Assert.Equal(SpecialType.System_Int32, ((
PointerTypeSymbol
)((MethodSymbol)methodData.Method).ReturnType).PointedAtType.SpecialType);
1161
Assert.Equal(SpecialType.System_Char, ((
PointerTypeSymbol
)((MethodSymbol)methodData.Method).ReturnType).PointedAtType.SpecialType);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (10)
Semantics\RecordStructTests.cs (1)
578
Assert.IsType<
PointerTypeSymbol
>(((Symbols.PublicModel.PointerTypeSymbol)type).UnderlyingTypeSymbol);
Semantics\UnsafeTests.cs (9)
3124
Assert.Equal(SpecialType.System_TypedReference, ((
PointerTypeSymbol
)returnType).PointedAtType.SpecialType);
3128
Assert.Equal(SpecialType.System_TypedReference, ((
PointerTypeSymbol
)parameterType).PointedAtType.SpecialType);
5015
var
structPointerType = new PointerTypeSymbol(TypeWithAnnotations.Create(structType));
5328
var
intPointerType = new PointerTypeSymbol(TypeWithAnnotations.Create(intType));
5395
var
intPointerType = new PointerTypeSymbol(TypeWithAnnotations.Create(intType));
5453
var
intPointerType = new PointerTypeSymbol(TypeWithAnnotations.Create(intType));
7382
var
charPointerSymbol = new PointerTypeSymbol(TypeWithAnnotations.Create(charSymbol));
7454
var
charPointerSymbol = new PointerTypeSymbol(TypeWithAnnotations.Create(charSymbol));
7456
var
voidPointerSymbol = new PointerTypeSymbol(TypeWithAnnotations.Create(voidSymbol));
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (11)
Symbols\Metadata\PE\DynamicTransformsTests.cs (1)
340
var
pointerToInt = new PointerTypeSymbol(TypeWithAnnotations.Create(_intType));
Symbols\Metadata\PE\LoadCustomModifiers.cs (2)
100
PointerTypeSymbol
p6Type = (
PointerTypeSymbol
)p6.Type;
Symbols\MockSymbolTests.cs (1)
55
PointerTypeSymbol
pts1 = new PointerTypeSymbol(TypeWithAnnotations.Create(pointedAtType));
Symbols\Retargeting\RetargetCustomModifiers.cs (4)
109
PointerTypeSymbol
p6Type = (
PointerTypeSymbol
)p6.Type;
209
PointerTypeSymbol
p1Type = (
PointerTypeSymbol
)p1.Type;
Symbols\Source\ModifierTests.cs (3)
158
var
pointerType = new PointerTypeSymbol(TypeWithAnnotations.Create(typeParamType, customModifiers: customModifiers)); // NOTE: We're constructing this manually, since it's illegal.
163
var
substitutedPointerType = (
PointerTypeSymbol
)typeMap.SubstituteType(pointerType).AsTypeSymbolOnly();
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
UsesIsNullableVisitor.cs (1)
195
return UsesIsNullable(((
PointerTypeSymbol
)type).PointedAtTypeWithAnnotations, inProgress);