1#pragma once 2#include "rust/cxx.h" 3#include <memory> 4 5namespace org { 6namespace blobstore { 7 8struct MultiBuf; 9struct BlobMetadata; 10 11class BlobstoreClient { 12public: 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 18private: 19 class impl; 20 std::shared_ptr<impl> impl; 21}; 22 23std::unique_ptr<BlobstoreClient> new_blobstore_client(); 24 25} // namespace blobstore 26} // namespace org 27