| David Tolnay | 4ca366f | 2020-11-10 20:55:31 -0800 | [diff] [blame^] | 1 | #pragma once |
| 2 | #include "rust/cxx.h" |
| 3 | #include <memory> |
| 4 | |
| 5 | namespace org { |
| 6 | namespace blobstore { |
| 7 | |
| 8 | struct MultiBuf; |
| 9 | struct BlobMetadata; |
| 10 | |
| 11 | class BlobstoreClient { |
| 12 | public: |
| 13 | BlobstoreClient(); |
| 14 | uint64_t put(MultiBuf &buf) const; |
| 15 | void tag(uint64_t blobid, rust::Str tag) const; |
| 16 | BlobMetadata metadata(uint64_t blobid) const; |
| 17 | |
| 18 | private: |
| 19 | class impl; |
| 20 | std::shared_ptr<impl> impl; |
| 21 | }; |
| 22 | |
| 23 | std::unique_ptr<BlobstoreClient> new_blobstore_client(); |
| 24 | |
| 25 | } // namespace blobstore |
| 26 | } // namespace org |