Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

11 Commits

Repository files navigation

HyperPropertyDescriptor Build status

logo

Provides a vastly accelerate runtime property implementation that can be applied even to closed-source classes

Source

Based on the code from the Marc Gravell article

Results

MyEntity.Name with 25000000 operations

OperationDirectWithout ProviderWith Provider
GetProperties647ms699ms
IsReadOnly2926ms43ms
SupportsChangeEvents245ms41ms
GetValue8ms10360ms57ms
SetValue97ms20288ms155ms
ValueChanged1022ms29566ms954ms

MySuperEntity.Name with 25000000 operations

OperationWithout ProviderWith Provider
GetProperties828ms914ms
IsReadOnly2881ms41ms
SupportsChangeEvents241ms44ms
GetValue10682ms95ms
SetValue20730ms173ms
ValueChanged30979ms1059ms

MySuperEntity.When with 10000000 operations

OperationWithout ProviderWith Provider
GetProperties825ms891ms
IsReadOnly2888ms41ms
SupportsChangeEvents251ms46ms
GetValue11393ms295ms
SetValue22416ms110ms

Example

Just write this piece of code:

HyperTypeDescriptionProvider.Add(typeof(MyEntity));

About

Provides a vastly accelerate runtime property implementation that can be applied even to closed-source classes

Resources

Stars

14 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages