• 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