From f3c7e9717ba7679480aa71ecd5674d708b7837b0 Mon Sep 17 00:00:00 2001 From: Botahamec Date: Sun, 30 Jul 2023 19:49:53 -0400 Subject: Add derive traits --- src/csets.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/csets.rs') diff --git a/src/csets.rs b/src/csets.rs index a74d87b..f8f58a9 100644 --- a/src/csets.rs +++ b/src/csets.rs @@ -32,6 +32,7 @@ pub trait CharacterSet: Sized { } } +#[derive(Debug, Clone, Copy)] pub struct AnyCharacter; impl CharacterSet for AnyCharacter { @@ -40,6 +41,7 @@ impl CharacterSet for AnyCharacter { } } +#[derive(Debug, Clone, Copy)] pub struct Ascii; impl CharacterSet for Ascii { @@ -48,6 +50,7 @@ impl CharacterSet for Ascii { } } +#[derive(Debug, Clone, Copy)] pub struct AsciiDigits; impl CharacterSet for AsciiDigits { @@ -56,6 +59,7 @@ impl CharacterSet for AsciiDigits { } } +#[derive(Debug, Clone, Copy)] pub struct AsciiLowercase; impl CharacterSet for AsciiLowercase { @@ -64,6 +68,7 @@ impl CharacterSet for AsciiLowercase { } } +#[derive(Debug, Clone, Copy)] pub struct AsciiUppercase; impl CharacterSet for AsciiUppercase { @@ -72,6 +77,7 @@ impl CharacterSet for AsciiUppercase { } } +#[derive(Debug, Clone, Copy)] pub struct AsciiLetters; impl CharacterSet for AsciiLetters { @@ -104,6 +110,7 @@ impl CharacterSet for HashSet { } } +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] pub struct CharacterSetUnion { first: A, second: B, @@ -115,6 +122,7 @@ impl CharacterSet for CharacterSetUnion } } +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] pub struct CharacterSetIntersection { first: A, second: B, @@ -126,6 +134,8 @@ impl CharacterSet for CharacterSetIntersection } } +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] + pub struct CharacterSetDifference { first: A, second: B, @@ -137,6 +147,8 @@ impl CharacterSet for CharacterSetDifference { inner: Inner, } -- cgit v1.2.3