internal ObjectMap(
string objectName,
[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)] Type objectType,
string[] memberNames,
ObjectReader objectReader,
int objectId,
BinaryAssemblyInfo assemblyInfo)
{
_objectName = objectName;
_objectType = objectType;
_memberNames = memberNames;
_objectReader = objectReader;
_objectId = objectId;
_assemblyInfo = assemblyInfo;
_objectInfo = objectReader.CreateReadObjectInfo(objectType);
_memberTypes = _objectInfo.GetMemberTypes(memberNames, objectType) !;
_binaryTypeEnumA = new BinaryTypeEnum[_memberTypes.Length];
_typeInformationA = new object[_memberTypes.Length];
for (int i = 0; i < _memberTypes.Length; i++)
{
BinaryTypeEnum binaryTypeEnum = BinaryTypeConverter.GetParserBinaryTypeInfo(_memberTypes[i] !, out object?typeInformation);
_binaryTypeEnumA[i] = binaryTypeEnum;
_typeInformationA[i] = typeInformation;
}
}