Add span-preserving ToTokens for Derive
diff --git a/syntax/derive.rs b/syntax/derive.rs
index 1099967..813cf26 100644
--- a/syntax/derive.rs
+++ b/syntax/derive.rs
@@ -40,6 +40,20 @@
}
}
+impl AsRef<str> for Trait {
+ fn as_ref(&self) -> &str {
+ match self {
+ Trait::Clone => "Clone",
+ Trait::Copy => "Copy",
+ Trait::Debug => "Debug",
+ Trait::Eq => "Eq",
+ Trait::Ord => "Ord",
+ Trait::PartialEq => "PartialEq",
+ Trait::PartialOrd => "PartialOrd",
+ }
+ }
+}
+
pub fn contains(derives: &[Derive], query: Trait) -> bool {
derives.iter().any(|derive| derive.what == query)
}