diff options
Diffstat (limited to 'src/tokens/tracked.rs')
-rw-r--r-- | src/tokens/tracked.rs | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/src/tokens/tracked.rs b/src/tokens/tracked.rs deleted file mode 100644 index ea37047..0000000 --- a/src/tokens/tracked.rs +++ /dev/null @@ -1,47 +0,0 @@ -use crate::*; - - -#[derive(Clone)] -pub struct Tracked<T> { - pub source: SourceSpan, - pub value: T, -} - -impl<T> Tracked<T> { - pub fn from(value: T, source: SourceSpan) -> Self { - Self { source, value } - } -} - -impl<T> std::ops::Deref for Tracked<T> { - type Target = T; - fn deref(&self) -> &T { - &self.value - } -} - -impl<T> std::ops::DerefMut for Tracked<T> { - fn deref_mut(&mut self) -> &mut T { - &mut self.value - } -} - -impl<T: std::fmt::Display> std::fmt::Display for Tracked<T> { - fn fmt(&self, f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> { - write!(f, "{}", self.value) - } -} - -impl<T: std::fmt::Debug> std::fmt::Debug for Tracked<T> { - fn fmt(&self, f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> { - write!(f, "{:?}", self.value) - } -} - -impl<T: PartialEq> PartialEq for Tracked<T> { - fn eq(&self, other: &Tracked<T>) -> bool { - self.value.eq(&other.value) - } -} - -impl<T: Eq> Eq for Tracked<T> {} |