- Update some serialization implementations for ImmediateReflection core types.
- Dynamic methods generated by ImmediateReflection always use the ImmediateReflection module.
- Get rid of targets anterior to .NET Framework 4.0.
- Add target .NET Standard 2.1 to simplify dependency tree when used.
- Assembly is CLS compliant (Common Language Specification).
- Fix wrong generated IL code for copy constructor under .NET5+ target.
- ImmediateType properly handle type having redefined properties with a type different from initial type.
- Use signing key to strong name library assemby.
- JetBrains.Annotations are embedded in the assembly (internal).
- IsDefined/GetAttribute(s) properly handle get of attribute when dealing inheriting attributes.
- All ImmediateReflection types are serializable via C# standard serialization.
- JetBrains.Annotations are no more embedded in the assembly, replaced by a private reference to official NuGet.
- Minor optimization.
- Properly handle null parameter for Copy and TryCopy (return null).
- Copy and TryCopy consider string and Type as copyable types and return themselves if asked.
- Add an access to the Declaring Type directly through ImmediateType, ImmediateProperty and ImmediateField.
- Add an access to the Base Type directly through ImmediateType.
- Add CopyConstructorDelegate delegate.
- Add the possibility to call Copy constructor in a faster way than Activator from ImmediateType.
- Add a type extension to check if a type has a default constructor.
- Add type extensions to check if a type has a copy constructor and to directly call it.
- Add object extensions to check if an instance can be copied by a copy constructor and to directly call it.
- Globally optimize the library by reducing the number of redundant null checks.
- Slightly optimize the branching in generated code.
- Add type extensions to directly call a default constructor delegate from a Type (without ImmediateType).
- Add type extensions to directly call a constructor delegate from a Type (without ImmediateType).
- ImmediateType properly handle arrays which were crashing before.
- Default constructor delegates available via ImmediateType are now cached and shared across several instance of ImmediateType.
- ImmediateProperty are now cached and shared across several instance of ImmediateType.
- ImmediateField are now cached and shared across several instance of ImmediateType.
- Add ConstructorDelegate delegate.
- Classes with indexed properties does not crash anymore.
- Lazily initialize fields property of ImmediateType.
- Improve performances of memory caching within the library.
- Extend support of built-in cache to every target.
- Make some methods only available as extensions accessible as normal methods on targets not supporting extensions.
- IL generated methods are now prefixed to help identify them.
- API Reference and documentation generated based on sources.
- Properly supports static readonly and constant fields.
- Properly handle reflection on enumeration types.
- Default flags taken into account when getting an ImmediateType are Public | Instance | Static
- Get rid of cache system references replaced by a simpler internal caching system.
- Extend caching support to target .NET Framework 4.0.
- Add the possibility to call the default constructor of type in a faster way (with or without throw).
- ImmediateType provides access to every members via Members/GetMembers()/indexed member APIs.
- ImmediateType, ImmediateField and ImmediateProperty provide a faster access to attributes.
- Extensions to retrieve Immediate Reflection types from standard types.
- Extensions to retrieve attributes from standard MemberInfo.
- Provide helpers to easily create strongly typed delegate to get/set properties.
- Add an object wrapper that allows to get/set value on a specific object instance.
- Improve library documentation.
- Library is fully ReSharper annotated.
- First implementation of a fast ("immediate") access and usage of C# Reflection features.
- Supports Type fields and properties getter/setter.