enum UserRes {
Res(Res),
User(User),
ErrServ(ErrServ)
}
let user = if a == b { UserRes::Res(Res { / * ... */ }); } else { UserRes::User(User { /* ... */ }); };
Я не могу просто взять и изменить поле memory_backend: &'a mut dyn MemoryBackend на
// crate::sync::cache;
pub struct Cache<'a, T> {
memory_backend: &'a mut dyn MemoryBackend + Send + Sync,
phantom_data: core::marker::PhantomData<T>,
}
// crate::cache;
pub struct Cache<'a, T> {
memory_backend: &'a mut dyn MemoryBackend,
phantom_data: core::marker::PhantomData<T>,
}
// law of large numbers
pub fn lln(min: u32, max: u32, attempts: u32) -> f32 {
let mut sum = 0;
let mut rng = thread_rng();
for _ in 0..attempts { sum += rng.gen_range(min..=max); }
sum as f32 / attempts as f32
}
A workspace is a set of packages that share the same Cargo.lock and output directory.
cargo build -p kernel --target x86_64-unknown-none
let curr_num: u16 = 2000;
let mut num: u16 = 0;
for (i, b) in curr_num.to_le_bytes().iter().enumerate() {
num += (*b as u16) * 256u16.pow(i as u32);
}
println!("{num}");