]> git.lizzy.rs Git - rust.git/commitdiff
auto merge of #14509 : klutzy/rust/de-pub-use-glob, r=alexcrichton
authorbors <bors@rust-lang.org>
Mon, 2 Jun 2014 19:46:31 +0000 (12:46 -0700)
committerbors <bors@rust-lang.org>
Mon, 2 Jun 2014 19:46:31 +0000 (12:46 -0700)
This patchset removes `pub use` usage except for `test/`.
cc #11870

20 files changed:
src/doc/rust.md
src/libregex_macros/lib.rs
src/libsyntax/ext/build.rs
src/libsyntax/ext/deriving/bounds.rs
src/libsyntax/ext/deriving/clone.rs
src/libsyntax/ext/deriving/cmp/eq.rs
src/libsyntax/ext/deriving/cmp/ord.rs
src/libsyntax/ext/deriving/cmp/totaleq.rs
src/libsyntax/ext/deriving/cmp/totalord.rs
src/libsyntax/ext/deriving/decodable.rs
src/libsyntax/ext/deriving/default.rs
src/libsyntax/ext/deriving/encodable.rs
src/libsyntax/ext/deriving/generic/mod.rs
src/libsyntax/ext/deriving/hash.rs
src/libsyntax/ext/deriving/primitive.rs
src/libsyntax/ext/deriving/rand.rs
src/libsyntax/ext/deriving/show.rs
src/libsyntax/ext/deriving/zero.rs
src/libsyntax/ext/quote.rs
src/libsyntax/lib.rs

index cde26bd881335265d661f84b9c25640688795ec0..61fd83c10d4a9a71164b8100a563a1b9afe4f0f1 100644 (file)
@@ -904,7 +904,7 @@ An example of re-exporting:
 ~~~~
 # fn main() { }
 mod quux {
-    pub use quux::foo::*;
+    pub use quux::foo::{bar, baz};
 
     pub mod foo {
         pub fn bar() { }
@@ -913,10 +913,10 @@ mod quux {
 }
 ~~~~
 
-In this example, the module `quux` re-exports all of the public names defined in `foo`.
+In this example, the module `quux` re-exports two public names defined in `foo`.
 
 Also note that the paths contained in `use` items are relative to the crate root.
-So, in the previous example, the `use` refers to `quux::foo::*`, and not simply to `foo::*`.
+So, in the previous example, the `use` refers to `quux::foo::{bar, baz}`, and not simply to `foo::{bar, baz}`.
 This also means that top-level module declarations should be at the crate root if direct usage
 of the declared modules within `use` items is desired.  It is also possible to use `self` and `super`
 at the beginning of a `use` item to refer to the current and direct parent modules respectively.
index 71e3d06cf967c9e72c3a27085a4d7518eb30ccc0..452d1d74e52cbe279e68d9127d65deec50408211 100644 (file)
@@ -20,6 +20,7 @@
        html_root_url = "http://doc.rust-lang.org/")]
 
 #![feature(macro_registrar, managed_boxes, quote)]
+#![allow(unused_imports)] // `quote_expr!` adds some `use` globs which may be unused
 
 extern crate regex;
 extern crate syntax;
index bb7b73c5f81f29b53861f49a868ba23e69b367bf..7b25f4db98075ad10cb29bbb4ec921e2752a5346 100644 (file)
@@ -9,16 +9,16 @@
 // except according to those terms.
 
 use abi;
-use ast::{P, Ident};
+use ast::{P, Ident, Generics, NodeId, Expr};
 use ast;
 use ast_util;
 use attr;
 use codemap::{Span, respan, Spanned, DUMMY_SP};
 use ext::base::ExtCtxt;
-use ext::quote::rt::*;
 use fold::Folder;
 use owned_slice::OwnedSlice;
 use parse::token::special_idents;
