2.3.6.4 ListDictionary
The ListDictionary record describes a linked list of key-value pairs.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
RecordTypeEnum |
ObjectId |
||||||||||||||||||||||||||||||
|
... |
ClassName (46 bytes) |
||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
MemberCount |
||||||||||||||||||||||||||||||
|
... |
MemberName1 |
||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
MemberName2 |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
MemberName3 |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
MemberName4 |
||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
BinaryTypeEnum1 |
BinaryTypeEnum2 |
|||||||||||||||||||||||||||||
|
BinaryTypeEnum3 |
BinaryTypeEnum4 |
AdditionalInfo1TypeName (61 bytes) |
|||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
AdditionalInfo1LibraryId |
||||||||||||||||||||||||||||||
|
... |
AdditionalInfo2 |
||||||||||||||||||||||||||||||
|
AdditionalInfo3 |
AdditionalInfo4 (29 bytes) |
||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
|
... |
LibraryId |
||||||||||||||||||||||||||||||
|
... |
|||||||||||||||||||||||||||||||
RecordTypeEnum (1 byte): A RecordTypeEnumeration value that identifies the record type. Its value MUST be 0x05.
ObjectId (4 bytes): An INT32 value ([MS-DTYP] section 2.2.22) that uniquely identifies the object in the serialization stream. An implementation MAY use any algorithm to generate the unique IDs. If the ObjectId is referenced by a MemberReference record elsewhere in the serialization stream, the ObjectId MUST be positive. If the ObjectId is not referenced by any MemberReference in the serialization stream, then the ObjectId SHOULD be positive, but MAY be negative.
ClassName (46 bytes): A LengthPrefixedString identifying the class name. Its value MUST be "System.Collections.Specialized.ListDictionary".
MemberCount (4 bytes): An INT32 value ([MS-DTYP] section 2.2.22) that specifies the number of members in this type. Its value MUST be 0x00000004.
MemberName1 (5 bytes): A LengthPrefixedString containing the first member name. The value MUST be "head".
MemberName2 (8 bytes): A LengthPrefixedString containing the second member name. The value MUST be "version".
MemberName3 (9 bytes): A LengthPrefixedString containing the third member name. The value MUST be "count".
MemberName4 (9 bytes): A LengthPrefixedString containing the fourth member name. The value MUST be "comparer".
BinaryTypeEnum1 (1 byte): A BinaryTypeEnumeration value that specifies the binary type of the first member value. The value MUST be 0x04 (Class).
BinaryTypeEnum2 (1 byte): A BinaryTypeEnumeration value that specifies the binary type of the second member value. The value MUST be 0x00 (Primitive).
BinaryTypeEnum3 (1 byte): A BinaryTypeEnumeration value that specifies the binary type of the third member value. The value MUST be 0x00 (Primitive).
BinaryTypeEnum4 (1 byte): A BinaryTypeEnumeration value that specifies the binary type of the fourth member value. The value MUST be 0x03 (SystemClass).
AdditionalInfo1TypeName (61 bytes): A LengthPrefixedString containing the name of the class of the first member value. The value MUST be "System.Collections.Specialized.ListDictionary+DictionaryNode".
AdditionalInfo1LibraryId (4 bytes): An INT32 value ([MS-DTYP] section 2.2.22) that represents the ID that identifies the library name corresponding to the call of the first member value. The record that contains this field in a serialization stream MUST be preceded by a BinaryLibrary record that defines the library name for the ID.
AdditionalInfo2 (1 byte): A PrimitiveTypeEnumeration value that specifies the primitive type of the second member value. The value MUST be 0x08 (Int32).
AdditionalInfo3 (1 byte): A PrimitiveTypeEnumeration value that specifies the primitive type of the third member value. The value MUST be 0x08 (Int32).
AdditionalInfo4 (29 bytes): A LengthPrefixedString containing the name of the class of the fourth member value. The value MUST be "System.Collections.IComparer".
LibraryId (4 bytes): An INT32 value ([MS-DTYP] section 2.2.22) that references a BinaryLibrary record by its library ID. A BinaryLibrary record with the LibraryId MUST appear earlier in the serialization stream.