OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 library services.src.refactoring.naming_conventions; | 5 library services.src.refactoring.naming_conventions; |
6 | 6 |
7 import 'package:analysis_server/src/services/correction/status.dart'; | 7 import 'package:analysis_server/src/services/correction/status.dart'; |
8 import 'package:analysis_server/src/services/correction/strings.dart'; | 8 import 'package:analysis_server/src/services/correction/strings.dart'; |
9 import 'package:analyzer/dart/ast/token.dart'; | 9 import 'package:front_end/src/fasta/scanner/keyword.dart' as fasta; |
10 | 10 |
11 /** | 11 /** |
12 * Returns the [RefactoringStatus] with severity: | 12 * Returns the [RefactoringStatus] with severity: |
13 * OK if the name is valid; | 13 * OK if the name is valid; |
14 * WARNING if the name is discouraged; | 14 * WARNING if the name is discouraged; |
15 * FATAL if the name is illegal. | 15 * FATAL if the name is illegal. |
16 */ | 16 */ |
17 RefactoringStatus validateClassName(String name) { | 17 RefactoringStatus validateClassName(String name) { |
18 return _validateUpperCamelCase(name, "Class"); | 18 return _validateUpperCamelCase(name, "Class"); |
19 } | 19 } |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 return new RefactoringStatus.fatal(message); | 160 return new RefactoringStatus.fatal(message); |
161 } | 161 } |
162 // empty | 162 // empty |
163 int length = identifier.length; | 163 int length = identifier.length; |
164 if (length == 0) { | 164 if (length == 0) { |
165 String message = "$desc must not be empty."; | 165 String message = "$desc must not be empty."; |
166 return new RefactoringStatus.fatal(message); | 166 return new RefactoringStatus.fatal(message); |
167 } | 167 } |
168 // keyword | 168 // keyword |
169 { | 169 { |
170 Keyword keyword = Keyword.keywords[identifier]; | 170 fasta.Keyword keyword = fasta.Keyword.keywords[identifier]; |
171 if (keyword != null && !keyword.isPseudoKeyword) { | 171 if (keyword != null) { |
172 String message = "$desc must not be a keyword."; | 172 String message = "$desc must not be a keyword."; |
173 return new RefactoringStatus.fatal(message); | 173 return new RefactoringStatus.fatal(message); |
174 } | 174 } |
175 } | 175 } |
176 // first character | 176 // first character |
177 int currentChar = identifier.codeUnitAt(0); | 177 int currentChar = identifier.codeUnitAt(0); |
178 if (!isLetter(currentChar) && | 178 if (!isLetter(currentChar) && |
179 currentChar != CHAR_UNDERSCORE && | 179 currentChar != CHAR_UNDERSCORE && |
180 currentChar != CHAR_DOLLAR) { | 180 currentChar != CHAR_DOLLAR) { |
181 String message = "$desc must begin with $beginDesc."; | 181 String message = "$desc must begin with $beginDesc."; |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
255 } | 255 } |
256 // does not start with upper case | 256 // does not start with upper case |
257 if (!isUpperCase(identifier.codeUnitAt(0))) { | 257 if (!isUpperCase(identifier.codeUnitAt(0))) { |
258 // By convention, class names usually start with an uppercase letter | 258 // By convention, class names usually start with an uppercase letter |
259 String message = "$desc should start with an uppercase letter."; | 259 String message = "$desc should start with an uppercase letter."; |
260 return new RefactoringStatus.warning(message); | 260 return new RefactoringStatus.warning(message); |
261 } | 261 } |
262 // OK | 262 // OK |
263 return new RefactoringStatus(); | 263 return new RefactoringStatus(); |
264 } | 264 } |
OLD | NEW |