1 instantiation of PrivateImplementationDetails
Microsoft.CodeAnalysis (1)
Emit\CommonPEModuleBuilder.cs (1)
1133
result = new
PrivateImplementationDetails
(
114 references to PrivateImplementationDetails
Microsoft.CodeAnalysis (24)
CodeGen\PrivateImplementationDetails.cs (5)
331
var
@this = moduleBuilder.GetPrivateImplClass(syntaxNode, diagnostics);
647
internal ExplicitSizeStruct(uint size, ushort alignment,
PrivateImplementationDetails
containingType, Cci.ITypeReference sysValueType)
684
private readonly
PrivateImplementationDetails
_containingType;
690
PrivateImplementationDetails
containingType,
1171
public override string Name =>
PrivateImplementationDetails
.SynthesizedBytesToStringFunctionName;
Emit\CommonPEModuleBuilder.cs (18)
123
/// Must be called before <see cref="
PrivateImplementationDetails
.Freeze"/>.
250
/// <see cref="
PrivateImplementationDetails
.TryGetOrCreateFieldForStringValue"/>
253
=>
PrivateImplementationDetails
.TryGetOrCreateFieldForStringValue(text, this, syntaxNode, diagnostics);
281
var
privateImpl = GetFrozenPrivateImplementationDetails();
289
public abstract
PrivateImplementationDetails
? GetFrozenPrivateImplementationDetails();
291
internal abstract
PrivateImplementationDetails
GetPrivateImplClass(SyntaxNode? syntaxNode, DiagnosticBag diagnostics);
665
private
PrivateImplementationDetails
_lazyPrivateImplementationDetails;
832
PrivateImplementationDetails
details = GetPrivateImplClass(syntaxOpt, diagnostics);
843
PrivateImplementationDetails
details = GetPrivateImplClass(syntaxOpt, diagnostics);
849
private void EnsurePrivateImplementationDetailsStaticConstructor(
PrivateImplementationDetails
details, TSyntaxNode syntaxOpt, DiagnosticBag diagnostics)
1098
var
privateImpl = GetPrivateImplClass((TSyntaxNode)syntaxNode, diagnostics);
1106
var
privateImpl = GetPrivateImplClass((TSyntaxNode)syntaxNode, diagnostics);
1116
var
privateImpl = GetPrivateImplClass((TSyntaxNode)syntaxNode, diagnostics);
1127
internal
PrivateImplementationDetails
GetPrivateImplClass(TSyntaxNode? syntaxNodeOpt, DiagnosticBag diagnostics)
1129
var
result = _lazyPrivateImplementationDetails;
1154
internal override
PrivateImplementationDetails
GetPrivateImplClass(SyntaxNode? syntaxNodeOpt, DiagnosticBag diagnostics)
1159
public
PrivateImplementationDetails
? FreezePrivateImplementationDetails()
1165
public override
PrivateImplementationDetails
? GetFrozenPrivateImplementationDetails()
Symbols\ISynthesizedGlobalMethodSymbol.cs (1)
11
PrivateImplementationDetails
ContainingPrivateImplementationDetailsType { get; }
Microsoft.CodeAnalysis.CSharp (36)
CodeGen\EmitStatement.cs (4)
1528
var
privateImplClass = _module.GetPrivateImplClass(syntaxNode, _diagnostics.DiagnosticBag).PrivateImplementationDetails;
1532
?
PrivateImplementationDetails
.SynthesizedReadOnlySpanHashFunctionName
1533
:
PrivateImplementationDetails
.SynthesizedSpanHashFunctionName
1534
:
PrivateImplementationDetails
.SynthesizedStringHashFunctionName);
Compiler\MethodCompiler.cs (2)
192
var
privateImplClass = moduleBeingBuiltOpt.FreezePrivateImplementationDetails();
690
private void CompileSynthesizedMethods(
PrivateImplementationDetails
privateImplClass, BindingDiagnosticBag diagnostics)
Emitter\EditAndContinue\CSharpSymbolMatcher.cs (1)
74
=> definition is
PrivateImplementationDetails
||
Emitter\Model\PEModuleBuilder.cs (17)
1998
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedThrowSwitchExpressionExceptionFunctionName,
2045
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedThrowSwitchExpressionExceptionParameterlessFunctionName,
2053
PrivateImplementationDetails
.SynthesizedThrowSwitchExpressionExceptionParameterlessFunctionName,
2065
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedThrowInvalidOperationExceptionFunctionName,
2073
PrivateImplementationDetails
.SynthesizedThrowInvalidOperationExceptionFunctionName,
2084
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName,
2089
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName,
2155
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName,
2160
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName,
2172
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName,
2177
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName,
2188
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName,
2193
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName,
2202
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName,
2207
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName);
2215
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName,
2220
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName);
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (3)
926
StringPatternInput.String => CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedStringHashFunctionName,
927
StringPatternInput.SpanChar => CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedReadOnlySpanHashFunctionName,
928
StringPatternInput.ReadOnlySpanChar => CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedSpanHashFunctionName,
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (1)
1168
return CodeAnalysis.CodeGen.
PrivateImplementationDetails
.HashToHex(hash);
Symbols\Synthesized\SynthesizedGlobalMethodSymbol.cs (1)
90
public
PrivateImplementationDetails
ContainingPrivateImplementationDetailsType
Symbols\Synthesized\SynthesizedPrivateImplementationDetailsType.cs (3)
21
private readonly
PrivateImplementationDetails
_privateImplementationDetails;
25
public SynthesizedPrivateImplementationDetailsType(
PrivateImplementationDetails
privateImplementationDetails, NamespaceSymbol globalNamespace, NamedTypeSymbol objectType)
35
public
PrivateImplementationDetails
PrivateImplementationDetails => _privateImplementationDetails;
Symbols\Synthesized\SynthesizedStringHashFunctionSymbol.cs (3)
19
: base(privateImplType, returnType,
PrivateImplementationDetails
.SynthesizedStringHashFunctionName)
28
: base(privateImplType, returnType, isReadOnlySpan ?
PrivateImplementationDetails
.SynthesizedReadOnlySpanHashFunctionName :
PrivateImplementationDetails
.SynthesizedSpanHashFunctionName)
Symbols\Synthesized\SynthesizedThrowSwitchExpressionExceptionMethod.cs (1)
17
: base(privateImplType, returnType,
PrivateImplementationDetails
.SynthesizedThrowSwitchExpressionExceptionFunctionName)
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (3)
CodeGen\SwitchTests.cs (3)
3043
var member = pid.GetMembers(
PrivateImplementationDetails
.SynthesizedStringHashFunctionName).Single();
4042
compVerifier.VerifyMemberInIL("<PrivateImplementationDetails>." +
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected);
4046
compVerifier.VerifyIL("<PrivateImplementationDetails>." +
PrivateImplementationDetails
.SynthesizedStringHashFunctionName,
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (9)
CodeGen\CodeGenLengthBasedSwitchTests.cs (9)
80
verifier.VerifyMemberInIL(
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: false);
270
verifier.VerifyMemberInIL("<PrivateImplementationDetails>." +
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: true);
833
verifier.VerifyMemberInIL(
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: false);
1369
verifier.VerifyMemberInIL(
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: false);
1475
verifier.VerifyMemberInIL("<PrivateImplementationDetails>." +
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: true);
1650
verifier.VerifyMemberInIL(
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: false);
1832
verifier.VerifyMemberInIL(
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: false);
2321
verifier.VerifyMemberInIL(
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: false);
2433
verifier.VerifyMemberInIL("<PrivateImplementationDetails>." +
PrivateImplementationDetails
.SynthesizedStringHashFunctionName + "(string)", expected: true);
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (42)
Semantics\InlineArrayTests.cs (42)
14648
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName).ToTestDisplayString());
14649
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14650
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14651
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14652
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14653
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14656
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName,
14696
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14698
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName).ToTestDisplayString());
14699
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14700
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14701
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14702
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14705
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName,
14745
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14746
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14748
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName).ToTestDisplayString());
14749
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14750
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14751
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14754
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName,
14793
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14794
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14795
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14797
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName).ToTestDisplayString());
14798
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14799
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14802
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName,
14840
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14841
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14842
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14843
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14845
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName).ToTestDisplayString());
14846
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14849
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName,
14884
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14885
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14886
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14887
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14888
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14890
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName).ToTestDisplayString());
14893
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName,