diff options
| author | Thomas Voss <mail@thomasvoss.com> | 2026-03-15 23:05:05 +0100 |
|---|---|---|
| committer | Thomas Voss <mail@thomasvoss.com> | 2026-03-15 23:05:05 +0100 |
| commit | acd472ae2a246194b1c632e0ab0f91f0f88f60ec (patch) | |
| tree | d339d163eae2ca07825ad39e3276d087f83e79a4 | |
| parent | 5d570a58f9cb64478d2a2704c740e05f15a71235 (diff) | |
Formatting
| -rw-r--r-- | oryxc/src/arena.rs | 5 | ||||
| -rw-r--r-- | oryxc/src/intern.rs | 56 | ||||
| -rw-r--r-- | oryxc/src/unistr.rs | 71 |
3 files changed, 72 insertions, 60 deletions
diff --git a/oryxc/src/arena.rs b/oryxc/src/arena.rs index 01a4290..cb05908 100644 --- a/oryxc/src/arena.rs +++ b/oryxc/src/arena.rs @@ -221,7 +221,10 @@ impl<'s, 'a> ScopedArena<'s, 'a> { #[cfg(test)] mod tests { - use super::{GlobalArena, LocalArena}; + use super::{ + GlobalArena, + LocalArena, + }; #[test] fn test_alloc_slice() { diff --git a/oryxc/src/intern.rs b/oryxc/src/intern.rs index 684a693..eea3cfa 100644 --- a/oryxc/src/intern.rs +++ b/oryxc/src/intern.rs @@ -1,6 +1,4 @@ -use std::hash::{ - Hash, -}; +use std::hash::Hash; use boxcar; use dashmap::DashMap; @@ -34,7 +32,7 @@ where if let Some(key) = self.map.get(&value) { return *key; } - let key = self.store.push(value).into(); + let key = self.store.push(value).into(); self.map.insert(value, key); return key; } @@ -42,33 +40,33 @@ where #[cfg(test)] mod tests { - use crate::unistr::UniStr; - use super::Interner; + use super::Interner; + use crate::unistr::UniStr; - #[test] - fn test_interner_intern() { - let xs = [UniStr("fishi"), UniStr("fishi"), UniStr("fishᵢ")]; - let y = UniStr("andy"); + #[test] + fn test_interner_intern() { + let xs = [UniStr("fishi"), UniStr("fishi"), UniStr("fishᵢ")]; + let y = UniStr("andy"); - let mut interner = Interner::<_, usize>::new(); - for i in 0..xs.len() { - for j in i..xs.len() { - assert_eq!(interner.intern(xs[i]), interner.intern(xs[j])); - } - } - for i in 0..xs.len() { - assert_ne!(interner.intern(y), interner.intern(xs[i])); - } - } + let mut interner = Interner::<_, usize>::new(); + for i in 0..xs.len() { + for j in i..xs.len() { + assert_eq!(interner.intern(xs[i]), interner.intern(xs[j])); + } + } + for i in 0..xs.len() { + assert_ne!(interner.intern(y), interner.intern(xs[i])); + } + } - #[test] - fn test_interner_gets_first_inserted() { - let mut interner = Interner::<_, usize>::new(); - let xs = [UniStr("fishi"), UniStr("fishi"), UniStr("fishᵢ")]; - let ys = xs.iter().map(|&x| interner.intern(x)).collect::<Vec<_>>(); + #[test] + fn test_interner_gets_first_inserted() { + let mut interner = Interner::<_, usize>::new(); + let xs = [UniStr("fishi"), UniStr("fishi"), UniStr("fishᵢ")]; + let ys = xs.iter().map(|&x| interner.intern(x)).collect::<Vec<_>>(); - for i in 0..ys.len() { - assert_eq!(interner.get(ys[i]), xs[0]); - } - } + for i in 0..ys.len() { + assert_eq!(interner.get(ys[i]), xs[0]); + } + } } diff --git a/oryxc/src/unistr.rs b/oryxc/src/unistr.rs index 5dc8160..1d8463d 100644 --- a/oryxc/src/unistr.rs +++ b/oryxc/src/unistr.rs @@ -1,13 +1,20 @@ -use std::hash::{Hash, Hasher}; +use std::hash::{ + Hash, + Hasher, +}; -use unicode_normalization::{self, IsNormalized, UnicodeNormalization}; +use unicode_normalization::{ + self, + IsNormalized, + UnicodeNormalization, +}; #[repr(transparent)] #[derive(Copy, Clone, Debug, Eq)] pub struct UniStr<'a>(pub &'a str); impl Hash for UniStr<'_> { - fn hash<H: Hasher>(&self, state: &mut H) { + fn hash<H: Hasher>(&self, state: &mut H) { /* In the ASCII common case we use .bytes() to avoid decoding * every codepoint (a no-op in ASCII) */ if self.0.is_ascii() { @@ -19,7 +26,7 @@ impl Hash for UniStr<'_> { } else { self.0.nfkd().for_each(|c| c.hash(state)); } - } + } } impl PartialEq for UniStr<'_> { @@ -52,33 +59,37 @@ impl PartialEq for UniStr<'_> { #[cfg(test)] mod tests { - use std::hash::{DefaultHasher, Hash, Hasher}; + use std::hash::{ + DefaultHasher, + Hash, + Hasher, + }; - use super::UniStr; + use super::UniStr; - #[test] - fn test_unistr_eq() { - assert_eq!(UniStr("fishi"), UniStr("fishᵢ")); - assert_eq!(UniStr("fishi"), UniStr("fishi")); - assert_eq!(UniStr("fishi"), UniStr("fishᵢ")); - assert_eq!(UniStr("fishᵢ"), UniStr("fishᵢ")); - assert_eq!(UniStr("corné"), UniStr("corné")); - } + #[test] + fn test_unistr_eq() { + assert_eq!(UniStr("fishi"), UniStr("fishᵢ")); + assert_eq!(UniStr("fishi"), UniStr("fishi")); + assert_eq!(UniStr("fishi"), UniStr("fishᵢ")); + assert_eq!(UniStr("fishᵢ"), UniStr("fishᵢ")); + assert_eq!(UniStr("corné"), UniStr("corné")); + } - #[test] - fn test_unistr_hash() { - for (lhs, rhs) in &[ - (UniStr("fishi"), UniStr("fishᵢ")), - (UniStr("fishi"), UniStr("fishi")), - (UniStr("fishi"), UniStr("fishᵢ")), - (UniStr("fishᵢ"), UniStr("fishᵢ")), - (UniStr("corné"), UniStr("corné")), - ] { - let mut hashl = DefaultHasher::new(); - let mut hashr = DefaultHasher::new(); - lhs.hash(&mut hashl); - rhs.hash(&mut hashr); - assert_eq!(hashl.finish(), hashr.finish()); - } - } + #[test] + fn test_unistr_hash() { + for (lhs, rhs) in &[ + (UniStr("fishi"), UniStr("fishᵢ")), + (UniStr("fishi"), UniStr("fishi")), + (UniStr("fishi"), UniStr("fishᵢ")), + (UniStr("fishᵢ"), UniStr("fishᵢ")), + (UniStr("corné"), UniStr("corné")), + ] { + let mut hashl = DefaultHasher::new(); + let mut hashr = DefaultHasher::new(); + lhs.hash(&mut hashl); + rhs.hash(&mut hashr); + assert_eq!(hashl.finish(), hashr.finish()); + } + } } |