1 instantiation of PrivateImplementationDetails
Microsoft.CodeAnalysis (1)
Emit\CommonPEModuleBuilder.cs (1)
1138
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)
128
/// Must be called before <see cref="
PrivateImplementationDetails
.Freeze"/>.
255
/// <see cref="
PrivateImplementationDetails
.TryGetOrCreateFieldForStringValue"/>
258
=>
PrivateImplementationDetails
.TryGetOrCreateFieldForStringValue(text, this, syntaxNode, diagnostics);
286
var
privateImpl = GetFrozenPrivateImplementationDetails();
294
public abstract
PrivateImplementationDetails
? GetFrozenPrivateImplementationDetails();
296
internal abstract
PrivateImplementationDetails
GetPrivateImplClass(SyntaxNode? syntaxNode, DiagnosticBag diagnostics);
670
private
PrivateImplementationDetails
_lazyPrivateImplementationDetails;
837
PrivateImplementationDetails
details = GetPrivateImplClass(syntaxOpt, diagnostics);
848
PrivateImplementationDetails
details = GetPrivateImplClass(syntaxOpt, diagnostics);
854
private void EnsurePrivateImplementationDetailsStaticConstructor(
PrivateImplementationDetails
details, TSyntaxNode syntaxOpt, DiagnosticBag diagnostics)
1103
var
privateImpl = GetPrivateImplClass((TSyntaxNode)syntaxNode, diagnostics);
1111
var
privateImpl = GetPrivateImplClass((TSyntaxNode)syntaxNode, diagnostics);
1121
var
privateImpl = GetPrivateImplClass((TSyntaxNode)syntaxNode, diagnostics);
1132
internal
PrivateImplementationDetails
GetPrivateImplClass(TSyntaxNode? syntaxNodeOpt, DiagnosticBag diagnostics)
1134
var
result = _lazyPrivateImplementationDetails;
1159
internal override
PrivateImplementationDetails
GetPrivateImplClass(SyntaxNode? syntaxNodeOpt, DiagnosticBag diagnostics)
1164
public
PrivateImplementationDetails
? FreezePrivateImplementationDetails()
1170
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)
2004
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedThrowSwitchExpressionExceptionFunctionName,
2051
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedThrowSwitchExpressionExceptionParameterlessFunctionName,
2059
PrivateImplementationDetails
.SynthesizedThrowSwitchExpressionExceptionParameterlessFunctionName,
2071
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedThrowInvalidOperationExceptionFunctionName,
2079
PrivateImplementationDetails
.SynthesizedThrowInvalidOperationExceptionFunctionName,
2090
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName,
2095
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName,
2161
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName,
2166
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName,
2178
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName,
2183
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName,
2194
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName,
2199
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName,
2208
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName,
2213
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName);
2221
return EnsurePrivateImplClassMethodExists(syntaxNode,
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName,
2226
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName);
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (3)
934
StringPatternInput.String => CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedStringHashFunctionName,
935
StringPatternInput.SpanChar => CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedReadOnlySpanHashFunctionName,
936
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)
14693
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName).ToTestDisplayString());
14694
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14695
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14696
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14697
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14698
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14701
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName,
14741
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14743
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName).ToTestDisplayString());
14744
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14745
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14746
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14747
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14750
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName,
14790
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14791
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14793
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName).ToTestDisplayString());
14794
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14795
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14796
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14799
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName,
14838
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14839
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14840
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14842
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName).ToTestDisplayString());
14843
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14844
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14847
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName,
14885
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14886
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14887
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14888
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14890
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName).ToTestDisplayString());
14891
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName));
14894
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName,
14929
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsSpanName));
14930
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayAsReadOnlySpanName));
14931
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefName));
14932
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayElementRefReadOnlyName));
14933
Assert.Empty(t.GetMembers(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefName));
14935
t.GetMember(CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName).ToTestDisplayString());
14938
verifier.VerifyIL("<PrivateImplementationDetails>." + CodeAnalysis.CodeGen.
PrivateImplementationDetails
.SynthesizedInlineArrayFirstElementRefReadOnlyName,