aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def/src/generics.rs
diff options
context:
space:
mode:
authorJonas Schievink <[email protected]>2020-06-24 14:54:35 +0100
committerJonas Schievink <[email protected]>2020-06-24 15:54:21 +0100
commitabdba92334f800d236c65e543377f75327f7307a (patch)
tree61fbd8e6dd3269dcd746767bcac8ba169d6eebfc /crates/ra_hir_def/src/generics.rs
parent43cad21623bc5de59598a565097be9c7d8642818 (diff)
Don't allocate empty generics
Diffstat (limited to 'crates/ra_hir_def/src/generics.rs')
-rw-r--r--crates/ra_hir_def/src/generics.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/crates/ra_hir_def/src/generics.rs b/crates/ra_hir_def/src/generics.rs
index c4b9f626f..6a0f493a7 100644
--- a/crates/ra_hir_def/src/generics.rs
+++ b/crates/ra_hir_def/src/generics.rs
@@ -80,43 +80,43 @@ impl GenericParams {
80 let id = id.lookup(db).id; 80 let id = id.lookup(db).id;
81 let tree = db.item_tree(id.file_id); 81 let tree = db.item_tree(id.file_id);
82 let item = &tree[id.value]; 82 let item = &tree[id.value];
83 item.generic_params.clone() 83 tree[item.generic_params].clone()
84 } 84 }
85 GenericDefId::AdtId(AdtId::StructId(id)) => { 85 GenericDefId::AdtId(AdtId::StructId(id)) => {
86 let id = id.lookup(db).id; 86 let id = id.lookup(db).id;
87 let tree = db.item_tree(id.file_id); 87 let tree = db.item_tree(id.file_id);
88 let item = &tree[id.value]; 88 let item = &tree[id.value];
89 item.generic_params.clone() 89 tree[item.generic_params].clone()
90 } 90 }
91 GenericDefId::AdtId(AdtId::EnumId(id)) => { 91 GenericDefId::AdtId(AdtId::EnumId(id)) => {
92 let id = id.lookup(db).id; 92 let id = id.lookup(db).id;
93 let tree = db.item_tree(id.file_id); 93 let tree = db.item_tree(id.file_id);
94 let item = &tree[id.value]; 94 let item = &tree[id.value];
95 item.generic_params.clone() 95 tree[item.generic_params].clone()
96 } 96 }
97 GenericDefId::AdtId(AdtId::UnionId(id)) => { 97 GenericDefId::AdtId(AdtId::UnionId(id)) => {
98 let id = id.lookup(db).id; 98 let id = id.lookup(db).id;
99 let tree = db.item_tree(id.file_id); 99 let tree = db.item_tree(id.file_id);
100 let item = &tree[id.value]; 100 let item = &tree[id.value];
101 item.generic_params.clone() 101 tree[item.generic_params].clone()
102 } 102 }
103 GenericDefId::TraitId(id) => { 103 GenericDefId::TraitId(id) => {
104 let id = id.lookup(db).id; 104 let id = id.lookup(db).id;
105 let tree = db.item_tree(id.file_id); 105 let tree = db.item_tree(id.file_id);
106 let item = &tree[id.value]; 106 let item = &tree[id.value];
107 item.generic_params.clone() 107 tree[item.generic_params].clone()
108 } 108 }
109 GenericDefId::TypeAliasId(id) => { 109 GenericDefId::TypeAliasId(id) => {
110 let id = id.lookup(db).id; 110 let id = id.lookup(db).id;
111 let tree = db.item_tree(id.file_id); 111 let tree = db.item_tree(id.file_id);
112 let item = &tree[id.value]; 112 let item = &tree[id.value];
113 item.generic_params.clone() 113 tree[item.generic_params].clone()
114 } 114 }
115 GenericDefId::ImplId(id) => { 115 GenericDefId::ImplId(id) => {
116 let id = id.lookup(db).id; 116 let id = id.lookup(db).id;
117 let tree = db.item_tree(id.file_id); 117 let tree = db.item_tree(id.file_id);
118 let item = &tree[id.value]; 118 let item = &tree[id.value];
119 item.generic_params.clone() 119 tree[item.generic_params].clone()
120 } 120 }
121 GenericDefId::EnumVariantId(_) | GenericDefId::ConstId(_) => GenericParams::default(), 121 GenericDefId::EnumVariantId(_) | GenericDefId::ConstId(_) => GenericParams::default(),
122 }; 122 };