pathname: eagerly initialize lazy instance variables
Continues d57efd9ea2 by initialising the lazy memoised instance
variables defined in `extend/pathname.rb` and `DiskUsageExtension`
(`@magic_number`, `@file_type`, `@zipinfo`, `@which_install_info`,
`@disk_usage`, `@file_count`) up front via a new prepended
`EagerInitializeExtension` module, so every `Pathname` instance
shares the same object shape and we no longer hit:
warning: The class Pathname reached 8 shape variations,
instance variables accesses will be slower and memory usage
increased. P
Patrick Linnane committed
0ddb2c9acc2f0e594df4bf8eb5b52589b32a8835
Parent: 850931a