]> git.lizzy.rs Git - rust.git/commitdiff
Move IntoIterator into FamousDefs
authorLukas Wirth <lukastw97@gmail.com>
Wed, 7 Oct 2020 08:14:42 +0000 (10:14 +0200)
committerLukas Wirth <lukastw97@gmail.com>
Wed, 7 Oct 2020 08:14:42 +0000 (10:14 +0200)
crates/assists/src/utils.rs
crates/ide/src/inlay_hints.rs

index 0335969fd91b8d15e82d367bf9616640639089f3..b341453d42d6238ec3b5295f1ce4474e00207083 100644 (file)
@@ -286,14 +286,21 @@ pub trait From<T> {
 }
 
 pub mod iter {
-    pub use self::traits::iterator::Iterator;
-    mod traits { mod iterator {
-        use crate::option::Option;
-        pub trait Iterator {
-            type Item;
-            fn next(&mut self) -> Option<Self::Item>;
+    pub use self::traits::{collect::IntoIterator, iterator::Iterator};
+    mod traits {
+        mod iterator {
+            use crate::option::Option;
+            pub trait Iterator {
+                type Item;
+                fn next(&mut self) -> Option<Self::Item>;
+            }
+        }
+        mod collect {            
+            pub trait IntoIterator {
+                type Item;
+            }
         }
-    } }
+    }
 
     pub use self::sources::*;
     mod sources {
@@ -321,7 +328,7 @@ pub enum Option<T> { None, Some(T)}
 }
 
 pub mod prelude {
-    pub use crate::{convert::From, iter::Iterator, option::Option::{self, *}};
+    pub use crate::{convert::From, iter::{IntoIterator, Iterator}, option::Option::{self, *}};
 }
 #[prelude_import]
 pub use prelude::*;
index 27bd1e37f4bea918d7a6410a13b8b366d1f6e48b..31a6a1be863df2607ef5a521726c6d2ff68aae25 100644 (file)
@@ -412,7 +412,8 @@ fn check(ra_fixture: &str) {
     }
 
     fn check_with_config(config: InlayHintsConfig, ra_fixture: &str) {
-        let (analysis, file_id) = fixture::file(ra_fixture);
+        let ra_fixture = format!("{}\n{}", ra_fixture, FamousDefs::FIXTURE);
+        let (analysis, file_id) = fixture::file(&ra_fixture);
         let expected = extract_annotations(&*analysis.file_text(file_id).unwrap());
         let inlay_hints = analysis.inlay_hints(file_id, &config).unwrap();
         let actual =
@@ -1011,13 +1012,6 @@ fn main() {
     println!("Unit expr");
 }
 
-//- /core.rs crate:core
-#[prelude_import] use iter::*;
-mod iter {
-    trait IntoIterator {
-        type Item;
-    }
-}
 //- /alloc.rs crate:alloc deps:core
 mod collections {
     struct Vec<T> {}
@@ -1059,14 +1053,6 @@ fn main() {
         //^ &str
     }
 }
-
-//- /core.rs crate:core
-#[prelude_import] use iter::*;
-mod iter {
-    trait IntoIterator {
-        type Item;
-    }
-}
 //- /alloc.rs crate:alloc deps:core
 mod collections {
     struct Vec<T> {}
@@ -1125,15 +1111,13 @@ fn shorten_iterator_hints() {
                 chaining_hints: true,
                 max_length: None,
             },
-            &format!(
-                "{}\n{}\n",
-                r#"
+            r#"
 //- /main.rs crate:main deps:std
-use std::{Option::{self, Some, None}, iter};
+use std::iter;
 
 struct MyIter;
 
-impl iter::Iterator for MyIter {
+impl Iterator for MyIter {
     type Item = ();
     fn next(&mut self) -> Option<Self::Item> {
         None
@@ -1154,8 +1138,6 @@ fn generic<T: Clone>(t: T) {
 //- /std.rs crate:std deps:core
 use core::*;
 "#,
-                FamousDefs::FIXTURE
-            ),
         );
     }
 }