Compare commits
8 Commits
1ca8c5ea75
...
00b0463465
| Author | SHA1 | Date | |
|---|---|---|---|
| 00b0463465 | |||
| 11a6f4c592 | |||
| a0f3d98fa2 | |||
| 13d77f136e | |||
| 97a0fbb163 | |||
| 85824b87ff | |||
| e0fe0786ac | |||
| 9aac3d6bed |
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
01.workspace/target
|
||||||
7
01.workspace/Cargo.lock
generated
Normal file
7
01.workspace/Cargo.lock
generated
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
|
version = 4
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "oxidice_lib"
|
||||||
|
version = "0.1.0"
|
||||||
5
01.workspace/Cargo.toml
Normal file
5
01.workspace/Cargo.toml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
[workspace]
|
||||||
|
|
||||||
|
resolver = "3"
|
||||||
|
|
||||||
|
members = ["oxidice_lib"]
|
||||||
6
01.workspace/oxidice_lib/Cargo.toml
Normal file
6
01.workspace/oxidice_lib/Cargo.toml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[package]
|
||||||
|
name = "oxidice_lib"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2024"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
1
01.workspace/oxidice_lib/src/fun/mod.rs
Normal file
1
01.workspace/oxidice_lib/src/fun/mod.rs
Normal file
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
10
01.workspace/oxidice_lib/src/imp/die_new.rs
Normal file
10
01.workspace/oxidice_lib/src/imp/die_new.rs
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
use crate::*;
|
||||||
|
|
||||||
|
impl Die {
|
||||||
|
pub fn new(sides: u16) -> Self {
|
||||||
|
Self { sides }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// #[cfg(test)]
|
||||||
|
// mod unit_tests { use super::*; }
|
||||||
11
01.workspace/oxidice_lib/src/imp/handful_grab.rs
Normal file
11
01.workspace/oxidice_lib/src/imp/handful_grab.rs
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
use crate::*;
|
||||||
|
|
||||||
|
impl Handful {
|
||||||
|
pub fn grab(dice_num: u16, sides: u16) -> Self {
|
||||||
|
let mut dice = Vec::<Die>::new();
|
||||||
|
for _ in 1..=dice_num {
|
||||||
|
dice.push(Die::new(sides));
|
||||||
|
}
|
||||||
|
Self { dice }
|
||||||
|
}
|
||||||
|
}
|
||||||
2
01.workspace/oxidice_lib/src/imp/mod.rs
Normal file
2
01.workspace/oxidice_lib/src/imp/mod.rs
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
pub mod die_new;
|
||||||
|
pub mod handful_grab;
|
||||||
12
01.workspace/oxidice_lib/src/lib.rs
Normal file
12
01.workspace/oxidice_lib/src/lib.rs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
use std::*;
|
||||||
|
|
||||||
|
mod fun;
|
||||||
|
mod imp;
|
||||||
|
mod mcr;
|
||||||
|
mod str;
|
||||||
|
mod trt;
|
||||||
|
mod tst;
|
||||||
|
|
||||||
|
pub(crate) use crate::str::die::O as Die;
|
||||||
|
pub(crate) use crate::str::failed_to::E as FailedTo;
|
||||||
|
pub(crate) use crate::str::handful::O as Handful;
|
||||||
1
01.workspace/oxidice_lib/src/mcr/mod.rs
Normal file
1
01.workspace/oxidice_lib/src/mcr/mod.rs
Normal file
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
17
01.workspace/oxidice_lib/src/str/die.rs
Normal file
17
01.workspace/oxidice_lib/src/str/die.rs
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
use crate::*;
|
||||||
|
|
||||||
|
#[derive(Debug, Default, PartialEq, Clone)]
|
||||||
|
pub struct O {
|
||||||
|
pub(crate) sides: u16,
|
||||||
|
}
|
||||||
|
|
||||||
|
// impl std::fmt::Display for O {
|
||||||
|
// fn fmt(&self, _f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> {
|
||||||
|
// todo!();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// #[cfg(test)]
|
||||||
|
// mod unit_tests {
|
||||||
|
// use super::*;
|
||||||
|
// }
|
||||||
49
01.workspace/oxidice_lib/src/str/failed_to.rs
Normal file
49
01.workspace/oxidice_lib/src/str/failed_to.rs
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
use crate::*;
|
||||||
|
// use std::fmt::Display;
|
||||||
|
// use std::str::FromStr;
|
||||||
|
|
||||||
|
#[derive(Debug, PartialEq, PartialOrd, Eq, Ord, Clone, Copy, Hash)]
|
||||||
|
pub enum E {}
|
||||||
|
|
||||||
|
// 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"),
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
17
01.workspace/oxidice_lib/src/str/handful.rs
Normal file
17
01.workspace/oxidice_lib/src/str/handful.rs
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
use crate::*;
|
||||||
|
|
||||||
|
#[derive(Debug, Default, PartialEq, Clone)]
|
||||||
|
pub struct O {
|
||||||
|
pub(crate) dice: Vec<Die>,
|
||||||
|
}
|
||||||
|
|
||||||
|
// impl std::fmt::Display for O {
|
||||||
|
// fn fmt(&self, _f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> {
|
||||||
|
// todo!();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// #[cfg(test)]
|
||||||
|
// mod unit_tests {
|
||||||
|
// use super::*;
|
||||||
|
// }
|
||||||
3
01.workspace/oxidice_lib/src/str/mod.rs
Normal file
3
01.workspace/oxidice_lib/src/str/mod.rs
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
pub mod die;
|
||||||
|
pub mod failed_to;
|
||||||
|
pub mod handful;
|
||||||
1
01.workspace/oxidice_lib/src/trt/mod.rs
Normal file
1
01.workspace/oxidice_lib/src/trt/mod.rs
Normal file
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
1
01.workspace/oxidice_lib/src/tst/mod.rs
Normal file
1
01.workspace/oxidice_lib/src/tst/mod.rs
Normal file
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
Reference in New Issue
Block a user