Use Error and Result from root in tests
diff --git a/src/attr.rs b/src/attr.rs
index cad96f7..8a89289 100644
--- a/src/attr.rs
+++ b/src/attr.rs
@@ -81,8 +81,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{Attribute, Ident};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{Attribute, Ident, Result};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // Parses a unit struct with attributes.
/// //
diff --git a/src/error.rs b/src/error.rs
index 53069da..ca56c26 100644
--- a/src/error.rs
+++ b/src/error.rs
@@ -61,8 +61,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{Ident, LitStr};
- /// use syn::parse::{Error, ParseStream, Result};
+ /// use syn::{Error, Ident, LitStr, Result};
+ /// use syn::parse::ParseStream;
///
/// // Parses input that looks like `name = "string"` where the key must be
/// // the identifier `name` and the value may be any string literal.
diff --git a/src/expr.rs b/src/expr.rs
index 0251aa2..85f02e4 100644
--- a/src/expr.rs
+++ b/src/expr.rs
@@ -2303,8 +2303,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{token, Attribute, Block, Ident, Stmt};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{token, Attribute, Block, Ident, Result, Stmt};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // Parse a function with no generics or parameter list.
/// //
diff --git a/src/ext.rs b/src/ext.rs
index ae6c2ae..16d0dbf 100644
--- a/src/ext.rs
+++ b/src/ext.rs
@@ -21,9 +21,9 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::Ident;
+ /// use syn::{Error, Ident, Result};
/// use syn::ext::IdentExt;
- /// use syn::parse::{Error, ParseStream, Result};
+ /// use syn::parse::ParseStream;
///
/// // Parses input that looks like `name = NAME` where `NAME` can be
/// // any identifier.
diff --git a/src/group.rs b/src/group.rs
index 84a19fd..026ece4 100644
--- a/src/group.rs
+++ b/src/group.rs
@@ -101,8 +101,8 @@
/// #[macro_use]
/// extern crate syn;
///
-/// use syn::{token, Ident, Type};
-/// use syn::parse::{Parse, ParseStream, Result};
+/// use syn::{token, Ident, Result, Type};
+/// use syn::parse::{Parse, ParseStream};
/// use syn::punctuated::Punctuated;
///
/// // Parse a simplified tuple struct syntax like:
@@ -161,8 +161,8 @@
/// #
/// #[macro_use]
/// extern crate syn;
-/// use syn::{token, Ident, Type};
-/// use syn::parse::{Parse, ParseStream, Result};
+/// use syn::{token, Ident, Result, Type};
+/// use syn::parse::{Parse, ParseStream};
/// use syn::punctuated::Punctuated;
///
/// // Parse a simplified struct syntax like:
@@ -246,8 +246,8 @@
/// extern crate proc_macro2;
///
/// use proc_macro2::TokenStream;
-/// use syn::token;
-/// use syn::parse::{Parse, ParseStream, Result};
+/// use syn::{token, Result};
+/// use syn::parse::{Parse, ParseStream};
///
/// // Parse an outer attribute like:
/// //
diff --git a/src/keyword.rs b/src/keyword.rs
index bf7dffb..9bfb260 100644
--- a/src/keyword.rs
+++ b/src/keyword.rs
@@ -52,8 +52,8 @@
/// #[macro_use]
/// extern crate syn;
///
-/// use syn::{LitBool, LitStr};
-/// use syn::parse::{Parse, ParseStream, Result};
+/// use syn::{LitBool, LitStr, Result};
+/// use syn::parse::{Parse, ParseStream};
///
/// mod kw {
/// custom_keyword!(bool);
diff --git a/src/lib.rs b/src/lib.rs
index 7c786f0..78408bc 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -664,8 +664,7 @@
/// ```rust
/// # extern crate syn;
/// #
-/// use syn::Expr;
-/// use syn::parse::Result;
+/// use syn::{Expr, Result};
///
/// fn run() -> Result<()> {
/// let code = "assert_eq!(u8::max_value(), 255)";
diff --git a/src/lit.rs b/src/lit.rs
index c1af9f2..d4670c0 100644
--- a/src/lit.rs
+++ b/src/lit.rs
@@ -134,8 +134,7 @@
/// # extern crate syn;
/// #
/// use proc_macro2::Span;
- /// use syn::{Attribute, Ident, Lit, Meta, MetaNameValue, Path};
- /// use syn::parse::{Error, Result};
+ /// use syn::{Attribute, Error, Ident, Lit, Meta, MetaNameValue, Path, Result};
///
/// // Parses the path from an attribute that looks like:
/// //
diff --git a/src/lookahead.rs b/src/lookahead.rs
index 7320d02..c8fdbc8 100644
--- a/src/lookahead.rs
+++ b/src/lookahead.rs
@@ -25,8 +25,8 @@
/// #[macro_use]
/// extern crate syn;
///
-/// use syn::{ConstParam, Ident, Lifetime, LifetimeDef, TypeParam};
-/// use syn::parse::{Parse, ParseStream, Result};
+/// use syn::{ConstParam, Ident, Lifetime, LifetimeDef, Result, TypeParam};
+/// use syn::parse::{Parse, ParseStream};
///
/// // A generic parameter, a single one of the comma-separated elements inside
/// // angle brackets in:
diff --git a/src/parse.rs b/src/parse.rs
index 7683968..1ce65fb 100644
--- a/src/parse.rs
+++ b/src/parse.rs
@@ -40,8 +40,8 @@
//! extern crate proc_macro;
//!
//! use proc_macro::TokenStream;
-//! use syn::{token, Field, Ident};
-//! use syn::parse::{Parse, ParseStream, Result};
+//! use syn::{token, Field, Ident, Result};
+//! use syn::parse::{Parse, ParseStream};
//! use syn::punctuated::Punctuated;
//!
//! enum Item {
@@ -117,7 +117,7 @@
//! ```
//! use syn::Type;
//!
-//! # fn run_parser() -> Result<(), syn::parse::Error> {
+//! # fn run_parser() -> syn::Result<()> {
//! let t: Type = syn::parse_str("std::collections::HashMap<String, Value>")?;
//! # Ok(())
//! # }
@@ -149,9 +149,8 @@
//! # extern crate proc_macro;
//! # extern crate syn;
//! #
-//! # use syn::parse::Result;
//! # use syn::punctuated::Punctuated;
-//! # use syn::{PathSegment, Token};
+//! # use syn::{PathSegment, Result, Token};
//! #
//! # fn f(tokens: proc_macro::TokenStream) -> Result<()> {
//! #
@@ -180,7 +179,7 @@
//! use syn::punctuated::Punctuated;
//! use syn::{Attribute, Expr, PathSegment};
//!
-//! # fn run_parsers() -> Result<(), syn::parse::Error> {
+//! # fn run_parsers() -> syn::Result<()> {
//! # let tokens = TokenStream::new().into();
//! // Parse a nonempty sequence of path segments separated by `::` punctuation
//! // with no trailing punctuation.
@@ -305,7 +304,8 @@
/// # extern crate syn;
/// #
/// use proc_macro2::TokenTree;
-/// use syn::parse::{ParseStream, Result};
+/// use syn::Result;
+/// use syn::parse::ParseStream;
///
/// // This function advances the stream past the next occurrence of `@`. If
/// // no `@` is present in the stream, the stream position is unchanged and
@@ -441,8 +441,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{Attribute, Ident};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{Attribute, Ident, Result};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // Parses a unit struct with attributes.
/// //
@@ -497,8 +497,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{token, Generics, Ident, TypeParamBound};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{token, Generics, Ident, Result, TypeParamBound};
+ /// use syn::parse::{Parse, ParseStream};
/// use syn::punctuated::Punctuated;
///
/// // Parses a trait definition containing no associated items.
@@ -569,8 +569,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{Ident, ItemUnion, Macro};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{Ident, ItemUnion, Macro, Result};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // Parses either a union or a macro invocation.
/// enum UnionOrMacro {
@@ -618,8 +618,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{token, Ident, Type};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{token, Ident, Result, Type};
+ /// use syn::parse::{Parse, ParseStream};
/// use syn::punctuated::Punctuated;
///
/// // Parse a simplified tuple struct syntax like:
@@ -671,8 +671,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{token, Ident, Item};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{token, Ident, Item, Result};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // Parses a Rust `mod m { ... }` containing zero or more items.
/// struct Mod {
@@ -715,8 +715,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{ConstParam, Ident, Lifetime, LifetimeDef, TypeParam};
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{ConstParam, Ident, Lifetime, LifetimeDef, Result, TypeParam};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // A generic parameter, a single one of the comma-separated elements inside
/// // angle brackets in:
@@ -767,8 +767,8 @@
/// once.
///
/// ```
- /// # use syn::Expr;
- /// # use syn::parse::{ParseStream, Result};
+ /// # use syn::{Expr, Result};
+ /// # use syn::parse::ParseStream;
/// #
/// # fn bad(input: ParseStream) -> Result<Expr> {
/// // Do not do this.
@@ -824,9 +824,9 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::{token, Ident, Path};
+ /// use syn::{token, Ident, Path, Result};
/// use syn::ext::IdentExt;
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::parse::{Parse, ParseStream};
///
/// struct PubVisibility {
/// pub_token: Token![pub],
@@ -900,8 +900,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::Expr;
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{Expr, Result};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // Some kind of loop: `while` or `for` or `loop`.
/// struct Loop {
@@ -943,7 +943,8 @@
/// # extern crate syn;
/// #
/// use proc_macro2::TokenTree;
- /// use syn::parse::{ParseStream, Result};
+ /// use syn::Result;
+ /// use syn::parse::ParseStream;
///
/// // This function advances the stream past the next occurrence of `@`. If
/// // no `@` is present in the stream, the stream position is unchanged and
diff --git a/src/parse_macro_input.rs b/src/parse_macro_input.rs
index 7c4d807..6b3785b 100644
--- a/src/parse_macro_input.rs
+++ b/src/parse_macro_input.rs
@@ -15,7 +15,8 @@
/// extern crate proc_macro;
///
/// use proc_macro::TokenStream;
-/// use syn::parse::{Parse, ParseStream, Result};
+/// use syn::Result;
+/// use syn::parse::{Parse, ParseStream};
///
/// struct MyMacroInput {
/// /* ... */
diff --git a/src/path.rs b/src/path.rs
index 7c1f78d..beb5fdd 100644
--- a/src/path.rs
+++ b/src/path.rs
@@ -370,8 +370,8 @@
/// #[macro_use]
/// extern crate syn;
///
- /// use syn::Path;
- /// use syn::parse::{Parse, ParseStream, Result};
+ /// use syn::{Path, Result};
+ /// use syn::parse::{Parse, ParseStream};
///
/// // A simplified single `use` statement like:
/// //
diff --git a/src/token.rs b/src/token.rs
index 1d2deaa..1453ae9 100644
--- a/src/token.rs
+++ b/src/token.rs
@@ -56,8 +56,8 @@
//! ```
//! # extern crate syn;
//! #
-//! use syn::Attribute;
-//! use syn::parse::{Parse, ParseStream, Result};
+//! use syn::{Attribute, Result};
+//! use syn::parse::{Parse, ParseStream};
//! #
//! # enum ItemStatic {}
//!