Memoizes slow reflective operations into ClassValue objects. Most notably, creation of a list of accessible, non-primitive Field objects that need to be traversed in measureDeep and countChildren. It also memoizes MemoryLayoutSpecification.sizeOfInstance[WithUnsafe] as both of those also need to retrieve a list of fields.
A separate commit bumps the required version of Java to 7, since that's when java.lang.ClassValue was introduced.
Memoizes slow reflective operations into
ClassValue
objects. Most notably, creation of a list of accessible, non-primitiveField
objects that need to be traversed inmeasureDeep
andcountChildren
. It also memoizesMemoryLayoutSpecification.sizeOfInstance[WithUnsafe]
as both of those also need to retrieve a list of fields.A separate commit bumps the required version of Java to 7, since that's when
java.lang.ClassValue
was introduced.