pub enum VdirYield {
WantsRandom {
len: usize,
},
WantsFileExists(BTreeSet<VdirPath>),
WantsDirExists(BTreeSet<VdirPath>),
WantsDirRead(BTreeSet<VdirPath>),
WantsFileRead(BTreeSet<VdirPath>),
WantsFileCreate(BTreeMap<VdirPath, Vec<u8>>),
WantsDirCreate(BTreeSet<VdirPath>),
WantsDirRemove(BTreeSet<VdirPath>),
WantsFileRemove(BTreeSet<VdirPath>),
WantsRename(Vec<(VdirPath, VdirPath)>),
WantsCopy(Vec<(VdirPath, VdirPath)>),
}Expand description
Standard filesystem Yield. Every io-vdir coroutine picks type Yield = VdirYield.
Each variant is paired with the matching VdirReply variant the
driver feeds back on the next resume.
Variants§
WantsRandom
Driver must supply len random bytes and feed back
VdirReply::Random.
WantsFileExists(BTreeSet<VdirPath>)
Driver must check each path for existence as a regular file and
feed back VdirReply::FileExists.
WantsDirExists(BTreeSet<VdirPath>)
Driver must check each path for existence as a directory and
feed back VdirReply::DirExists.
WantsDirRead(BTreeSet<VdirPath>)
Driver must list each directory’s entries and feed back
VdirReply::DirRead.
WantsFileRead(BTreeSet<VdirPath>)
Driver must read each file’s bytes and feed back
VdirReply::FileRead.
WantsFileCreate(BTreeMap<VdirPath, Vec<u8>>)
Driver must write each (path, bytes) pair and feed back
VdirReply::FileCreate.
WantsDirCreate(BTreeSet<VdirPath>)
Driver must create each directory (with parents) and feed back
VdirReply::DirCreate.
WantsDirRemove(BTreeSet<VdirPath>)
Driver must recursively remove each directory and feed back
VdirReply::DirRemove.
WantsFileRemove(BTreeSet<VdirPath>)
Driver must remove each file and feed back
VdirReply::FileRemove.
WantsRename(Vec<(VdirPath, VdirPath)>)
Driver must rename each (from, to) pair and feed back
VdirReply::Rename.
WantsCopy(Vec<(VdirPath, VdirPath)>)
Driver must copy each (from, to) pair and feed back
VdirReply::Copy.