-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Expose serialization primitives from System.Private.Corelib #6375
Expose serialization primitives from System.Private.Corelib #6375
Conversation
Build break - |
LGTM otherwise. |
c6006ee
to
d08e4c9
Compare
- Update the model.xml file to expose the serialization primitives from the runtime, e.g. [Serializable], [NonSerialized], ISerializable, etc. - Tweak how FEATURE_SERIALIZATION is used on some types. ISerializable and IDeserializationCallback are not ifdef'd based on FEATURE_SERIALIZATION, but their members are, which means there are some types which are implementing the interface but have the implementation of the interface's method ifdef'd. This commit removes the ifdef'ing of the methods on the interface, and then ifdef's the implementation of the interface on the offending types.
d08e4c9
to
292d4ea
Compare
…reCLR It brings in an FCall not available on coreclr.
<Member Name="ToInt16(System.Object)" /> | ||
<Member Name="ToUInt16(System.Object)" /> | ||
<Member Name="ToInt32(System.Object)" /> | ||
<Member Name="ToUInt32(System.Object)" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ToUInt32 [](start = 20, length = 8)
nit, it's nice to use alpha order because it makes it easier to diff with the tooling generated one. fine either way though.
<Type Name="System.Runtime.Serialization.IFormatterConverter">
<Member Name="Convert(System.Object,System.Type)" />
<Member Name="Convert(System.Object,System.TypeCode)" />
<Member Name="ToBoolean(System.Object)" />
<Member Name="ToByte(System.Object)" />
<Member Name="ToChar(System.Object)" />
<Member Name="ToDateTime(System.Object)" />
<Member Name="ToDecimal(System.Object)" />
<Member Name="ToDouble(System.Object)" />
<Member Name="ToInt16(System.Object)" />
<Member Name="ToInt32(System.Object)" />
<Member Name="ToInt64(System.Object)" />
<Member Name="ToSByte(System.Object)" />
<Member Name="ToSingle(System.Object)" />
<Member Name="ToString(System.Object)" />
<Member Name="ToUInt16(System.Object)" />
<Member Name="ToUInt32(System.Object)" />
<Member Name="ToUInt64(System.Object)" />
</Type>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. If I need to rev it again, I can reorder it. I was just following the order from the source. If it goes in like this, it's also fine for whoever revs it next via a tool to accept any reordering that comes with that.
Looks good. |
Thanks. |
…_modelxml Expose serialization primitives from System.Private.Corelib Commit migrated from dotnet/coreclr@2a1fd93
cc: @jkotas, @danmosemsft
After this, we can: