use serde::{Deserialize, Serialize};
pub(super) const MACHINE_PROTOCOL_VERSION: u8 = 1;
pub(super) const MACHINE_MAX_PROCESS_EXIT_CODE: u8 = u8::MAX;
pub(super) const MACHINE_OPERATIONAL_ERROR_EXIT_CODE: u8 = 2;
#[derive(Clone, Copy, Debug, Eq, PartialEq, Deserialize, Serialize)]
#[serde(rename_all = "lowercase")]
pub(super) enum MachineHostPathStyle {
Posix,
Windows,
}
impl MachineHostPathStyle {
pub(super) const VARIANTS: [Self; 2] = [Self::Posix, Self::Windows];
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize)]
#[serde(rename_all = "snake_case")]
pub(super) enum MachineRuntimeErrorCode {
AllWithPaths,
AmbiguousRatchetReplacement,
ExistingConfig,
InvalidExitCode,
LibraryError,
MissingRatchetFile,
NoInitLanguages,
NotImplemented,
RatchetRaises,
RenderConfigFailed,
RenderJsonFailed,
WriteConfigFailed,
}
impl MachineRuntimeErrorCode {
pub(super) const VARIANTS: [Self; 12] = [
Self::AllWithPaths,
Self::AmbiguousRatchetReplacement,
Self::ExistingConfig,
Self::InvalidExitCode,
Self::LibraryError,
Self::MissingRatchetFile,
Self::NoInitLanguages,
Self::NotImplemented,
Self::RatchetRaises,
Self::RenderConfigFailed,
Self::RenderJsonFailed,
Self::WriteConfigFailed,
];
}