Remove parens from the custom_punctuation example
diff --git a/src/custom_punctuation.rs b/src/custom_punctuation.rs
index 4a36f94..72ce21d 100644
--- a/src/custom_punctuation.rs
+++ b/src/custom_punctuation.rs
@@ -30,14 +30,14 @@
/// # Example
///
/// ```edition2018
-/// use syn::parse::{Parse, ParseStream, Result};
+/// use proc_macro2::{TokenStream, TokenTree};
+/// use syn::parse::{Parse, ParseStream, Peek, Result};
/// use syn::punctuated::Punctuated;
-/// use syn::token::Paren;
-/// use syn::{parenthesized, Expr, ExprParen};
+/// use syn::Expr;
///
/// syn::custom_punctuation!(PathSeparator, </>);
///
-/// // (expr) </> (expr) </> (expr) ...
+/// // expr </> expr </> expr ...
/// struct PathSegments {
/// segments: Punctuated<Expr, PathSeparator>,
/// }
@@ -46,30 +46,31 @@
/// fn parse(input: ParseStream) -> Result<Self> {
/// let mut segments = Punctuated::new();
///
-/// let la = input.lookahead1();
-/// if la.peek(Paren) {
-/// let content;
-/// let paren_token = parenthesized!(content in input);
-/// let expr = Box::new(content.parse()?);
-/// segments.push_value(Expr::Paren(ExprParen { attrs: vec![], paren_token, expr }));
-/// } else {
-/// return Err(la.error());
-/// }
+/// let first = parse_until(input, PathSeparator)?;
+/// segments.push_value(syn::parse2(first)?);
///
/// while input.peek(PathSeparator) {
/// segments.push_punct(input.parse()?);
-/// let content;
-/// let paren_token = parenthesized!(content in input);
-/// let expr = Box::new(content.parse()?);
-/// segments.push_value(Expr::Paren(ExprParen { attrs: vec![], paren_token, expr }));
+///
+/// let next = parse_until(input, PathSeparator)?;
+/// segments.push_value(syn::parse2(next)?);
/// }
///
/// Ok(PathSegments { segments })
/// }
/// }
///
+/// fn parse_until<E: Peek>(input: ParseStream, end: E) -> Result<TokenStream> {
+/// let mut tokens = TokenStream::new();
+/// while !input.is_empty() && !input.peek(end) {
+/// let next: TokenTree = input.parse()?;
+/// tokens.extend(Some(next));
+/// }
+/// Ok(tokens)
+/// }
+///
/// fn main() {
-/// let input = r#" ("five") </> ("hundred") "#;
+/// let input = r#" a::b </> c::d::e "#;
/// let _: PathSegments = syn::parse_str(input).unwrap();
/// }
/// ```