Module oio

Source
Expand description

oio provides OpenDAL’s raw traits and types that opendal returns as output.

Those types should only be used internally and we don’t want users to depend on them.

Structs§

AppendWriter
AppendWriter will implements oio::Write based on append object.
BatchDeleteResult
BatchDeleteResult is the result of batch delete operation.
BatchDeleter
BatchDeleter is used to implement oio::Delete based on batch delete.
BlockWriter
BlockWriter will implement oio::Write based on block uploads.
Entry
Entry is returned by Page or BlockingPage during list operations.
FlatLister
FlatLister will walk dir in bottom up way:
FlexBuf
FlexBuf is a buffer that support frozen bytes and reuse existing allocated memory.
HierarchyLister
ToHierarchyLister will convert a flat list to hierarchy by filter not needed entries.
MultipartPart
The result of MultipartWrite::write_part.
MultipartWriter
MultipartWriter will implement oio::Write based on multipart uploads.
OneShotDeleter
OneShotDelete is used to implement oio::Delete based on one shot.
OneShotWriter
OneShotWrite is used to implement oio::Write based on one shot.
PageContext
PageContext is the context passing between PageList.
PageLister
PageLister implements oio::List based on PageList.
PooledBuf
PooledBuf is a buffer pool that designed for reusing already allocated bufs.
PositionWriter
PositionWriter will implement oio::Write based on position write.
PrefixLister
PrefixLister is used to filter entries by prefix.
QueueBuf
QueueBuf is a queue of Buffer.

Traits§

AppendWrite
AppendWrite is used to implement oio::Write based on append object. By implementing AppendWrite, services don’t need to care about the details of buffering and uploading parts.
BatchDelete
BatchDelete is used to implement oio::Delete based on batch delete operation.
BlockWrite
BlockWrite is used to implement oio::Write based on block uploads. By implementing BlockWrite, services don’t need to care about the details of uploading blocks.
BlockingDelete
BlockingDelete is the trait to perform delete operations.
BlockingList
BlockingList is the blocking version of List.
BlockingOneShotDelete
BlockingOneShotDelete is used to implement oio::BlockingDelete based on one shot operation.
BlockingRead
Read is the trait that OpenDAL returns to callers.
BlockingWrite
BlockingWrite is the trait that OpenDAL returns to callers.
Delete
The Delete trait defines interfaces for performing deletion operations.
DeleteDyn
The dyn version of Delete
List
Page trait is used by raw::Accessor to implement list operation.
MultipartWrite
MultipartWrite is used to implement oio::Write based on multipart uploads. By implementing MultipartWrite, services don’t need to care about the details of uploading parts.
OneShotDelete
OneShotDelete is used to implement oio::Delete based on one shot operation.
OneShotWrite
OneShotWrite is used to implement oio::Write based on one shot operation. By implementing OneShotWrite, services don’t need to care about the details.
PageList
PageList is used to implement oio::List based on API supporting pagination. By implementing PageList, services don’t need to care about the details of page list.
PositionWrite
PositionWrite is used to implement oio::Write based on position write.
Read
Read is the internal trait used by OpenDAL to read data from storage.
ReadDyn
ReadDyn is the dyn version of Read make it possible to use as Box<dyn ReadDyn>.
Write
Write is the trait that OpenDAL returns to callers.

Type Aliases§

BlockingDeleter
BlockingDeleter is a type erased BlockingDelete
BlockingLister
BlockingLister is a boxed BlockingList
BlockingReader
BlockingReader is a arc dyn BlockingRead.
BlockingWriter
BlockingWriter is a type erased BlockingWrite
Deleter
Deleter is a type erased Delete
Lister
The boxed version of List
Reader
Reader is a type erased Read.
Writer
Writer is a type erased Write