feat: add enum 'Outcome'

This commit is contained in:
2025-11-16 08:20:47 +01:00
parent 00b0463465
commit 201cafe329
2 changed files with 53 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
pub mod die; pub mod die;
pub mod failed_to; pub mod failed_to;
pub mod handful; pub mod handful;
pub mod outcome;

View File

@@ -0,0 +1,52 @@
use crate::*;
// use std::fmt::Display;
// use std::str::FromStr;
#[derive(Debug, PartialEq, PartialOrd, Eq, Ord, Clone, Hash)]
pub enum E {
Scalar(u16),
List(Vec<u16>),
}
// impl Display for E {
// fn fmt(&self, f: &mut std::fmt::Formatter) -> std::result::Result<(), std::fmt::Error> {
// match self {
// Self::NoValue => write!(f, "NoValue"),
// }
// }
// }
// impl FromStr for E {
// type Err = Box<dyn std::error::Error>;
// fn from_str(value: &str) -> std::result::Result<Self, Box<dyn std::error::Error>> {
// match value {
// "NoValue" => Ok(Self::NoValue),
// _ => unreachable!(),
// }
// }
// }
// #[cfg(test)]
// mod unit_tests {
// use super::*;
// #[test]
// fn check_001() {
// for value in [E::NoValue] {
// match value {
// E::NoValue => assert_eq!(
// E::NoValue,
// E::from_str("NoValue").unwrap()
// ),
// }
// }
// }
//
// #[test]
// fn check_002() {
// for value in [E::NoValue] {
// match value {
// E::NoValue => assert_eq!(&E::NoValue.to_string(), "NoValue"),
// }
// }
// }
// }