+use parse::token::InternedString;
 use parse::token;
 
 pub struct Field {
index d90c7f37213b7181773641fd62ca8d16a9ad657c..81fb1e46bba5dd62ec4b5a66631306f4593d5a1f 100644 (file)
@@ -12,6 +12,7 @@
 use codemap::Span;
 use ext::base::ExtCtxt;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 
 pub fn expand_deriving_bound(cx: &mut ExtCtxt,
                              span: Span,
index 89c94891b3380875057fb3c6b575eb4397671cc3..6ddfedfeb4f3b2d91267f5c76aa90bb5e40ed234 100644 (file)
@@ -13,6 +13,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_clone(cx: &mut ExtCtxt,
index 4a8c64f870b7b2ae3e54aebd2867513c6cca1c05..e7a6cb35582318091523c7f89c59efdf970a1b89 100644 (file)
@@ -13,6 +13,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_eq(cx: &mut ExtCtxt,
index 5d5619a740ff904ce1c6122e7f650ee78103efdf..abe504b888579b86d06bd5d4eac44e7078a4d8c4 100644 (file)
@@ -14,6 +14,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_ord(cx: &mut ExtCtxt,
index a8124493acbceef69a468173c162784f6587d994..fb7be4c14b68dc5369ffb2fe0c1529cd7baf66b5 100644 (file)
@@ -13,6 +13,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_totaleq(cx: &mut ExtCtxt,
index c4611a552f5d0aceba9b11ed4f870a6777ecca3f..03ac4c9ab03dfb27272b9c18791ff8a56a155f96 100644 (file)
@@ -14,6 +14,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 use std::cmp::{Ordering, Equal, Less, Greater};
index 172ae8dca6279017677cfc078cdf5cc50cdbad45..fe19874938460f3e20cfc93a612ac3e1950a768e 100644 (file)
@@ -19,6 +19,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 use parse::token;
 
index c225906ed2babafcf00398b5b991b8423cd1fcfc..28547a5a494a308a92f468dd2f706b03e4ae2982 100644 (file)
@@ -13,6 +13,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_default(cx: &mut ExtCtxt,
index 4f92dff0c596f15ca01d6f2054116349f52a4ba5..e189cc682f66e17f79c3b75382502e0db2667bdc 100644 (file)
@@ -88,6 +88,7 @@ fn decode(d: &D) -> spanned<T> {
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token;
 
 pub fn expand_deriving_encodable(cx: &mut ExtCtxt,
index 7bf4df357f43353f313acb493dc26e0c765588a1..eb224d255e535562ff2b6ffc49eceb2d7f849c68 100644 (file)
@@ -191,8 +191,9 @@ fn eq(&self, other: &int) -> bool {
 use owned_slice::OwnedSlice;
 use parse::token::InternedString;
 
-pub use self::ty::*;
-mod ty;
+use self::ty::*;
+
+pub mod ty;
 
 pub struct TraitDef<'a> {
     /// The span for the current #[deriving(Foo)] header.
index 3e6b8d522d4f9a6b425b55e275b0331f65973254..a9d5f156a9912c69898ed340953ddd65eef158d0 100644 (file)
@@ -14,6 +14,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_hash(cx: &mut ExtCtxt,
index 5066a395b415f073e0eba0478a918174d0b448a9..0db3233c475d4bf12063fba9c1018e0d5880bba1 100644 (file)
@@ -14,6 +14,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_from_primitive(cx: &mut ExtCtxt,
index 5314b39f8056dce9b897cbe0978db2c618c41974..86620f1aa1b1ad7edadc6552f50269470d337166 100644 (file)
@@ -14,6 +14,7 @@
 use ext::base::ExtCtxt;
 use ext::build::{AstBuilder};
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 
 pub fn expand_deriving_rand(cx: &mut ExtCtxt,
                             span: Span,
index fb6a85e4e7ca1724fdc2e2aeec2076bc3193ed0a..b352a702eec01b27e584b29b4aef766301b964a3 100644 (file)
@@ -15,6 +15,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token;
 
 use collections::HashMap;
index 449851dd3ea5913aecc03654a5d5f5f55958c801..0328f7b470ce5f2113b73dfb8eb8d443d5ac7555 100644 (file)
@@ -13,6 +13,7 @@
 use ext::base::ExtCtxt;
 use ext::build::AstBuilder;
 use ext::deriving::generic::*;
+use ext::deriving::generic::ty::*;
 use parse::token::InternedString;
 
 pub fn expand_deriving_zero(cx: &mut ExtCtxt,
index 62e052b0bb91c78a09b69654add52bd4586da4a1..56bf0309e93ac7a1f007ff1bda2ffc81b28a8f36 100644 (file)
@@ -36,8 +36,17 @@ pub mod rt {
     use parse;
     use print::pprust;
 
-    pub use ast::*;
-    pub use parse::token::*;
+    #[cfg(not(stage0))]
+    use ast::{TokenTree, Generics, Expr};
+
+    // NOTE remove this after snapshot
+    // (stage0 quasiquoter needs this)
+    #[cfg(stage0)]
+    pub use ast::{Generics, TokenTree, TTTok};
+    #[cfg(stage0)]
+    pub use parse::token::{IDENT, SEMI, LBRACE, RBRACE, LIFETIME, COLON, AND, BINOP, EQ,
+                           LBRACKET, RBRACKET, LPAREN, RPAREN, POUND, NOT, MOD_SEP, DOT, COMMA};
+
     pub use parse::new_parser_from_tts;
     pub use codemap::{BytePos, Span, dummy_spanned};
 
@@ -72,7 +81,7 @@ pub trait ToSource {
 
     impl ToSource for ast::Ident {
         fn to_source(&self) -> String {
-            get_ident(*self).get().to_string()
+            token::get_ident(*self).get().to_string()
         }
     }
 
@@ -685,11 +694,14 @@ fn expand_wrapper(cx: &ExtCtxt,
                   sp: Span,
                   cx_expr: @ast::Expr,
                   expr: @ast::Expr) -> @ast::Expr {
-    let uses = vec![ cx.view_use_glob(sp, ast::Inherited,
-                                   ids_ext(vec!["syntax".to_string(),
-                                                "ext".to_string(),
-                                                "quote".to_string(),
-                                                "rt".to_string()])) ];
+    let uses = [
+        &["syntax", "ast"],
+        &["syntax", "parse", "token"],
+        &["syntax", "ext", "quote", "rt"],
+    ].iter().map(|path| {
+        let path = path.iter().map(|s| s.to_string()).collect();
+        cx.view_use_glob(sp, ast::Inherited, ids_ext(path))
+    }).collect();
 
     let stmt_let_ext_cx = cx.stmt_let(sp, false, id_ext("ext_cx"), cx_expr);
 
index 627b2b71b3552b02493ceadd30a29bb725758b6e..b1033c419b1fbe3a9d8094264a1a1e723e8561b9 100644 (file)
@@ -48,6 +48,7 @@ pub mod util {
 pub mod syntax {
     pub use ext;
     pub use parse;
+    pub use ast;
 }
 
 pub mod owned_slice;