FileInode

Trait FileInode 

Source
pub trait FileInode:
    Send
    + Sync
    + Debug {
    // Required methods
    fn file_size(&self) -> u64;
    fn blocks_start(&self) -> u64;
    fn add_block_size(&mut self, size: BlockSize);
    fn block_sizes(&self) -> &Vec<BlockSize>;
    fn fragment(&self) -> FragmentLocation;

    // Provided methods
    fn fragment_size(&self, superblock: &SuperBlock) -> u64 { ... }
    fn data_locations(&self) -> Box<dyn Iterator<Item = DataLocation> + '_> { ... }
}
Expand description

Trait to encompass BasicFile and ExtendedFile.

Required Methods§

Source

fn file_size(&self) -> u64

Source

fn blocks_start(&self) -> u64

Source

fn add_block_size(&mut self, size: BlockSize)

Source

fn block_sizes(&self) -> &Vec<BlockSize>

Source

fn fragment(&self) -> FragmentLocation

Provided Methods§

Source

fn fragment_size(&self, superblock: &SuperBlock) -> u64

Source

fn data_locations(&self) -> Box<dyn Iterator<Item = DataLocation> + '_>

Implementors§