Tholp's bespoke website generator

Add elapsed time in output

Changed files
+18 -4
src
+18 -4
src/main.rs
···
env,
fs::{self},
path::PathBuf,
};
use stringtools::{collect_arguments, collect_block, split_to_tokens};
use types::Token;
···
// process_skid(infile, group.convert_html, &mut project.context);
// }
// }
-
for i in 0..project.filegroups.len() {
if !project.filegroups[i].process {
continue;
}
let convert_html = project.filegroups[i].convert_html;
for k in 0..project.filegroups[i].files.len() {
let file_input = project.filegroups[i].files[k].file_input.clone();
let contents = fs::read_to_string(&project.filegroups[i].files[k].file_input)
.expect("File unreadable or missing");
···
&project.filegroups[i].files[k].file_out.clone(),
convert_html,
&process_skid(&tokens, &mut project, &mut skid_context),
);
}
}
}
fn find_and_run_macro(
···
return tokens;
}
-
fn write_file(file_skidout: &PathBuf, file_out: &PathBuf, convert_html: bool, tokens: &[Token]) {
//println!("{:?}", tokens);
let mut skid_output: String = if convert_html {
"<!-- Generated by Skidmark, Do Not Edit! -->\n\n".into()
···
fs::write(&file_out, &skid_output).expect("Couldn't write output to file");
}
ok_generic(&format!(
-
"{} written",
-
file_out.to_str().unwrap_or("Couldnt Unwrap file_out name")
));
}
···
env,
fs::{self},
path::PathBuf,
+
time::Instant,
};
use stringtools::{collect_arguments, collect_block, split_to_tokens};
use types::Token;
···
// process_skid(infile, group.convert_html, &mut project.context);
// }
// }
+
let project_start = Instant::now();
for i in 0..project.filegroups.len() {
if !project.filegroups[i].process {
continue;
}
let convert_html = project.filegroups[i].convert_html;
for k in 0..project.filegroups[i].files.len() {
+
let file_start = Instant::now();
let file_input = project.filegroups[i].files[k].file_input.clone();
let contents = fs::read_to_string(&project.filegroups[i].files[k].file_input)
.expect("File unreadable or missing");
···
&project.filegroups[i].files[k].file_out.clone(),
convert_html,
&process_skid(&tokens, &mut project, &mut skid_context),
+
file_start,
);
}
}
+
info_generic(&format!(
+
"Finished in {:.3}ms",
+
project_start.elapsed().as_secs_f64() * 1000.0
+
));
}
fn find_and_run_macro(
···
return tokens;
}
+
fn write_file(
+
file_skidout: &PathBuf,
+
file_out: &PathBuf,
+
convert_html: bool,
+
tokens: &[Token],
+
file_start: Instant,
+
) {
//println!("{:?}", tokens);
let mut skid_output: String = if convert_html {
"<!-- Generated by Skidmark, Do Not Edit! -->\n\n".into()
···
fs::write(&file_out, &skid_output).expect("Couldn't write output to file");
}
ok_generic(&format!(
+
"{} written in {:.3}ms",
+
file_out.to_str().unwrap_or("Couldnt Unwrap file_out name"),
+
file_start.elapsed().as_secs_f64() * 1000.0
));
}