lightweight structure for loaded features index
|Target version:||current: 2.2.0|
Use lightweight structure for loaded_features index:
- use hand made simple hash structure, which uses only one memory chunk,
- do not store feature name string, only hash of it, since loadedfeaturepath will recheck feature name on hash collision
- use single linked lists instead of arrays for storing features indices.
- store this lists inside one array, using array's indices as a reference.
While startup speedup improvement is relatively small compared current implementation,
this one does not need any Ruby Objects at all, so that there is no presure on GC.