我正在使用 bindgen 生成具有以下配置的代码。
let mut builder = bindgen::Builder::default()
.clang_arg("-std=c++11")
.clang_arg("-x")
.clang_arg("c++")
.clang_arg("-Wno-pragma-once-outside-header")
.layout_tests(false)
.derive_copy(true)
.enable_cxx_namespaces()
.default_enum_style(EnumVariation::Rust {
non_exhaustive: false,
});
但是我发现生成的代码像
#[derive(Debug, Copy, Clone)]
pub struct RawCppPtr {
pub ptr: root::DB::RawVoidPtr,
pub type_: root::DB::RawCppPtrType,
}
我想知道是否有任何方法我只能生成#[derive(Clone)]
而不生成[derive(Copy)]
?