diff options
author | Florian Diebold <[email protected]> | 2019-01-05 21:37:59 +0000 |
---|---|---|
committer | Florian Diebold <[email protected]> | 2019-01-05 23:29:36 +0000 |
commit | 8e3e5ab2c81f238ea4e731f55eac79b74d9d84c3 (patch) | |
tree | e0388878b4d94ae71fbf82d3e3163c49c8e69c16 /crates/ra_hir/src/name.rs | |
parent | 136aba1cf32646278c4034541ee415f656f8bb5e (diff) |
Make FnScopes use hir::Expr
This was a bit complicated. I've added a wrapper type for now that does the
LocalSyntaxPtr <-> ExprId translation; we might want to get rid of that or give
it a nicer interface.
Diffstat (limited to 'crates/ra_hir/src/name.rs')
-rw-r--r-- | crates/ra_hir/src/name.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/crates/ra_hir/src/name.rs b/crates/ra_hir/src/name.rs index 017caf442..6f95b168f 100644 --- a/crates/ra_hir/src/name.rs +++ b/crates/ra_hir/src/name.rs | |||
@@ -31,6 +31,10 @@ impl Name { | |||
31 | Name::new("[missing name]".into()) | 31 | Name::new("[missing name]".into()) |
32 | } | 32 | } |
33 | 33 | ||
34 | pub(crate) fn self_param() -> Name { | ||
35 | Name::new("self".into()) | ||
36 | } | ||
37 | |||
34 | pub(crate) fn tuple_field_name(idx: usize) -> Name { | 38 | pub(crate) fn tuple_field_name(idx: usize) -> Name { |
35 | Name::new(idx.to_string().into()) | 39 | Name::new(idx.to_string().into()) |
36 | } | 40 | } |
@@ -51,7 +55,8 @@ impl Name { | |||
51 | "u128" => KnownName::U128, | 55 | "u128" => KnownName::U128, |
52 | "f32" => KnownName::F32, | 56 | "f32" => KnownName::F32, |
53 | "f64" => KnownName::F64, | 57 | "f64" => KnownName::F64, |
54 | "Self" => KnownName::Self_, | 58 | "Self" => KnownName::SelfType, |
59 | "self" => KnownName::SelfParam, | ||
55 | _ => return None, | 60 | _ => return None, |
56 | }; | 61 | }; |
57 | Some(name) | 62 | Some(name) |
@@ -104,5 +109,6 @@ pub(crate) enum KnownName { | |||
104 | F32, | 109 | F32, |
105 | F64, | 110 | F64, |
106 | 111 | ||
107 | Self_, | 112 | SelfType, |
113 | SelfParam, | ||
108 | } | 114 | } |