From 603fbf0b91c643cfa0921aadb6865ae9d7c094bf Mon Sep 17 00:00:00 2001 From: Philipp A Date: Sat, 9 Nov 2019 14:59:37 +0100 Subject: Simple indirect links --- src/parser/conversion/block.rs | 15 +++++++-------- src/parser/conversion/inline.rs | 1 - 2 files changed, 7 insertions(+), 9 deletions(-) (limited to 'src/parser/conversion') diff --git a/src/parser/conversion/block.rs b/src/parser/conversion/block.rs index 9552539..0de86b5 100644 --- a/src/parser/conversion/block.rs +++ b/src/parser/conversion/block.rs @@ -74,21 +74,20 @@ fn convert_paragraph(pair: Pair) -> Result { fn convert_target(pair: Pair) -> Result { - let mut attrs = a::Target { - anonymous: false, - ..Default::default() - }; + let mut elem: e::Target = Default::default(); + elem.extra_mut().anonymous = false; for p in pair.into_inner() { match p.as_rule() { Rule::target_name_uq | Rule::target_name_qu => { - attrs.refid = Some(p.as_str().into()); - attrs.refname.push(p.as_str().into()); + elem.ids_mut().push(p.as_str().into()); + elem.names_mut().push(p.as_str().into()); }, - Rule::link_target => attrs.refuri = Some(p.parse()?), + // TODO: also handle non-urls + Rule::link_target => elem.extra_mut().refuri = Some(p.parse()?), rule => panic!("Unexpected rule in target: {:?}", rule), } } - Ok(e::Target::new(Default::default(), attrs)) + Ok(elem) } fn convert_substitution_def(pair: Pair) -> Result { diff --git a/src/parser/conversion/inline.rs b/src/parser/conversion/inline.rs index c942732..94f99b4 100644 --- a/src/parser/conversion/inline.rs +++ b/src/parser/conversion/inline.rs @@ -2,7 +2,6 @@ use failure::Error; use pest::iterators::Pair; use crate::document_tree::{ - ExtraAttributes, elements as e, element_categories as c, extra_attributes as a, -- cgit v1.2.3