aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--crates/hir_ty/src/diagnostics/decl_check.rs30
1 files changed, 15 insertions, 15 deletions
diff --git a/crates/hir_ty/src/diagnostics/decl_check.rs b/crates/hir_ty/src/diagnostics/decl_check.rs
index bc33ad09a..93d61589c 100644
--- a/crates/hir_ty/src/diagnostics/decl_check.rs
+++ b/crates/hir_ty/src/diagnostics/decl_check.rs
@@ -89,18 +89,18 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
89 let data = db.function_data(func); 89 let data = db.function_data(func);
90 let body = db.body(func.into()); 90 let body = db.body(func.into());
91 91
92 // 1. Recursively validate inner scope items, such as static variables and constants. 92 // Recursively validate inner scope items, such as static variables and constants.
93 for (item_id, _) in body.item_scope.values() { 93 for (item_id, _) in body.item_scope.values() {
94 let mut validator = DeclValidator::new(item_id, self.sink); 94 let mut validator = DeclValidator::new(item_id, self.sink);
95 validator.validate_item(db); 95 validator.validate_item(db);
96 } 96 }
97 97
98 // 2. Check whether non-snake case identifiers are allowed for this function. 98 // Check whether non-snake case identifiers are allowed for this function.
99 if self.allowed(db, func.into(), allow::NON_SNAKE_CASE) { 99 if self.allowed(db, func.into(), allow::NON_SNAKE_CASE) {
100 return; 100 return;
101 } 101 }
102 102
103 // 2. Check the function name. 103 // Check the function name.
104 let function_name = data.name.to_string(); 104 let function_name = data.name.to_string();
105 let fn_name_replacement = if let Some(new_name) = to_lower_snake_case(&function_name) { 105 let fn_name_replacement = if let Some(new_name) = to_lower_snake_case(&function_name) {
106 let replacement = Replacement { 106 let replacement = Replacement {
@@ -113,7 +113,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
113 None 113 None
114 }; 114 };
115 115
116 // 3. Check the param names. 116 // Check the param names.
117 let mut fn_param_replacements = Vec::new(); 117 let mut fn_param_replacements = Vec::new();
118 118
119 for pat_id in body.params.iter().cloned() { 119 for pat_id in body.params.iter().cloned() {
@@ -135,7 +135,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
135 } 135 }
136 } 136 }
137 137
138 // 4. Check the patterns inside the function body. 138 // Check the patterns inside the function body.
139 let mut pats_replacements = Vec::new(); 139 let mut pats_replacements = Vec::new();
140 140
141 for (pat_idx, pat) in body.pats.iter() { 141 for (pat_idx, pat) in body.pats.iter() {
@@ -160,7 +160,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
160 } 160 }
161 } 161 }
162 162
163 // 5. If there is at least one element to spawn a warning on, go to the source map and generate a warning. 163 // If there is at least one element to spawn a warning on, go to the source map and generate a warning.
164 self.create_incorrect_case_diagnostic_for_func( 164 self.create_incorrect_case_diagnostic_for_func(
165 func, 165 func,
166 db, 166 db,
@@ -187,7 +187,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
187 let fn_loc = func.lookup(db.upcast()); 187 let fn_loc = func.lookup(db.upcast());
188 let fn_src = fn_loc.source(db.upcast()); 188 let fn_src = fn_loc.source(db.upcast());
189 189
190 // 1. Diagnostic for function name. 190 // Diagnostic for function name.
191 if let Some(replacement) = fn_name_replacement { 191 if let Some(replacement) = fn_name_replacement {
192 let ast_ptr = match fn_src.value.name() { 192 let ast_ptr = match fn_src.value.name() {
193 Some(name) => name, 193 Some(name) => name,
@@ -214,7 +214,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
214 self.sink.push(diagnostic); 214 self.sink.push(diagnostic);
215 } 215 }
216 216
217 // 2. Diagnostics for function params. 217 // Diagnostics for function params.
218 let fn_params_list = match fn_src.value.param_list() { 218 let fn_params_list = match fn_src.value.param_list() {
219 Some(params) => params, 219 Some(params) => params,
220 None => { 220 None => {
@@ -334,7 +334,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
334 self.allowed(db, struct_id.into(), allow::NON_CAMEL_CASE_TYPES); 334 self.allowed(db, struct_id.into(), allow::NON_CAMEL_CASE_TYPES);
335 let non_snake_case_allowed = self.allowed(db, struct_id.into(), allow::NON_SNAKE_CASE); 335 let non_snake_case_allowed = self.allowed(db, struct_id.into(), allow::NON_SNAKE_CASE);
336 336
337 // 1. Check the structure name. 337 // Check the structure name.
338 let struct_name = data.name.to_string(); 338 let struct_name = data.name.to_string();
339 let struct_name_replacement = if let Some(new_name) = to_camel_case(&struct_name) { 339 let struct_name_replacement = if let Some(new_name) = to_camel_case(&struct_name) {
340 let replacement = Replacement { 340 let replacement = Replacement {
@@ -351,7 +351,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
351 None 351 None
352 }; 352 };
353 353
354 // 2. Check the field names. 354 // Check the field names.
355 let mut struct_fields_replacements = Vec::new(); 355 let mut struct_fields_replacements = Vec::new();
356 356
357 if !non_snake_case_allowed { 357 if !non_snake_case_allowed {
@@ -370,7 +370,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
370 } 370 }
371 } 371 }
372 372
373 // 3. If there is at least one element to spawn a warning on, go to the source map and generate a warning. 373 // If there is at least one element to spawn a warning on, go to the source map and generate a warning.
374 self.create_incorrect_case_diagnostic_for_struct( 374 self.create_incorrect_case_diagnostic_for_struct(
375 struct_id, 375 struct_id,
376 db, 376 db,
@@ -470,12 +470,12 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
470 fn validate_enum(&mut self, db: &dyn HirDatabase, enum_id: EnumId) { 470 fn validate_enum(&mut self, db: &dyn HirDatabase, enum_id: EnumId) {
471 let data = db.enum_data(enum_id); 471 let data = db.enum_data(enum_id);
472 472
473 // 1. Check whether non-camel case names are allowed for this enum. 473 // Check whether non-camel case names are allowed for this enum.
474 if self.allowed(db, enum_id.into(), allow::NON_CAMEL_CASE_TYPES) { 474 if self.allowed(db, enum_id.into(), allow::NON_CAMEL_CASE_TYPES) {
475 return; 475 return;
476 } 476 }
477 477
478 // 2. Check the enum name. 478 // Check the enum name.
479 let enum_name = data.name.to_string(); 479 let enum_name = data.name.to_string();
480 let enum_name_replacement = if let Some(new_name) = to_camel_case(&enum_name) { 480 let enum_name_replacement = if let Some(new_name) = to_camel_case(&enum_name) {
481 let replacement = Replacement { 481 let replacement = Replacement {
@@ -488,7 +488,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
488 None 488 None
489 }; 489 };
490 490
491 // 3. Check the field names. 491 // Check the field names.
492 let mut enum_fields_replacements = Vec::new(); 492 let mut enum_fields_replacements = Vec::new();
493 493
494 for (_, variant) in data.variants.iter() { 494 for (_, variant) in data.variants.iter() {
@@ -503,7 +503,7 @@ impl<'a, 'b> DeclValidator<'a, 'b> {
503 } 503 }
504 } 504 }
505 505
506 // 4. If there is at least one element to spawn a warning on, go to the source map and generate a warning. 506 // If there is at least one element to spawn a warning on, go to the source map and generate a warning.
507 self.create_incorrect_case_diagnostic_for_enum( 507 self.create_incorrect_case_diagnostic_for_enum(
508 enum_id, 508 enum_id,
509 db, 509 db,