view rust/hg-core/src/exit_codes.rs @ 51422:7c6d0b9dde37

rust-index: improve phase computation speed While less memory efficient, using an array is *much* faster than using a HashMap, especially with the default hasher. It even makes the code simpler, so I'm not really sure what I was thinking in the first place, maybe it's more obvious now. This fix a significant performance regression when using the rust version of the code. (however, the C code still outperform rust on this operation) hg perf::phases on mozilla-try-2023-03-22 - 6.6.3: 0.451239 seconds - before: 0.982495 seconds - after: 0.265347 seconds - C code: 0.183241 second
author Rapha?l Gom?s <rgomes@octobus.net>
date Thu, 22 Feb 2024 15:06:16 +0100
parents 7c93e38a0bbd
children
line wrap: on
line source

pub type ExitCode = i32;

/// Successful exit
pub const OK: ExitCode = 0;

/// Generic abort
pub const ABORT: ExitCode = 255;

// Abort when there is a config related error
pub const CONFIG_ERROR_ABORT: ExitCode = 30;

/// Indicates that the operation might work if retried in a different state.
/// Examples: Unresolved merge conflicts, unfinished operations
pub const STATE_ERROR: ExitCode = 20;

// Abort when there is an error while parsing config
pub const CONFIG_PARSE_ERROR_ABORT: ExitCode = 10;

/// Generic something completed but did not succeed
pub const UNSUCCESSFUL: ExitCode = 1;

/// Command or feature not implemented by rhg
pub const UNIMPLEMENTED: ExitCode = 252;

/// The fallback path is not valid
pub const INVALID_FALLBACK: ExitCode = 253;