Add construction and assignment for rust::Vec
diff --git a/gen/write.rs b/gen/write.rs
index ccd6c2f..cdbfc75 100644
--- a/gen/write.rs
+++ b/gen/write.rs
@@ -1028,6 +1028,11 @@
writeln!(out, "#define CXXBRIDGE02_RUST_VEC_{}", instance);
writeln!(
out,
+ "void cxxbridge02$rust_vec${}$new(const ::rust::Vec<{}> *ptr) noexcept;",
+ instance, inner,
+ );
+ writeln!(
+ out,
"void cxxbridge02$rust_vec${}$drop(::rust::Vec<{}> *ptr) noexcept;",
instance, inner,
);
@@ -1075,6 +1080,11 @@
let instance = to_mangled(&out.namespace, &element);
writeln!(out, "template <>");
+ writeln!(out, "Vec<{}>::Vec() noexcept {{", inner);
+ writeln!(out, " cxxbridge02$rust_vec${}$new(this);", instance);
+ writeln!(out, "}}");
+
+ writeln!(out, "template <>");
writeln!(out, "void Vec<{}>::drop() noexcept {{", inner);
writeln!(
out,