- edited description
Can't use HashSet<Interface>
I need to add into an HashSet some instances of classes inheriting from an interface.
Odin says "There is no custom drawer defined for type 'HashSet<IOptimizationSettings>' and the type has no members to draw.
I'm converting my code base from FullInspector to Odin, and this is now quite stopping me to proceed.
Any hint? Unity 2017.2.0f3 - OSX 10.12.6 - Odin 1.0.5.3
Comments (7)
-
reporter -
- changed status to open
Hi Maurizio,
HashSets are unfortunately not yet supported in Odin, they are Serialized just fine, but we don't have a drawer for it yet. We're actively working on a major internal change of the Odin property system, specifically to make it easier for us and others, to add support for types such as HashSet, Stack, Queue, LinkedLists etc...
Until then I'm afraid your best option is to display the HashSet through a list.
-
reporter Yes is what I did, but then I have to instantiate and populate the hash using the serialized list. It's fine because is only on startup. Otherwise I'll be looking forward for the new update. Thanks!
-
- marked as major
-
Is there an ETA for this feature?
We use hashsets extensively and this is a non-starter for our migration to Odin.
-
To give you an update, we now have a working and apparently stable prototype of the new property system, post-rework. It's not ready for release yet, but we're beginning to put it through its paces. We haven't added support for hashsets to it, but it is now rather trivial to do, compared to how difficult it would have been in the old system. So while hashsets are not there yet, progress is going very well on the feature that is needed for hashsets to be added.
-
- changed status to resolved
This feature has been added in Odin 1.1.
- Log in to comment