about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbjorn3 <bjorn3@users.noreply.github.com>2021-06-01 10:04:13 +0200
committerbjorn3 <bjorn3@users.noreply.github.com>2021-06-08 19:24:17 +0200
commit9d9ccec3fc416965dabd1851369a10315754a922 (patch)
treef594ed154bd8b4da0606bcf6fa7b3c90da137573
parentd376f032e65cc02e9a082ab1e919f3798af4b9dd (diff)
downloadrust-9d9ccec3fc416965dabd1851369a10315754a922.tar.gz
rust-9d9ccec3fc416965dabd1851369a10315754a922.zip
Inline two more methods
-rw-r--r--compiler/rustc_interface/src/passes.rs38
1 files changed, 14 insertions, 24 deletions
diff --git a/compiler/rustc_interface/src/passes.rs b/compiler/rustc_interface/src/passes.rs
index 79b318a4d34..0347b2ccda9 100644
--- a/compiler/rustc_interface/src/passes.rs
+++ b/compiler/rustc_interface/src/passes.rs
@@ -102,15 +102,15 @@ pub enum Action {
 }
 
 #[derive(PartialEq)]
-pub struct Marker<T>(PhantomData<T>);
+struct Marker<T>(PhantomData<T>);
 
 impl<T> Marker<T> {
-    pub unsafe fn new() -> Self {
+    unsafe fn new() -> Self {
         Marker(PhantomData)
     }
 }
 
-pub enum YieldType<I, A> {
+enum YieldType<I, A> {
     Initial(I),
     Accessor(Marker<A>),
 }
@@ -174,16 +174,15 @@ impl BoxedResolver {
         r.unwrap()
     }
 
-    pub fn complete(mut self) -> ResolverOutputs {
-        // Tell the generator we want it to complete, consuming it and yielding a result
-        let result = self.generator.as_mut().resume(Action::Complete);
-        if let GeneratorState::Complete(r) = result { r } else { panic!() }
-    }
-
-    fn initial_yield(
-        value: Result<ast::Crate>,
-    ) -> YieldType<Result<ast::Crate>, fn(&mut Resolver<'_>)> {
-        YieldType::Initial(value)
+    pub fn to_resolver_outputs(resolver: Rc<RefCell<BoxedResolver>>) -> ResolverOutputs {
+        match Rc::try_unwrap(resolver) {
+            Ok(resolver) => {
+                // Tell the generator we want it to complete, consuming it and yielding a result
+                let result = resolver.into_inner().generator.as_mut().resume(Action::Complete);
+                if let GeneratorState::Complete(r) = result { r } else { panic!() }
+            }
+            Err(resolver) => resolver.borrow_mut().access(|resolver| resolver.clone_outputs()),
+        }
     }
 }
 
@@ -221,11 +220,11 @@ pub fn configure_and_expand(
         );
         let mut resolver = match res {
             Err(v) => {
-                yield BoxedResolver::initial_yield(Err(v));
+                yield YieldType::Initial(Err(v));
                 panic!()
             }
             Ok((krate, resolver)) => {
-                action = yield BoxedResolver::initial_yield(Ok(krate));
+                action = yield YieldType::Initial(Ok(krate));
                 resolver
             }
         };
@@ -253,15 +252,6 @@ pub fn configure_and_expand(
     result.map(|k| (k, resolver))
 }
 
-impl BoxedResolver {
-    pub fn to_resolver_outputs(resolver: Rc<RefCell<BoxedResolver>>) -> ResolverOutputs {
-        match Rc::try_unwrap(resolver) {
-            Ok(resolver) => resolver.into_inner().complete(),
-            Err(resolver) => resolver.borrow_mut().access(|resolver| resolver.clone_outputs()),
-        }
-    }
-}
-
 pub fn register_plugins<'a>(
     sess: &'a Session,
     metadata_loader: &'a dyn MetadataLoader,