Expand description
The internal implementation details of OpenDAL.
This guide explains the extension boundaries used to implement OpenDAL
storage services and layers. Application code should use the public
Operator API; the raw APIs described here can change between minor
releases.
OpenDAL keeps service implementations typed until it composes them into an operator:
Builder -> Service -> ServiceDyn -> Servicer -> Layer stack -> Operator
^ |
+------ type erasure ------+- A
Serviceimplements storage operations and reports the capabilities it provides. ServiceDynis the object-safe boundary that erases a typed service and its operation bodies.- A
Serviceris the shared, type-erased service handle stored by operators and layers. - A
Layerwraps the service stack, the operation context, or both.
Continue with implementing a service or implementing a layer.