chiark / gitweb /
subst: Use ${...} format internally for most things
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 15 May 2022 14:22:54 +0000 (15:22 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 15 May 2022 19:26:01 +0000 (20:26 +0100)
This saves allocating in the usual case and is also clearer.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/shapelib.rs

index a7fe6f0f3a9f80e08aaad44394f6297e1c5a33e3..0d80ff8147d498e0ae0e55926959624f09f5aee1 100644 (file)
@@ -1308,7 +1308,7 @@ fn process_files_entry(
         src, item_name, src_name.as_deref(),
       )?;
       let desc = Substituting::new(mformat, Dollars::Text, &fe.desc);
-      let desc = subst(desc, "_colour", "")?.finish()?.to_html();
+      let desc = subst(desc, "${colour}", "")?.finish()?.to_html();
       OccData::Internal(Arc::new(OccData_Internal {
         item_name,
         loaded: default(),
@@ -1413,7 +1413,7 @@ fn process_files_entry(
     let desc = if let Some(desc_template) = &group.d.desc_template {
       let desc_template = Substituting::new(
         mformat, Dollars::Text, desc_template);
-      subst(desc_template, "_desc", &desc.nest()?)?.finish()?.to_html()
+      subst(desc_template, "${desc}", &desc.nest()?)?.finish()?.to_html()
     } else {
       desc.finish()?.to_html()
     };
@@ -1440,11 +1440,11 @@ fn process_files_entry(
         mformat, &magic.item_prefix, &fe, &magic.item_suffix)?)?;
 
       let spec = Substituting::new(mformat, Dollars::Text, &magic.template);
-      let spec = substn(spec, "_image", &image_table)?;
+      let spec = substn(spec, "${image}", &image_table)?;
       let mut spec = c_colour_all(spec.into())?.is_y()?;
       for (k,v) in &fe.extra_fields {
         if k.starts_with('x') {
-          spec = substn(spec, format!("_{}", k), v)?;
+          spec = substn(spec, format!("${{{}}}", k), v)?;
         }
       }
       let spec = spec.finish()?;
@@ -1470,7 +1470,7 @@ fn process_files_entry(
     add1(None, None)?;
   } else {
     for (colour, recolourdata) in &group.d.colours {
-      add1(Some(("_colour", colour)),
+      add1(Some(("${colour}", colour)),
            Some(("_c", &recolourdata.abbrev)))?;
     }
   }