96 references to Type
Microsoft.CodeAnalysis.CSharp (96)
Binder\Binder_Statements.cs (3)
3401Debug.Assert(local.Type.IsErrorType() || (TypeSymbol.Equals(local.Type, type, TypeCompareKind.ConsiderEverything2))); 3409exceptionSource = new BoundLocal(declaration, local, ConstantValue.NotAvailable, local.Type);
CodeGen\CodeGenerator.cs (1)
196type: _module.Translate(localSymbol.Type, bodySyntax, _diagnostics.DiagnosticBag),
CodeGen\EmitExpression.cs (2)
1425EmitLoadIndirect(local.LocalSymbol.Type, local.Syntax); 3123EmitIndirectStore(local.LocalSymbol.Type, local.Syntax);
CodeGen\EmitStatement.cs (7)
1792var dynamicTransformFlags = !local.IsCompilerGenerated && local.Type.ContainsDynamic() ? 1793CSharpCompilation.DynamicTransformsEncoder.Encode(local.Type, RefKind.None, 0) : 1795var tupleElementNames = !local.IsCompilerGenerated && local.Type.ContainsTupleNames() ? 1796CSharpCompilation.TupleNamesEncoder.Encode(local.Type) : 1802MetadataConstant compileTimeValue = _module.CreateConstant(local.Type, local.ConstantValue, syntaxNode, _diagnostics.DiagnosticBag); 1827PointerTypeSymbol pointerType = (PointerTypeSymbol)local.Type; 1840translatedType = _module.Translate(local.Type, syntaxNode, _diagnostics.DiagnosticBag);
Compilation\CSharpSemanticModel.cs (1)
2078type = local.LocalSymbol.Type;
Compiler\MethodBodySynthesizer.Lowered.cs (8)
95F.Binary(BinaryOperatorKind.Multiplication, hashCode.Type, 96F.Binary(BinaryOperatorKind.Xor, hashCode.Type, 97F.Convert(hashCode.Type, 107F.Binary(BinaryOperatorKind.Addition, i.Type, 182F.Binary(BinaryOperatorKind.Multiplication, hashCode.Type, 183F.Binary(BinaryOperatorKind.Xor, hashCode.Type, 184F.Convert(hashCode.Type, 196F.Binary(BinaryOperatorKind.Addition, i.Type,
FlowAnalysis\DefiniteAssignment.cs (1)
815if ((object)local != null && read && WriteConsideredUse(local.Type, value))
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (11)
262statements.Add(_F.Assignment(_F.Local(pendingExceptionLocal), _F.Default(pendingExceptionLocal.Type))); 264statements.Add(_F.Assignment(_F.Local(pendingBranchVar), _F.Default(pendingBranchVar.Type))); 470_F.Null(obj.Type)), 491_F.As(_F.Local(obj), ex.Type)); 497_F.If(_F.ObjectEqual(_F.Local(ex), _F.Null(ex.Type)), rethrow), 559_F.Default(currentAwaitCatchFrame.pendingCatch.Type)), 617TypeSymbol pendingCaughtExceptionType = currentAwaitCatchFrame.pendingCaughtException.Type; 763return node.Update(hoistedLocal, node.ConstantValueOpt, hoistedLocal.Type); 1142if (!_hoistedLocals.Keys.Any(l => l.Name == local.Name && TypeSymbol.Equals(l.Type, local.Type, TypeCompareKind.ConsiderEverything2))) 1155var newLocal = F.SynthesizedLocal(local.Type, pendingCatch.SyntaxOpt, kind: SynthesizedLocalKind.ExceptionFilterAwaitHoistedExceptionLocal);
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (18)
242exceptionLocal.Type, 451if (awaiterTemp.Type.IsDynamic()) 472TypeSymbol awaiterFieldType = awaiterTemp.Type.IsVerifierReference() 474: awaiterTemp.Type; 492if (!TypeSymbol.Equals(awaiterFieldType, awaiterTemp.Type, TypeCompareKind.ConsiderEverything2)) 506blockBuilder.Add(awaiterTemp.Type.IsDynamic() 508: GenerateAwaitOnCompleted(awaiterTemp.Type, awaiterTemp)); 534if (!TypeSymbol.Equals(awaiterTemp.Type, awaiterField.Type, TypeCompareKind.ConsiderEverything2)) 536Debug.Assert(awaiterFieldRef.Type.IsObjectType() || TypeSymbol.Equals(awaiterTemp.Type, awaiterFieldRef.Type, TypeCompareKind.AllIgnoreOptions)); 537Conversion c = F.ClassifyEmitConversion(awaiterFieldRef, awaiterTemp.Type); 539awaiterFieldRef = F.Convert(awaiterTemp.Type, awaiterFieldRef, c); 590F.As(F.Local(awaiterTemp), criticalNotifyCompletedTemp.Type))); 599condition: F.ObjectEqual(F.Local(criticalNotifyCompletedTemp), F.Null(criticalNotifyCompletedTemp.Type)), 606F.Convert(notifyCompletionTemp.Type, F.Local(awaiterTemp), Conversion.ExplicitReference)), 611notifyCompletionTemp.Type, 616F.NullOrDefault(notifyCompletionTemp.Type))), 623criticalNotifyCompletedTemp.Type, 630F.NullOrDefault(criticalNotifyCompletedTemp.Type)));
Lowering\AsyncRewriter\RuntimeAsyncRewriter.cs (2)
228(leftLocal.LocalSymbol.SynthesizedKind == SynthesizedLocalKind.ForEachArray && leftLocal.LocalSymbol.Type.HasInlineArrayAttribute(out _) && leftLocal.LocalSymbol.Type.TryGetInlineArrayElementField() is object));
Lowering\BoundTreeToDifferentEnclosingContextRewriter.cs (2)
62var newType = VisitType(local.Type); 63if (TypeSymbol.Equals(newType, local.Type, TypeCompareKind.ConsiderEverything2) &&
Lowering\ClosureConversion\ClosureConversion.Analysis.Tree.cs (1)
686type = ((LocalSymbol)capturedVariable).Type;
Lowering\ClosureConversion\ClosureConversion.cs (4)
647return new BoundLocal(syntax, localFrame, null, localFrame.Type); 732if (!framePointer.Type.IsValueType) 791value = new BoundLocal(syntax, localToUse, null, localToUse.Type); 800static (frameType1, arg) => new BoundLocal(arg.syntax, arg.framePointer, null, arg.framePointer.Type),
Lowering\ClosureConversion\LambdaCapturedVariable.cs (1)
122var lambdaFrame = local.Type.OriginalDefinition as SynthesizedClosureEnvironment;
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (2)
420type = localSymbol.Type; 531var targetType = targetSymbol.Type;
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (1)
420rhsTemp.Type);
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (6)
39cleanup[i] = _factory.Assignment(_factory.Local(pinnedTemp), _factory.Null(pinnedTemp.Type)); 239TypeSymbol localType = localSymbol.Type; 306TypeSymbol localType = localSymbol.Type; 442TypeSymbol localType = localSymbol.Type; 511TypeSymbol localType = localSymbol.Type; 517ArrayTypeSymbol arrayType = (ArrayTypeSymbol)pinnedTemp.Type;
Lowering\LocalRewriter\LocalRewriter_LocalDeclaration.cs (2)
36if (!localSymbol.Type.IsReferenceType && localSymbol.ConstantValue == null) 63localSymbol.Type
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (1)
218TypeSymbol localType = localSymbol.Type;
Lowering\SpillSequenceSpiller.cs (5)
562&& receiverRefLocal.Type.IsTypeParameter() 563&& !receiverRefLocal.Type.IsReferenceType 564&& !receiverRefLocal.Type.IsValueType 565&& valueTypeReceiver.Type.Equals(receiverRefLocal.Type, TypeCompareKind.AllIgnoreOptions) 567&& referenceTypeReceiver.Type.Equals(receiverRefLocal.Type, TypeCompareKind.AllIgnoreOptions)
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (4)
153!local.Type.IsRestrictedType(), 230var type = (variable.Kind == SymbolKind.Local) ? ((LocalSymbol)variable).Type : ((ParameterSymbol)variable).Type; 246refLocal.Type.HasInlineArrayAttribute(out _) && 247refLocal.Type.TryGetInlineArrayElementField() is not null);
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (5)
320(local.SynthesizedKind == SynthesizedLocalKind.ForEachArray && local.Type.HasInlineArrayAttribute(out _) && local.Type.TryGetInlineArrayElementField() is object)); 328proxy = new CapturedToStateMachineFieldReplacement(GetOrAllocateReusableHoistedField(TypeMap.SubstituteType(local.Type).Type, out reused, local), isReusable: true); 645(leftLocal.SynthesizedKind == SynthesizedLocalKind.ForEachArray && leftLocal.Type.HasInlineArrayAttribute(out _) && leftLocal.Type.TryGetInlineArrayElementField() is object));
Lowering\StateMachineRewriter\RefInitializationHoister.cs (3)
75(local.SynthesizedKind == SynthesizedLocalKind.ForEachArray && local.Type.HasInlineArrayAttribute(out _) && local.Type.TryGetInlineArrayElementField() is object)); 96var type = _typeMap.SubstituteType(local.Type).Type;
Lowering\StateMachineRewriter\StateMachineRewriter.cs (3)
179(synthesizedKind == SynthesizedLocalKind.ForEachArray && local.Type.HasInlineArrayAttribute(out _) && local.Type.TryGetInlineArrayElementField() is object)); 189var fieldType = typeMap.SubstituteType(local.Type).Type;
Lowering\SyntheticBoundNodeFactory.cs (1)
1021return new BoundLocal(Syntax, local, null, local.Type) { WasCompilerGenerated = true };
Symbols\Source\SourceLocalSymbol.cs (1)
678var type = this.Type;