説明
This issue is just to track the implementation plan laid out at the bottom of https://github.com/dtolnay/cxx/pull/298#issuecomment-703817493.
-
Emit all mentions of a type in generated C++ code (in function arguments and so forth) as a fully qualified path#370::name::space::of::Type, even if it currently always happens to be within the same module. -
Store a distinct Namespace on each FFI item rather than having a single global namespace for the whole code generation.#370 -
Implement#370 #380#[namespace = ...]attribute to determine namespace of individual items. -
Implement hierarchical handling of namespace which prioritizes item-level attribute > extern block > module.#444 -
Emit ExternType impls for shared structs.#341 -
Safe ExternType derive for extern Rust items.16e2620fe51032d789770b489e27a9c6c27719efextern "Rust" { #[derive(ExternType)] type TheType; } -
Permit
useinside of cxx::bridge.