diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2018-12-02 23:52:14 +0100 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2019-02-15 20:53:28 +0100 |
commit | b66371f79b22fd017faacbc7120306b916bd2776 (patch) | |
tree | d7293c3856d6ca817bac8e528e261cbe1c8dc42b /bin/core/imag-mv/src/main.rs | |
parent | 35a500f91c6dd1c792f5ea43d87f9b81da3f5146 (diff) |
Rewrite Store::new* API: libimagstore does not export backend types
With this change applied, libimagstore does not export backend
representing types anymore.
This change is necessar because when we want to switch the `StoreId`
implementation from "complex and stateful" to "Stateless and Cow<'_,
&str>", we need to be able to have a type which represents a "`StoreId`
plus the path of the Store itself".
This "the path of the Store itself" is passed around as reference, to
minimize runtime impact.
Because such a type should not be exported by the libimagstore crate, we
make it `pub(crate)` internally. But because the backend APIs also have
to use this type, we would export the (private) type in the APIs of the
backend.
Because of that we make the backend API also non-visible to crate users,
which also decreases the surface of the libimagstore API itself.
Besides:
Remove function `Link::with_base()` which is not needed anymore (was
used in tests only).
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'bin/core/imag-mv/src/main.rs')
0 files changed, 0 insertions, 0 deletions