1 instantiation of SerializationRecordId
System.Formats.Nrbf (1)
System\Formats\Nrbf\SerializationRecordId.cs (1)
48return new SerializationRecordId(id);
200 references to SerializationRecordId
System.Formats.Nrbf (65)
System\Formats\Nrbf\ArrayInfo.cs (3)
25internal ArrayInfo(SerializationRecordId id, long totalElementsCount, BinaryArrayType arrayType = BinaryArrayType.Single, int rank = 1) 33internal SerializationRecordId Id { get; } 48=> new(SerializationRecordId.Decode(reader), ParseValidArrayLength(reader));
System\Formats\Nrbf\ArrayRecord.cs (1)
49public override SerializationRecordId Id => ArrayInfo.Id;
System\Formats\Nrbf\BinaryArrayRecord.cs (2)
145SerializationRecordId objectId = SerializationRecordId.Decode(reader);
System\Formats\Nrbf\BinaryLibraryRecord.cs (5)
19private BinaryLibraryRecord(SerializationRecordId libraryId, string rawLibraryName) 25private BinaryLibraryRecord(SerializationRecordId libraryId, AssemblyNameInfo libraryName) 40public override SerializationRecordId Id { get; } 44SerializationRecordId id = SerializationRecordId.Decode(reader);
System\Formats\Nrbf\BinaryObjectStringRecord.cs (3)
18private BinaryObjectStringRecord(SerializationRecordId id, string value) : base(value) 26public override SerializationRecordId Id { get; } 29=> new(SerializationRecordId.Decode(reader), reader.ReadString());
System\Formats\Nrbf\ClassInfo.cs (4)
25private ClassInfo(SerializationRecordId id, string rawName, Dictionary<string, int> memberNames) 32internal SerializationRecordId Id { get; } 47SerializationRecordId id = SerializationRecordId.Decode(reader);
System\Formats\Nrbf\ClassRecord.cs (1)
32public override SerializationRecordId Id => ClassInfo.Id;
System\Formats\Nrbf\ClassTypeInfo.cs (2)
27SerializationRecordId libraryId = SerializationRecordId.Decode(reader);
System\Formats\Nrbf\ClassWithIdRecord.cs (6)
17private ClassWithIdRecord(SerializationRecordId id, ClassRecord metadataClass) : base(metadataClass.ClassInfo, metadataClass.MemberTypeInfo) 26public override SerializationRecordId Id { get; } 34SerializationRecordId id = SerializationRecordId.Decode(reader); 35SerializationRecordId metadataId = SerializationRecordId.Decode(reader);
System\Formats\Nrbf\ClassWithMembersAndTypesRecord.cs (2)
28SerializationRecordId libraryId = SerializationRecordId.Decode(reader);
System\Formats\Nrbf\MemberPrimitiveTypedRecord.cs (2)
17internal MemberPrimitiveTypedRecord(T value, SerializationRecordId id) : base(value) => Id = id; 22public override SerializationRecordId Id { get; }
System\Formats\Nrbf\MemberReferenceRecord.cs (5)
18private MemberReferenceRecord(SerializationRecordId reference, RecordMap recordMap) 26internal SerializationRecordId Reference { get; } 32public override SerializationRecordId Id => SerializationRecordId.NoId; 39=> new(SerializationRecordId.Decode(reader), recordMap);
System\Formats\Nrbf\MessageEndRecord.cs (2)
25public override SerializationRecordId Id => SerializationRecordId.NoId;
System\Formats\Nrbf\NrbfDecoder.cs (3)
120/// When this method returns, contains a mapping of <see cref="SerializationRecordId" /> to the associated serialization record. 129public static SerializationRecord Decode(Stream payload, out IReadOnlyDictionary<SerializationRecordId, SerializationRecord> recordMap, PayloadOptions? options = default, bool leaveOpen = false) 159private static SerializationRecord Decode(BinaryReader reader, PayloadOptions options, out IReadOnlyDictionary<SerializationRecordId, SerializationRecord> readOnlyRecordMap)
System\Formats\Nrbf\NullsRecord.cs (2)
13public override SerializationRecordId Id => SerializationRecordId.NoId;
System\Formats\Nrbf\RecordMap.cs (10)
12internal sealed class RecordMap : IReadOnlyDictionary<SerializationRecordId, SerializationRecord> 14private readonly Dictionary<SerializationRecordId, SerializationRecord> _map = new(); 16public IEnumerable<SerializationRecordId> Keys => _map.Keys; 22public SerializationRecord this[SerializationRecordId objectId] => _map[objectId]; 24public bool ContainsKey(SerializationRecordId key) => _map.ContainsKey(key); 26public bool TryGetValue(SerializationRecordId key, [MaybeNullWhen(false)] out SerializationRecord value) => _map.TryGetValue(key, out value); 28public IEnumerator<KeyValuePair<SerializationRecordId, SerializationRecord>> GetEnumerator() => _map.GetEnumerator(); 37if (!record.Id.Equals(SerializationRecordId.NoId)) 77internal SerializationRecord GetRecord(SerializationRecordId recordId) 82internal T GetRecord<T>(SerializationRecordId recordId) where T : SerializationRecord
System\Formats\Nrbf\SerializationRecord.cs (1)
36public abstract SerializationRecordId Id { get; }
System\Formats\Nrbf\SerializationRecordId.cs (5)
20public readonly struct SerializationRecordId : IEquatable<SerializationRecordId> 23internal static readonly SerializationRecordId NoId; 30internal static SerializationRecordId Decode(BinaryReader reader) 52public bool Equals(SerializationRecordId other) => _id == other._id; 55public override bool Equals(object? obj) => obj is SerializationRecordId other && Equals(other);
System\Formats\Nrbf\SerializedStreamHeaderRecord.cs (6)
23internal SerializedStreamHeaderRecord(SerializationRecordId rootId) => RootId = rootId; 29public override SerializationRecordId Id => SerializationRecordId.NoId; 31internal SerializationRecordId RootId { get; } 35SerializationRecordId rootId = SerializationRecordId.Decode(reader);
System.Private.Windows.Core (61)
System\Private\Windows\Core\BinaryFormat\Deserializer\ArrayRecordDeserializer.cs (2)
47internal override SerializationRecordId Continue() 54(object? memberValue, SerializationRecordId reference) = UnwrapMemberValue(_arrayOfClassRecords.GetValue(indices));
System\Private\Windows\Core\BinaryFormat\Deserializer\ArrayUpdater.cs (3)
12internal ArrayUpdater(SerializationRecordId objectId, SerializationRecordId valueId, int[] indices) : base(objectId, valueId) 17internal override void UpdateValue(IDictionary<SerializationRecordId, object> objects)
System\Private\Windows\Core\BinaryFormat\Deserializer\ClassRecordDeserializer.cs (1)
34SerializationRecordId id = classRecord.Id;
System\Private\Windows\Core\BinaryFormat\Deserializer\ClassRecordFieldInfoDeserializer.cs (2)
37internal override SerializationRecordId Continue() 64(object? memberValue, SerializationRecordId reference) = UnwrapMemberValue(_classRecord.GetRawValue(field.Name));
System\Private\Windows\Core\BinaryFormat\Deserializer\ClassRecordSerializationInfoDeserializer.cs (2)
41internal override SerializationRecordId Continue() 48(object? memberValue, SerializationRecordId reference) = UnwrapMemberValue(_classRecord.GetRawValue(memberName));
System\Private\Windows\Core\BinaryFormat\Deserializer\Deserializer.cs (26)
52private readonly IReadOnlyDictionary<SerializationRecordId, SerializationRecord> _recordMap; 61private readonly Dictionary<SerializationRecordId, object> _deserializedObjects = []; 62IDictionary<SerializationRecordId, object> IDeserializer.DeserializedObjects => _deserializedObjects; 76private HashSet<SerializationRecordId>? _pendingSerializationInfoIds; 81private readonly HashSet<SerializationRecordId> _incompleteObjects = []; 82public HashSet<SerializationRecordId> IncompleteObjects => _incompleteObjects; 85private Dictionary<SerializationRecordId, HashSet<SerializationRecordId>>? _incompleteDependencies; 91private readonly Queue<SerializationRecordId> _pendingCompletions = []; 93private readonly SerializationRecordId _rootId; 100SerializationRecordId rootId, 101IReadOnlyDictionary<SerializationRecordId, SerializationRecord> recordMap, 120SerializationRecordId rootId, 121IReadOnlyDictionary<SerializationRecordId, SerializationRecord> recordMap, 143&& _incompleteDependencies.TryGetValue(pending.ObjectId, out HashSet<SerializationRecordId>? dependencies)) 178private void DeserializeRoot(SerializationRecordId rootId) 192SerializationRecordId requiredId; 213object DeserializeNew(SerializationRecordId id) 290if (_incompleteDependencies.TryGetValue(updater.ObjectId, out HashSet<SerializationRecordId>? dependencies)) 304void IDeserializer.CompleteObject(SerializationRecordId id) 309SerializationRecordId completed = default; 313SerializationRecordId completedId = _pendingCompletions.Dequeue(); 361foreach (KeyValuePair<SerializationRecordId, HashSet<SerializationRecordId>> pair in _incompleteDependencies) 363SerializationRecordId incompleteId = pair.Key; 364HashSet<SerializationRecordId> dependencies = pair.Value;
System\Private\Windows\Core\BinaryFormat\Deserializer\FieldValueUpdater.cs (3)
13internal FieldValueUpdater(SerializationRecordId objectId, SerializationRecordId valueId, FieldInfo field) : base(objectId, valueId) 18internal override void UpdateValue(IDictionary<SerializationRecordId, object> objects)
System\Private\Windows\Core\BinaryFormat\Deserializer\IDeserializer.cs (3)
33HashSet<SerializationRecordId> IncompleteObjects { get; } 45IDictionary<SerializationRecordId, object> DeserializedObjects { get; } 65void CompleteObject(SerializationRecordId id);
System\Private\Windows\Core\BinaryFormat\Deserializer\ObjectRecordDeserializer.cs (8)
35/// <returns>The id that is necessary to complete parsing or <see cref="SerializationRecordId"/> default value if complete.</returns> 36internal abstract SerializationRecordId Continue(); 43private protected (object? value, SerializationRecordId id) UnwrapMemberValue(object? memberValue) 51return (memberValue, default(SerializationRecordId)); 60return (((PrimitiveTypeRecord)serializationRecord).Value, default(SerializationRecordId)); 68(object? value, SerializationRecordId id) TryGetObject(SerializationRecordId id) 89private protected bool DoesValueNeedUpdated(object value, SerializationRecordId valueRecord) =>
System\Private\Windows\Core\BinaryFormat\Deserializer\PendingSerializationInfo.cs (3)
15internal SerializationRecordId ObjectId { get; } 20SerializationRecordId objectId, 30internal void Populate(IDictionary<SerializationRecordId, object> objects, StreamingContext context)
System\Private\Windows\Core\BinaryFormat\Deserializer\SerializationInfoValueUpdater.cs (3)
14internal SerializationInfoValueUpdater(SerializationRecordId objectId, SerializationRecordId valueId, SerializationInfo info, string name) 21internal override void UpdateValue(IDictionary<SerializationRecordId, object> objects)
System\Private\Windows\Core\BinaryFormat\Deserializer\ValueUpdater.cs (5)
13internal SerializationRecordId ValueId { get; } 18internal SerializationRecordId ObjectId { get; } 20private protected ValueUpdater(SerializationRecordId objectId, SerializationRecordId valueId) 26internal abstract void UpdateValue(IDictionary<SerializationRecordId, object> objects);
System.Resources.Extensions (74)
System\Resources\Extensions\BinaryFormat\BinaryFormattedObject.cs (2)
92public SerializationRecord this[SerializationRecordId id] => RecordMap[id]; 94public IReadOnlyDictionary<SerializationRecordId, SerializationRecord> RecordMap { get; }
System\Resources\Extensions\BinaryFormat\BinaryFormattedObject.IParseState.cs (1)
18IReadOnlyDictionary<SerializationRecordId, SerializationRecord> RecordMap { get; }
System\Resources\Extensions\BinaryFormat\BinaryFormattedObject.ParseState.cs (1)
26public IReadOnlyDictionary<SerializationRecordId, SerializationRecord> RecordMap => _format.RecordMap;
System\Resources\Extensions\BinaryFormat\Deserializer\ArrayRecordDeserializer.cs (3)
50internal override SerializationRecordId Continue() 57(object? memberValue, SerializationRecordId reference) = UnwrapMemberValue(_arrayOfClassRecords.GetValue(indices)); 100return default(SerializationRecordId);
System\Resources\Extensions\BinaryFormat\Deserializer\ArrayUpdater.cs (3)
13internal ArrayUpdater(SerializationRecordId objectId, SerializationRecordId valueId, int[] indices) : base(objectId, valueId) 18internal override void UpdateValue(IDictionary<SerializationRecordId, object> objects)
System\Resources\Extensions\BinaryFormat\Deserializer\ClassRecordDeserializer.cs (1)
34SerializationRecordId id = classRecord.Id;
System\Resources\Extensions\BinaryFormat\Deserializer\ClassRecordFieldInfoDeserializer.cs (3)
41internal override SerializationRecordId Continue() 68(object? memberValue, SerializationRecordId reference) = UnwrapMemberValue(_classRecord.GetRawValue(field.Name)); 95return default(SerializationRecordId);
System\Resources\Extensions\BinaryFormat\Deserializer\ClassRecordSerializationInfoDeserializer.cs (3)
42internal override SerializationRecordId Continue() 49(object? memberValue, SerializationRecordId reference) = UnwrapMemberValue(_classRecord.GetRawValue(memberName)); 88return default(SerializationRecordId);
System\Resources\Extensions\BinaryFormat\Deserializer\Deserializer.cs (30)
54private readonly IReadOnlyDictionary<SerializationRecordId, SerializationRecord> _recordMap; 63private readonly Dictionary<SerializationRecordId, object> _deserializedObjects = []; 64IDictionary<SerializationRecordId, object> IDeserializer.DeserializedObjects => _deserializedObjects; 78private HashSet<SerializationRecordId>? _pendingSerializationInfoIds; 83private readonly HashSet<SerializationRecordId> _incompleteObjects = []; 84public HashSet<SerializationRecordId> IncompleteObjects => _incompleteObjects; 87private Dictionary<SerializationRecordId, HashSet<SerializationRecordId>>? _incompleteDependencies; 93private readonly Queue<SerializationRecordId> _pendingCompletions = []; 95private readonly SerializationRecordId _rootId; 102SerializationRecordId rootId, 103IReadOnlyDictionary<SerializationRecordId, SerializationRecord> recordMap, 123SerializationRecordId rootId, 124IReadOnlyDictionary<SerializationRecordId, SerializationRecord> recordMap, 147&& _incompleteDependencies.TryGetValue(pending.ObjectId, out HashSet<SerializationRecordId>? dependencies)) 182private void DeserializeRoot(SerializationRecordId rootId) 196SerializationRecordId requiredId; 197while (!(requiredId = currentParser.Continue()).Equals(default(SerializationRecordId))) 217object DeserializeNew(SerializationRecordId id) 294if (_incompleteDependencies.TryGetValue(updater.ObjectId, out HashSet<SerializationRecordId>? dependencies)) 308void IDeserializer.CompleteObject(SerializationRecordId id) 313SerializationRecordId completed = default(SerializationRecordId); 317SerializationRecordId completedId = _pendingCompletions.Dequeue(); 322if (!completed.Equals(default(SerializationRecordId))) 333completed = default(SerializationRecordId); 365foreach (KeyValuePair<SerializationRecordId, HashSet<SerializationRecordId>> pair in _incompleteDependencies) 367SerializationRecordId incompleteId = pair.Key; 368HashSet<SerializationRecordId> dependencies = pair.Value;
System\Resources\Extensions\BinaryFormat\Deserializer\FieldValueUpdater.cs (3)
14internal FieldValueUpdater(SerializationRecordId objectId, SerializationRecordId valueId, FieldInfo field) : base(objectId, valueId) 19internal override void UpdateValue(IDictionary<SerializationRecordId, object> objects)
System\Resources\Extensions\BinaryFormat\Deserializer\IDeserializer.cs (3)
34HashSet<SerializationRecordId> IncompleteObjects { get; } 46IDictionary<SerializationRecordId, object> DeserializedObjects { get; } 66void CompleteObject(SerializationRecordId id);
System\Resources\Extensions\BinaryFormat\Deserializer\ObjectRecordDeserializer.cs (10)
34/// <returns>The id that is necessary to complete parsing or <see cref="SerializationRecordId"/> default value if complete.</returns> 35internal abstract SerializationRecordId Continue(); 42private protected (object? value, SerializationRecordId id) UnwrapMemberValue(object? memberValue) 46return (null, default(SerializationRecordId)); 50return (memberValue, default(SerializationRecordId)); 59return (((PrimitiveTypeRecord)serializationRecord).Value, default(SerializationRecordId)); 67(object? value, SerializationRecordId id) TryGetObject(SerializationRecordId id) 88private protected bool DoesValueNeedUpdated(object value, SerializationRecordId valueRecord) => 89!valueRecord.Equals(default(SerializationRecordId))
System\Resources\Extensions\BinaryFormat\Deserializer\PendingSerializationInfo.cs (3)
16internal SerializationRecordId ObjectId { get; } 21SerializationRecordId objectId, 31internal void Populate(IDictionary<SerializationRecordId, object> objects, StreamingContext context)
System\Resources\Extensions\BinaryFormat\Deserializer\SerializationInfoValueUpdater.cs (3)
15internal SerializationInfoValueUpdater(SerializationRecordId objectId, SerializationRecordId valueId, SerializationInfo info, string name) : base(objectId, valueId) 21internal override void UpdateValue(IDictionary<SerializationRecordId, object> objects)
System\Resources\Extensions\BinaryFormat\Deserializer\ValueUpdater.cs (5)
14internal SerializationRecordId ValueId { get; } 19internal SerializationRecordId ObjectId { get; } 21private protected ValueUpdater(SerializationRecordId objectId, SerializationRecordId valueId) 27internal abstract void UpdateValue(IDictionary<SerializationRecordId, object> objects);