You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently Map type is mapped, during deserialization, into concrete type to use, default being LinkedHashMap. This works fine in general but in specific case of enum type being used for key, it seems useful to instead map it into EnumMap: this is more efficient type to use and likely what users would prefer (or at very least not mind).
Users may still specify more specific type, like concrete type, to avoid this mapping; it only applies to general references to Map type.
Since this does change observed behavior slightly, it needs to go in next minor or major release: given that 2.9 is the last minor release (very likely) from 2.x, this means 3.0.
The text was updated successfully, but these errors were encountered:
cowtowncoder
changed the title
Add "abstract type mapping" for deserialization from Map<ENUMTYPE,V> into EnumMap
Add "abstract type mapping" for deserialization from Map<ENUMTYPE,V> into EnumMap (and Set<ENUMTYPE> to EnumSet<EnumType>)
Jan 25, 2018
Note: this is potentially backwards-compatibility breaking change, since EnumMap and EnumSet can not contain nulls. Will consider that fine for 3.x, but need to keep in mind just inc ase.
(see #1882 for background)
Currently
Map
type is mapped, during deserialization, into concrete type to use, default beingLinkedHashMap
. This works fine in general but in specific case of enum type being used for key, it seems useful to instead map it intoEnumMap
: this is more efficient type to use and likely what users would prefer (or at very least not mind).Users may still specify more specific type, like concrete type, to avoid this mapping; it only applies to general references to
Map
type.Since this does change observed behavior slightly, it needs to go in next minor or major release: given that 2.9 is the last minor release (very likely) from 2.x, this means 3.0.
The text was updated successfully, but these errors were encountered: