Skip to content
Snippets Groups Projects
Commit e86258da authored by iliya.saroukha's avatar iliya.saroukha
Browse files

created templates for header file as well as main

parent f4ec8c17
Branches
No related tags found
No related merge requests found
use simplegen::CodeBuffer;
pub fn template_for_header(filename: &str) -> CodeBuffer {
let mut buffer = CodeBuffer::new(4);
let mut mod_filename = filename.to_string();
// Removing trailing whitespace and extension from filename
for _ in 0..3 {
mod_filename.pop();
}
print!("{}", mod_filename);
buffer.println(format!("#ifndef _{}_H_", mod_filename.to_uppercase()).as_str());
buffer.println(format!("#define _{}_H_", mod_filename.to_uppercase()).as_str());
buffer.println("");
buffer.println(format!("typedef struct _{}_t", mod_filename.to_lowercase()).as_str());
buffer.println("{");
buffer.println("");
buffer.println(format!("}} {}_t;", mod_filename.to_lowercase()).as_str());
buffer.println("");
buffer.println("#endif");
return buffer;
}
pub fn template_for_main() -> CodeBuffer {
let mut buffer = CodeBuffer::new(4);
buffer.println("#include <stdio.h>");
buffer.println("#include <stdlib.h>");
buffer.println("");
buffer.println("int main()");
buffer.println("{");
buffer.println("");
buffer.println_right("return 0;");
buffer.println_left("}");
return buffer;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment