summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2020-08-17 16:18:55 +0200
committerLaurenz <laurmaedje@gmail.com>2020-08-17 16:18:55 +0200
commit8a80503188804d576636265e71f72e9f55a7961a (patch)
treeeaffd2440a6fa5d3046fc5c86eeef6d8f426fc02 /main
parent30f16bbf6431ca0c174ca0a1abaa6a13ef50ab06 (diff)
Tidier error output in main and tests 🧹
Diffstat (limited to 'main')
-rw-r--r--main/main.rs17
1 files changed, 16 insertions, 1 deletions
diff --git a/main/main.rs b/main/main.rs
index 0d67241c..65b70d38 100644
--- a/main/main.rs
+++ b/main/main.rs
@@ -44,7 +44,22 @@ fn main() {
let loader = Rc::new(RefCell::new(loader));
let typesetter = Typesetter::new(loader.clone());
- let layouts = block_on(typesetter.typeset(&src)).output;
+ let pass = block_on(typesetter.typeset(&src));
+ let layouts = pass.output;
+
+ let mut feedback = pass.feedback;
+ feedback.diagnostics.sort();
+ for diagnostic in feedback.diagnostics {
+ let span = diagnostic.span;
+ println!(
+ "{}: {}:{}:{} - {}:{}: {}",
+ format!("{:?}", diagnostic.v.level).to_lowercase(),
+ src_path.display(),
+ span.start.line + 1, span.start.column + 1,
+ span.end.line + 1, span.end.column + 1,
+ diagnostic.v.message,
+ );
+ }
let file = File::create(&dest_path)
.expect("failed to create output file");