rust/rhg/src/error.rs
changeset 46437 b274aa2f20fd
parent 46436 252d1bdba33d
child 46440 776b97179c06
--- a/rust/rhg/src/error.rs	Tue Jan 26 20:31:26 2021 +0100
+++ b/rust/rhg/src/error.rs	Tue Jan 26 20:42:36 2021 +0100
@@ -2,11 +2,9 @@
 use crate::ui::utf8_to_local;
 use crate::ui::UiError;
 use format_bytes::format_bytes;
-use hg::operations::{
-    CatRevError, DebugDataError, FindRootError, ListDirstateTrackedFilesError,
-    ListRevTrackedFilesError,
-};
+use hg::operations::{FindRootError, ListDirstateTrackedFilesError};
 use hg::requirements::RequirementsError;
+use hg::revlog::revlog::RevlogError;
 use hg::utils::files::get_bytes_from_path;
 use std::convert::From;
 use std::path::PathBuf;
@@ -99,27 +97,27 @@
     }
 }
 
-impl From<(DebugDataError, &str)> for CommandError {
-    fn from((err, rev): (DebugDataError, &str)) -> CommandError {
+impl From<(RevlogError, &str)> for CommandError {
+    fn from((err, rev): (RevlogError, &str)) -> CommandError {
         match err {
-            DebugDataError::IoError(err) => CommandError::Abort(Some(
+            RevlogError::IoError(err) => CommandError::Abort(Some(
                 utf8_to_local(&format!("abort: {}\n", err)).into(),
             )),
-            DebugDataError::InvalidRevision => CommandError::Abort(Some(
+            RevlogError::InvalidRevision => CommandError::Abort(Some(
                 utf8_to_local(&format!(
-                    "abort: invalid revision identifier{}\n",
+                    "abort: invalid revision identifier {}\n",
                     rev
                 ))
                 .into(),
             )),
-            DebugDataError::AmbiguousPrefix => CommandError::Abort(Some(
+            RevlogError::AmbiguousPrefix => CommandError::Abort(Some(
                 utf8_to_local(&format!(
-                    "abort: ambiguous revision identifier{}\n",
+                    "abort: ambiguous revision identifier {}\n",
                     rev
                 ))
                 .into(),
             )),
-            DebugDataError::UnsuportedRevlogVersion(version) => {
+            RevlogError::UnsuportedVersion(version) => {
                 CommandError::Abort(Some(
                     utf8_to_local(&format!(
                         "abort: unsupported revlog version {}\n",
@@ -128,104 +126,10 @@
                     .into(),
                 ))
             }
-            DebugDataError::CorruptedRevlog => {
+            RevlogError::Corrupted => {
                 CommandError::Abort(Some("abort: corrupted revlog\n".into()))
             }
-            DebugDataError::UnknowRevlogDataFormat(format) => {
-                CommandError::Abort(Some(
-                    utf8_to_local(&format!(
-                        "abort: unknow revlog dataformat {:?}\n",
-                        format
-                    ))
-                    .into(),
-                ))
-            }
-        }
-    }
-}
-
-impl From<(ListRevTrackedFilesError, &str)> for CommandError {
-    fn from((err, rev): (ListRevTrackedFilesError, &str)) -> CommandError {
-        match err {
-            ListRevTrackedFilesError::IoError(err) => CommandError::Abort(
-                Some(utf8_to_local(&format!("abort: {}\n", err)).into()),
-            ),
-            ListRevTrackedFilesError::InvalidRevision => {
-                CommandError::Abort(Some(
-                    utf8_to_local(&format!(
-                        "abort: invalid revision identifier {}\n",
-                        rev
-                    ))
-                    .into(),
-                ))
-            }
-            ListRevTrackedFilesError::AmbiguousPrefix => {
-                CommandError::Abort(Some(
-                    utf8_to_local(&format!(
-                        "abort: ambiguous revision identifier {}\n",
-                        rev
-                    ))
-                    .into(),
-                ))
-            }
-            ListRevTrackedFilesError::UnsuportedRevlogVersion(version) => {
-                CommandError::Abort(Some(
-                    utf8_to_local(&format!(
-                        "abort: unsupported revlog version {}\n",
-                        version
-                    ))
-                    .into(),
-                ))
-            }
-            ListRevTrackedFilesError::CorruptedRevlog => {
-                CommandError::Abort(Some("abort: corrupted revlog\n".into()))
-            }
-            ListRevTrackedFilesError::UnknowRevlogDataFormat(format) => {
-                CommandError::Abort(Some(
-                    utf8_to_local(&format!(
-                        "abort: unknow revlog dataformat {:?}\n",
-                        format
-                    ))
-                    .into(),
-                ))
-            }
-        }
-    }
-}
-
-impl From<(CatRevError, &str)> for CommandError {
-    fn from((err, rev): (CatRevError, &str)) -> CommandError {
-        match err {
-            CatRevError::IoError(err) => CommandError::Abort(Some(
-                utf8_to_local(&format!("abort: {}\n", err)).into(),
-            )),
-            CatRevError::InvalidRevision => CommandError::Abort(Some(
-                utf8_to_local(&format!(
-                    "abort: invalid revision identifier {}\n",
-                    rev
-                ))
-                .into(),
-            )),
-            CatRevError::AmbiguousPrefix => CommandError::Abort(Some(
-                utf8_to_local(&format!(
-                    "abort: ambiguous revision identifier {}\n",
-                    rev
-                ))
-                .into(),
-            )),
-            CatRevError::UnsuportedRevlogVersion(version) => {
-                CommandError::Abort(Some(
-                    utf8_to_local(&format!(
-                        "abort: unsupported revlog version {}\n",
-                        version
-                    ))
-                    .into(),
-                ))
-            }
-            CatRevError::CorruptedRevlog => {
-                CommandError::Abort(Some("abort: corrupted revlog\n".into()))
-            }
-            CatRevError::UnknowRevlogDataFormat(format) => {
+            RevlogError::UnknowDataFormat(format) => {
                 CommandError::Abort(Some(
                     utf8_to_local(&format!(
                         "abort: unknow revlog dataformat {:?}\n",