Use 'write!(out.front, ...)' to write to the front matter
diff --git a/gen/src/write.rs b/gen/src/write.rs
index 88a0734..ae90047 100644
--- a/gen/src/write.rs
+++ b/gen/src/write.rs
@@ -17,6 +17,10 @@
let mut out_file = OutFile::new(namespace.clone(), header);
let out = &mut out_file;
+ if header {
+ writeln!(out.front, "#pragma once");
+ }
+
out.include.extend(opt.include);
for api in apis {
if let Api::Include(include) = api {
@@ -110,17 +114,9 @@
write_generic_instantiations(out, types);
}
- // We collected necessary includes lazily while generating the above. Now
- // put it all together.
- let mut full_file = OutFile::new(namespace.clone(), header);
- let full = &mut full_file;
- if header {
- writeln!(full, "#pragma once");
- }
- write!(full, "{}", out.include);
- full.next_section();
- full.extend(out);
- full_file
+ write!(out.front, "{}", out.include);
+
+ out_file
}
fn write_includes(out: &mut OutFile, types: &Types) {