Update Parser trait to look like Parse
diff --git a/src/lib.rs b/src/lib.rs
index f3b13a1..51a7952 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -662,10 +662,7 @@
     feature = "parsing",
     feature = "proc-macro"
 ))]
-pub fn parse<T>(tokens: proc_macro::TokenStream) -> Result<T, Error>
-where
-    T: Synom,
-{
+pub fn parse<T: parse::Parse>(tokens: proc_macro::TokenStream) -> Result<T, Error> {
     parse2(tokens.into())
 }
 
@@ -682,10 +679,7 @@
 ///
 /// *This function is available if Syn is built with the `"parsing"` feature.*
 #[cfg(feature = "parsing")]
-pub fn parse2<T>(tokens: proc_macro2::TokenStream) -> Result<T, Error>
-where
-    T: Synom,
-{
+pub fn parse2<T: parse::Parse>(tokens: proc_macro2::TokenStream) -> Result<T, Error> {
     let parser = T::parse;
     parser.parse2(tokens).map_err(|err| match T::description() {
         Some(s) => Error::new(Span::call_site(), format!("failed to parse {}: {}", s, err)),
@@ -722,7 +716,7 @@
 /// # fn main() { run().unwrap() }
 /// ```
 #[cfg(feature = "parsing")]
-pub fn parse_str<T: Synom>(s: &str) -> Result<T, Error> {
+pub fn parse_str<T: parse::Parse>(s: &str) -> Result<T, Error> {
     match s.parse() {
         Ok(tts) => parse2(tts),
         Err(_) => Err(Error::new(