The internal fields of Ext4 are now in a new Ext4Inner struct, which Ext4 stores in an Rc (think shared_ptr in C++ terms, but single-threaded).
This will allow Ext4 to be cheaply passed around by cloning it rather than with a reference, which in turn means that other structs can access the filesystem without having a lifetime parameter. That will (in future commits) make it possible to drop the lifetime param from ReadDir, and to add more functionality to DirEntry without adding a lifetime param.
The internal fields of Ext4 are now in a new
Ext4Inner
struct, which Ext4 stores in anRc
(thinkshared_ptr
in C++ terms, but single-threaded).This will allow Ext4 to be cheaply passed around by cloning it rather than with a reference, which in turn means that other structs can access the filesystem without having a lifetime parameter. That will (in future commits) make it possible to drop the lifetime param from
ReadDir
, and to add more functionality toDirEntry
without adding a lifetime param.