Skip past shebang in source file
diff --git a/gen/src/mod.rs b/gen/src/mod.rs
index 8df3404..0aa149f 100644
--- a/gen/src/mod.rs
+++ b/gen/src/mod.rs
@@ -49,9 +49,14 @@
Ok(source) => source,
Err(err) => format_err(path, "", Error::Io(err)),
};
- match generate(&source, opt, header) {
+ let mut source = source.as_str();
+ if source.starts_with("#!") && !source.starts_with("#![") {
+ let shebang_end = source.find('\n').unwrap_or(source.len());
+ source = &source[shebang_end..];
+ }
+ match generate(source, opt, header) {
Ok(out) => out,
- Err(err) => format_err(path, &source, err),
+ Err(err) => format_err(path, source, err),
}
}