From 5e08028fb36aa766957cba64c5c665edf9b96fb7 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Sun, 21 Mar 2021 17:46:09 +0100 Subject: =?UTF-8?q?Syntax=20functions=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This adds overridable functions that markup desugars into. Specifically: - \ desugars into linebreak - Two newlines desugar into parbreak - * desugars into strong - _ desugars into emph - = .. desugars into heading - `..` desugars into raw --- src/syntax/visit.rs | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) (limited to 'src/syntax/visit.rs') diff --git a/src/syntax/visit.rs b/src/syntax/visit.rs index 04546c5d..9c1272ee 100644 --- a/src/syntax/visit.rs +++ b/src/syntax/visit.rs @@ -50,13 +50,13 @@ visit! { fn visit_node(v, node: &Node) { match node { - Node::Strong => {} - Node::Emph => {} - Node::Space => {} - Node::Linebreak => {} - Node::Parbreak => {} Node::Text(_) => {} - Node::Heading(n) => v.visit_tree(&n.contents), + Node::Space => {} + Node::Strong(_) => {} + Node::Linebreak(_) => {} + Node::Parbreak(_) => {} + Node::Emph(_) => {} + Node::Heading(heading) => v.visit_tree(&heading.contents), Node::Raw(_) => {} Node::Expr(expr) => v.visit_expr(expr), } @@ -64,7 +64,15 @@ visit! { fn visit_expr(v, node: &Expr) { match node { - Expr::Lit(_) => {} + Expr::None(_) => {} + Expr::Bool(_, _) => {} + Expr::Int(_, _) => {} + Expr::Float(_, _) => {} + Expr::Length(_, _, _) => {} + Expr::Angle(_, _, _) => {} + Expr::Percent(_, _) => {} + Expr::Color(_, _) => {} + Expr::Str(_, _) => {} Expr::Ident(_) => {} Expr::Array(e) => v.visit_array(e), Expr::Dict(e) => v.visit_dict(e), -- cgit v1.2.3