chiark / gitweb /
internal_logic_error: Provide and use internal_error_bydebug
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 17 Feb 2021 21:27:20 +0000 (21:27 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 17 Feb 2021 21:30:58 +0000 (21:30 +0000)
No change other than to internal error messages.

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

index 11cccb37258140aff405859261a984c194eb4527..336a8cbb35b9cff47d6832b492d71585c9685225 100644 (file)
@@ -59,6 +59,10 @@ pub struct InternalLogicError {
   backtrace: parking_lot::Mutex<backtrace::Backtrace>,
 }
 
+pub fn internal_error_bydebug(desc: &dyn Debug) -> IE {
+  internal_logic_error(format!("{:?}", desc))
+}
+
 pub fn internal_logic_error<S: Into<Cow<'static, str>>>(desc: S) -> IE {
   let backtrace = backtrace::Backtrace::new_unresolved();
   IE::InternalLogicError(InternalLogicError {
index 220a8c986587d8c6ca4cdc010414de0ba2bdab0a..5dfd82c6badf8423a8a82339960fe988a4aab766 100644 (file)
@@ -332,9 +332,7 @@ fn recalculate_occultation_general<
       let h = occulteds[oni].as_ref().ok_or_else(
         || internal_logic_error("most obscure not obscure"))?;
       let opiece = h.occ.occulter;
-      let bad = || internal_logic_error(
-          format!("missing occulter piece {:?} for occid {:?}",
-                  opiece, h.occid));
+      let bad = || internal_error_bydebug(&("missing", opiece, h.occid));
       let oipc = ipieces.get(opiece).ok_or_else(bad)?;
       let ogpc = gs.pieces.get(opiece).ok_or_else(bad)?;
       Ok::<_,IE>(oipc.describe_html(None, ogpc)?)
index 26743e3e759b18f897095ee297c4a24f9f06fbec..0a0fbea4bd26a95d0909971d6284e87b3f8e55c1 100644 (file)
@@ -83,8 +83,8 @@ pub enum LibraryLoadError {
 }
 
 impl LibraryLoadError {
-  fn ought(self) -> InternalError {
-    internal_logic_error(format!("{:?}", self))
+  fn ought(&self) -> InternalError {
+    internal_error_bydebug(self)
   }
 }