์์ฑ๋ C++
#[cxx::bridge]
mod ffi {
// C++์ ๋
ธ์ถ๋ Rust ํ์
๋ฐ ๋ฉ์๋ ์๊ทธ๋์ณ์
๋๋ค.
extern "Rust" {
type MultiBuf;
fn next_chunk(buf: &mut MultiBuf) -> &[u8];
}
}
๊ทธ ๊ฒฐ๊ณผ๋ ๋๋ต ๋ค์๊ณผ ๊ฐ์ C++์ ๋๋ค.
struct MultiBuf final : public ::rust::Opaque {
~MultiBuf() = delete;
private:
friend ::rust::layout;
struct layout {
static ::std::size_t size() noexcept;
static ::std::size_t align() noexcept;
};
};
::rust::Slice<::std::uint8_t const> next_chunk(::org::blobstore::MultiBuf &buf) noexcept;