mirror of
https://gitee.com/openharmony/third_party_rust_cxx
synced 2025-02-19 16:03:38 +00:00
Add support for rust::Vec<bool>
This commit is contained in:
parent
7997d07818
commit
f336b3b343
16
src/cxx.cc
16
src/cxx.cc
@ -266,7 +266,7 @@ void cxxbridge03$unique_ptr$std$string$drop(
|
||||
}
|
||||
|
||||
// Usize and isize are the same type as one of the below.
|
||||
#define FOR_EACH_SIZED_PRIMITIVE(MACRO) \
|
||||
#define FOR_EACH_NUMERIC(MACRO) \
|
||||
MACRO(u8, uint8_t) \
|
||||
MACRO(u16, uint16_t) \
|
||||
MACRO(u32, uint32_t) \
|
||||
@ -278,18 +278,22 @@ void cxxbridge03$unique_ptr$std$string$drop(
|
||||
MACRO(f32, float) \
|
||||
MACRO(f64, double)
|
||||
|
||||
#define FOR_EACH_PRIMITIVE(MACRO) \
|
||||
FOR_EACH_SIZED_PRIMITIVE(MACRO) \
|
||||
#define FOR_EACH_STD_VECTOR(MACRO) \
|
||||
FOR_EACH_NUMERIC(MACRO) \
|
||||
MACRO(usize, size_t) \
|
||||
MACRO(isize, rust::isize)
|
||||
|
||||
#define FOR_EACH_RUST_VEC(MACRO) \
|
||||
FOR_EACH_NUMERIC(MACRO) \
|
||||
MACRO(bool, bool)
|
||||
|
||||
extern "C" {
|
||||
FOR_EACH_PRIMITIVE(STD_VECTOR_OPS)
|
||||
FOR_EACH_SIZED_PRIMITIVE(RUST_VEC_EXTERNS)
|
||||
FOR_EACH_STD_VECTOR(STD_VECTOR_OPS)
|
||||
FOR_EACH_RUST_VEC(RUST_VEC_EXTERNS)
|
||||
} // extern "C"
|
||||
|
||||
namespace rust {
|
||||
inline namespace cxxbridge03 {
|
||||
FOR_EACH_SIZED_PRIMITIVE(RUST_VEC_OPS)
|
||||
FOR_EACH_RUST_VEC(RUST_VEC_OPS)
|
||||
} // namespace cxxbridge03
|
||||
} // namespace rust
|
||||
|
@ -53,6 +53,7 @@ macro_rules! rust_vec_shims_for_primitive {
|
||||
};
|
||||
}
|
||||
|
||||
rust_vec_shims_for_primitive!(bool);
|
||||
rust_vec_shims_for_primitive!(u8);
|
||||
rust_vec_shims_for_primitive!(u16);
|
||||
rust_vec_shims_for_primitive!(u32);
|
||||
|
Loading…
x
Reference in New Issue
Block a user