normalized_path/
case_sensitivity.rs1#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
8pub enum CaseSensitivity {
9 Sensitive,
11 Insensitive,
13}
14
15#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
20pub struct CaseSensitive;
21
22#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
27pub struct CaseInsensitive;
28
29impl From<CaseSensitive> for CaseSensitivity {
30 fn from(_: CaseSensitive) -> Self {
31 CaseSensitivity::Sensitive
32 }
33}
34
35impl From<CaseInsensitive> for CaseSensitivity {
36 fn from(_: CaseInsensitive) -> Self {
37 CaseSensitivity::Insensitive
38 }
39}
40
41impl From<&CaseSensitive> for CaseSensitivity {
42 fn from(_: &CaseSensitive) -> Self {
43 CaseSensitivity::Sensitive
44 }
45}
46
47impl From<&CaseInsensitive> for CaseSensitivity {
48 fn from(_: &CaseInsensitive) -> Self {
49 CaseSensitivity::Insensitive
50 }
51}
52
53impl From<&CaseSensitivity> for CaseSensitivity {
54 fn from(s: &CaseSensitivity) -> Self {
55 *s
56 }
57}
58
59#[cfg(test)]
60mod tests {
61 #[cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))]
62 use wasm_bindgen_test::wasm_bindgen_test as test;
63
64 use super::{CaseInsensitive, CaseSensitive, CaseSensitivity};
65
66 #[test]
67 fn from_case_sensitive() {
68 assert_eq!(
69 CaseSensitivity::from(CaseSensitive),
70 CaseSensitivity::Sensitive
71 );
72 }
73
74 #[test]
75 fn from_case_insensitive() {
76 assert_eq!(
77 CaseSensitivity::from(CaseInsensitive),
78 CaseSensitivity::Insensitive
79 );
80 }
81}