| # Copyright 2024 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| header = """ |
| // Copyright 2024 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| """ |
| |
| sys_includes = ["zircon/types.h"] |
| |
| include_guard = "SRC_STORAGE_LIB_BLOCK_SERVER_BLOCK_SERVER_C_H_" |
| |
| autogen_warning = """ |
| // NOTE: This file is autogenerated by cbindgen. Don't modify this manually. To regenerate |
| // this file: |
| // |
| // Add `--cargo-toml-gen` to your `fx set`. Then: |
| // |
| // fx build //build/rust:cargo_toml_gen //src/storage/lib/block_server |
| // fx gen-cargo //src/storage/lib/block_server |
| // cargo install cbindgen |
| // rustup default nightly |
| // cbindgen --output block_server_c.h |
| // fx format-code |
| """ |
| |
| after_includes = """ |
| |
| namespace block_server::internal { |
| |
| struct BlockServer; |
| |
| class WriteFlags { |
| public: |
| bool is_force_access() const { return (options_ & 1) != 0; } |
| bool is_pre_barrier() const { return (options_ & 2) != 0; } |
| |
| private: |
| uint32_t options_; |
| }; |
| |
| } // block_server::internal""" |
| |
| namespaces = ["block_server", "internal"] |
| |
| includes = ["lib/zx/vmo.h"] |
| |
| [parse] |
| parse_deps = true |
| include = ["block_protocol"] |
| |
| [export.rename] |
| "UnownedVmo" = "zx::unowned<zx::vmo>" |