aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_ty/src/lower.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir_ty/src/lower.rs')
-rw-r--r--crates/ra_hir_ty/src/lower.rs11
1 files changed, 5 insertions, 6 deletions
diff --git a/crates/ra_hir_ty/src/lower.rs b/crates/ra_hir_ty/src/lower.rs
index e375c4847..76e2fbabf 100644
--- a/crates/ra_hir_ty/src/lower.rs
+++ b/crates/ra_hir_ty/src/lower.rs
@@ -37,10 +37,9 @@ pub struct TyLoweringContext<'a, DB: HirDatabase> {
37 pub db: &'a DB, 37 pub db: &'a DB,
38 pub resolver: &'a Resolver, 38 pub resolver: &'a Resolver,
39 /// Note: Conceptually, it's thinkable that we could be in a location where 39 /// Note: Conceptually, it's thinkable that we could be in a location where
40 /// some type params are quantified universally (and should be represented 40 /// some type params should be represented as placeholders, and others
41 /// as placeholders), and others are quantified existentially (and should be 41 /// should be converted to variables. I think in practice, this isn't
42 /// converted to variables). I think in practice, this isn't possible 42 /// possible currently, so this should be fine for now.
43 /// currently, so this should be fine for now.
44 pub type_param_mode: TypeParamLoweringMode, 43 pub type_param_mode: TypeParamLoweringMode,
45 pub impl_trait_mode: ImplTraitLoweringMode, 44 pub impl_trait_mode: ImplTraitLoweringMode,
46 pub impl_trait_counter: std::cell::Cell<u16>, 45 pub impl_trait_counter: std::cell::Cell<u16>,
@@ -71,8 +70,8 @@ pub enum ImplTraitLoweringMode {
71 /// types of functions we're calling. 70 /// types of functions we're calling.
72 Opaque, 71 Opaque,
73 /// `impl Trait` gets lowered into a type variable. Used for argument 72 /// `impl Trait` gets lowered into a type variable. Used for argument
74 /// position impl Trait currently, since it allows us to support that 73 /// position impl Trait when inside the respective function, since it allows
75 /// without Chalk. 74 /// us to support that without Chalk.
76 Param, 75 Param,
77 /// `impl Trait` gets lowered into a variable that can unify with some 76 /// `impl Trait` gets lowered into a variable that can unify with some
78 /// type. This is used in places where values flow 'in', i.e. for arguments 77 /// type. This is used in places where values flow 'in', i.e. for arguments