Changelog
All notable changes to this package will be documented in this file.
[0.8.1-preview] - 2019-09-25
Fixed
- Public fields and properties from base class will now again be reflected correctly.
[0.8.0-preview] - 2019-09-24
Added
- Added a
TypeConstructionutility to allow the creation of new instances. - Minimal unity version has been updated to 2019.3.
- Added
PropertyElementto help with generic, property-backed UI inspectors
Fixed
- Fixed all
PropertyContainer.Try[...]methods to not throw exceptions when visiting nested types. - Fixed property bag reflection duplicates when base class contains an internal field or property.
[0.7.2-preview] - 2019-09-12
Changed
- Exposed a default way to manually visit collection items, through
VisitCollectionElementCallback<TContainer>
Added
- Added
PropertyContainer.TryGetValueAtPathandPropertyContainer.TrySetValueAtPath, which will try to set a value for a givenPropertyPath. - Added
PropertyContainer.TryGetCountAtPathandPropertyContainer.TrySetCountAtPath, which will try to set the count of a collection for a givenPropertyPath. - Added
PropertyContainer.VisitAtPathandPropertyContainer.TryVisitAtPath, which will do a partial visitation for a givenPropertyPath.
[0.7.1-preview] - 2019-08-29
Fixed
- Narrowing conversions between supported enum types will not throw an
InvalidCastExceptionanymore.
[0.7.0-preview] - 2019-08-23
Fixed
- Conversion to all supported underlying type of enums should now be supported.
- Type conversion should now work on derived types.
Added
- Added
PropertyContainer.GetValueAtPathandPropertyContainer.SetValueAtPath, which will set a value for a givenPropertyPath. - Added construction of a
PropertyPathfrom a string (i.e.Path.To.The.List[1].Value).
Changed
- Breaking change
IPropertyGetterandICollectionPropertyGetterare now passed by ref during visitation.
[0.6.4-preview] - 2019-08-15
Fixed
- Fixed property bag reflection for base class with private properties.
- Disabled generation of properties for reflected pointer fields in order to avoid casting errors.
[0.6.3-preview] - 2019-08-06
Fixed
- Fixed
System.GuidpropertiesIsContainervalue to returnfalse. - Fixed property bag reflection for base class with private fields.
- Fixed property bag reflection for private properties.
[0.6.2-preview] - 2019-07-29
Fixed
- Fixed property bag resolution for boxed and interface types.
[0.6.1-preview] - 2019-07-25
Fixed
- Fixed the reflection property generator to correclty handle
IList<T>,List<T>andT[]collection types. - Fixed
ArgumentNullExceptionwhen visiting a null container.
[0.6.0-preview] - 2019-07-19
Added
- Added
[Property]attribute which can be used on fields or C# properties. The attribute will force the reflection generator to include the member.
Changed
PropertyBagResolver.RegisterProviderhas been removed and replaced with access to a staticReflectedPropertyBagProvider.Unity.Properties.Reflectionassembly has been removed and merged withUnity.Properties.
Fixed
TypeConverterno longer warns if the source and destination types are the same.- TypeConversion of enum types will now convert based on the value and not the index.
- PropertyContainer.Transfer now ensures destination type is a reference type when not passed by ref.
- Fix generated properties for
List<string>incorrectly treating strings as container types. UnmanagedPropertycan now be generated forchartypes during reflection.
[0.5.0-preview] - 2019-04-29
Changed
- Complete refactor of the Properties package.