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,