22 implementations of IObjectWritable
Microsoft.CodeAnalysis.Features (1)
DiagnosticHelper.cs (1)
279
public sealed class LocalizableStringWithArguments : LocalizableString,
IObjectWritable
Microsoft.CodeAnalysis.Workspaces (21)
FindSymbols\Shared\AbstractSyntaxIndex_Persistence.cs (1)
17
internal partial class AbstractSyntaxIndex<TIndex> :
IObjectWritable
FindSymbols\SymbolTree\SymbolTreeInfo_Serialization.cs (1)
19
internal partial class SymbolTreeInfo :
IObjectWritable
FindSymbols\SyntaxTree\SyntaxTreeIndex_Persistence.cs (1)
14
internal sealed partial class SyntaxTreeIndex :
IObjectWritable
FindSymbols\TopLevelSyntaxTree\TopLevelSyntaxTreeIndex_Persistence.cs (1)
13
internal sealed partial class TopLevelSyntaxTreeIndex :
IObjectWritable
NamingStyle.cs (1)
24
internal readonly partial record struct NamingStyle :
IObjectWritable
SerializableNamingRule.cs (1)
15
internal sealed record class SerializableNamingRule :
IObjectWritable
Shared\Utilities\BloomFilter_Serialization.cs (1)
13
internal partial class BloomFilter :
IObjectWritable
SymbolSpecification.cs (3)
28
internal sealed class SymbolSpecification : IEquatable<SymbolSpecification>,
IObjectWritable
354
public readonly record struct SymbolKindOrTypeKind : ISymbolMatcher,
IObjectWritable
470
public readonly struct ModifierKind : ISymbolMatcher, IEquatable<ModifierKind>,
IObjectWritable
Utilities\SpellChecker.cs (1)
16
internal class SpellChecker :
IObjectWritable
, IChecksummedObject
Workspace\Solution\Checksum.cs (1)
24
internal sealed partial class Checksum :
IObjectWritable
, IEquatable<Checksum>
Workspace\Solution\CompilationOutputFilePaths.cs (1)
13
public readonly struct CompilationOutputInfo : IEquatable<CompilationOutputInfo>,
IObjectWritable
Workspace\Solution\DocumentId.cs (1)
20
public sealed class DocumentId : IEquatable<DocumentId>,
IObjectWritable
Workspace\Solution\DocumentInfo.cs (1)
150
internal sealed class DocumentAttributes : IChecksummedObject,
IObjectWritable
Workspace\Solution\ProjectId.cs (1)
25
public sealed class ProjectId : IEquatable<ProjectId>,
IObjectWritable
Workspace\Solution\ProjectInfo.cs (1)
402
internal sealed class ProjectAttributes : IChecksummedObject,
IObjectWritable
Workspace\Solution\SolutionId.cs (1)
20
public sealed class SolutionId : IEquatable<SolutionId>,
IObjectWritable
Workspace\Solution\SolutionInfo.cs (1)
97
internal sealed class SolutionAttributes : IChecksummedObject,
IObjectWritable
Workspace\Solution\SourceGeneratedDocumentIdentity.cs (1)
21
:
IObjectWritable
, IEquatable<SourceGeneratedDocumentIdentity>
Workspace\Solution\VersionStamp.cs (1)
15
public readonly struct VersionStamp : IEquatable<VersionStamp>,
IObjectWritable
36 references to IObjectWritable
Microsoft.CodeAnalysis.Features (2)
DiagnosticHelper.cs (2)
328
bool
IObjectWritable
.ShouldReuseInSerialization => false;
330
void
IObjectWritable
.WriteTo(ObjectWriter writer)
Microsoft.CodeAnalysis.Workspaces (34)
FindSymbols\Shared\AbstractSyntaxIndex_Persistence.cs (1)
164
bool
IObjectWritable
.ShouldReuseInSerialization => true;
FindSymbols\SymbolTree\SymbolTreeInfo_Serialization.cs (1)
108
bool
IObjectWritable
.ShouldReuseInSerialization => true;
ObjectBinder.cs (2)
39
private static readonly List<Func<ObjectReader,
IObjectWritable
>> s_typeReaders = new();
58
public static void RegisterTypeReader(Type type, Func<ObjectReader,
IObjectWritable
> typeReader)
ObjectBinderSnapshot.cs (3)
17
private readonly ImmutableArray<Func<ObjectReader,
IObjectWritable
>> _typeReaders;
22
List<Func<ObjectReader,
IObjectWritable
>> typeReaders)
35
public Func<ObjectReader,
IObjectWritable
> GetTypeReaderFromId(int typeId)
ObjectReader.cs (1)
679
var
instance = typeReader(this);
ObjectWriter.cs (7)
324
public void WriteValue(
IObjectWritable
? value)
820
private void WriteObject(object instance,
IObjectWritable
? instanceAsWritable)
849
var
writable = instanceAsWritable;
852
writable = instance as
IObjectWritable
;
855
throw NoSerializationWriterException($"{instance.GetType()} must implement {nameof(
IObjectWritable
)}");
871
WriteObjectWorker((
IObjectWritable
)obj!);
895
private void WriteObjectWorker(
IObjectWritable
writable)
Serialization\SerializerService.cs (1)
128
((
IObjectWritable
)value).WriteTo(writer);
Shared\Extensions\IObjectWritableExtensions.cs (1)
11
public static void WriteTo(this
IObjectWritable
@object, ObjectWriter writer)
Shared\Utilities\BloomFilter_Serialization.cs (1)
17
bool
IObjectWritable
.ShouldReuseInSerialization => true;
Utilities\SpellChecker.cs (1)
49
bool
IObjectWritable
.ShouldReuseInSerialization => true;
Workspace\Solution\Checksum.cs (1)
114
bool
IObjectWritable
.ShouldReuseInSerialization => true;
Workspace\Solution\Checksum_Factory.cs (1)
86
public static Checksum Create(
IObjectWritable
@object)
Workspace\Solution\CompilationOutputFilePaths.cs (2)
20
bool
IObjectWritable
.ShouldReuseInSerialization => throw new NotImplementedException();
52
void
IObjectWritable
.WriteTo(ObjectWriter writer)
Workspace\Solution\DocumentId.cs (2)
95
bool
IObjectWritable
.ShouldReuseInSerialization => true;
97
void
IObjectWritable
.WriteTo(ObjectWriter writer)
Workspace\Solution\DocumentInfo.cs (1)
245
bool
IObjectWritable
.ShouldReuseInSerialization => true;
Workspace\Solution\ProjectId.cs (2)
86
bool
IObjectWritable
.ShouldReuseInSerialization => true;
88
void
IObjectWritable
.WriteTo(ObjectWriter writer)
Workspace\Solution\ProjectInfo.cs (1)
611
bool
IObjectWritable
.ShouldReuseInSerialization => true;
Workspace\Solution\SolutionId.cs (2)
80
bool
IObjectWritable
.ShouldReuseInSerialization => true;
82
void
IObjectWritable
.WriteTo(ObjectWriter writer)
Workspace\Solution\SolutionInfo.cs (1)
148
bool
IObjectWritable
.ShouldReuseInSerialization => true;
Workspace\Solution\VersionStamp.cs (2)
190
bool
IObjectWritable
.ShouldReuseInSerialization => true;
192
void
IObjectWritable
.WriteTo(ObjectWriter writer)