• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
27