summaryrefslogtreecommitdiff
path: root/src/visitor/typesetting.rs
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2022-04-02 12:40:52 +0300
committerLars Wirzenius <liw@liw.fi>2022-04-10 15:57:57 +0300
commitc9627df005b5344f437c9eaaa98bb5fe00c47313 (patch)
tree2ef11b14d1c6f3600fe3e806720d324b38b4d7fe /src/visitor/typesetting.rs
parent85212e8ddc54c6ede71912127eaf84aac403f10d (diff)
downloadsubplot-c9627df005b5344f437c9eaaa98bb5fe00c47313.tar.gz
feat: make typesetting issues into warnings
Sponsored-by: author
Diffstat (limited to 'src/visitor/typesetting.rs')
-rw-r--r--src/visitor/typesetting.rs15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/visitor/typesetting.rs b/src/visitor/typesetting.rs
index e29a434..f2f435e 100644
--- a/src/visitor/typesetting.rs
+++ b/src/visitor/typesetting.rs
@@ -1,6 +1,6 @@
use crate::panhelper;
use crate::typeset;
-use crate::{Bindings, Style};
+use crate::{Bindings, Style, Warnings};
use pandoc_ast::{Block, Inline, MutVisitor};
@@ -10,11 +10,20 @@ use pandoc_ast::{Block, Inline, MutVisitor};
pub struct TypesettingVisitor<'a> {
style: Style,
bindings: &'a Bindings,
+ warnings: Warnings,
}
impl<'a> TypesettingVisitor<'a> {
pub fn new(style: Style, bindings: &'a Bindings) -> Self {
- TypesettingVisitor { style, bindings }
+ TypesettingVisitor {
+ style,
+ bindings,
+ warnings: Warnings::default(),
+ }
+ }
+
+ pub fn warnings(self) -> Warnings {
+ self.warnings
}
}
@@ -30,7 +39,7 @@ impl<'a> MutVisitor for TypesettingVisitor<'a> {
match block {
Block::CodeBlock(attr, s) => {
if is_class(attr, "scenario") {
- *block = typeset::scenario_snippet(self.bindings, s)
+ *block = typeset::scenario_snippet(self.bindings, s, &mut self.warnings)
} else if is_class(attr, "file") {
*block = typeset::file_block(attr, s)
} else if is_class(attr, "dot") {