From b1b08fc0aa5ad0b6f24e60345e640a05249e3f44 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Thu, 11 Mar 2021 14:45:59 +0000 Subject: [PATCH] shapelib hidden: Move subst up a level nfc Signed-off-by: Ian Jackson --- src/shapelib.rs | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/src/shapelib.rs b/src/shapelib.rs index de80af8c..3e733ea8 100644 --- a/src/shapelib.rs +++ b/src/shapelib.rs @@ -348,6 +348,20 @@ fn load_catalogue(libname: &str, dirname: &str, toml_path: &str) -> Contents { d, }); for fe in gdefn.files.0 { + #[throws(LLE)] + fn subst(before: &str, needle: &'static str, replacement: &str) + -> String { + let mut matches = before.match_indices(needle); + let m1 = matches.next() + .ok_or(LLE::MissingSubstituionToken(needle))?; + if matches.next().is_some() { + Err(LLE::RepeatedSubstituionToken(needle))?; + } + before[0.. m1.0].to_owned() + + replacement + + &before[m1.0 + m1.1.len() ..] + } + let mut add1 = |item_name: &str, desc| { let idata = ItemData { group: group.clone(), @@ -374,21 +388,6 @@ fn load_catalogue(libname: &str, dirname: &str, toml_path: &str) -> Contents { if group.d.colours.is_empty() { add1(&item_name, fe.desc.clone())?; } else { - - #[throws(LLE)] - fn subst(before: &str, needle: &'static str, replacement: &str) - -> String { - let mut matches = before.match_indices(needle); - let m1 = matches.next() - .ok_or(LLE::MissingSubstituionToken(needle))?; - if matches.next().is_some() { - Err(LLE::RepeatedSubstituionToken(needle))?; - } - before[0.. m1.0].to_owned() - + replacement - + &before[m1.0 + m1.1.len() ..] - } - for (colour, recolourdata) in &group.d.colours { let t_item_name = subst(&item_name, "_c", &recolourdata.abbrev)?; let t_desc = Html(subst(&fe.desc.0, "_colour", colour)?); -- 2.30.2