OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 name_validator; | 5 library name_validator; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'dart:io'; | 8 import 'dart:io'; |
9 | 9 |
10 import '../../../pkg/path/lib/path.dart' as path; | 10 import '../../../pkg/path/lib/path.dart' as path; |
11 | 11 |
12 import '../entrypoint.dart'; | 12 import '../entrypoint.dart'; |
13 import '../io.dart'; | 13 import '../io.dart'; |
14 import '../utils.dart'; | 14 import '../utils.dart'; |
15 import '../validator.dart'; | 15 import '../validator.dart'; |
16 | 16 |
17 /// Dart reserved words, from the Dart spec. | 17 /// Dart reserved words, from the Dart spec. |
18 final _RESERVED_WORDS = [ | 18 final _RESERVED_WORDS = [ |
19 "abstract", "as", "dynamic", "export", "external", "factory", "get", | 19 "assert", "break", "case", "catch", "class", "const", "continue", "default", |
20 "implements", "import", "library", "operator", "part", "set", "static", | 20 "do", "else", "extends", "false", "final", "finally", "for", "if", "in", "is", |
21 "typedef" | 21 "new", "null", "return", "super", "switch", "this", "throw", "true", "try", |
| 22 "var", "void", "while", "with" |
22 ]; | 23 ]; |
23 | 24 |
24 /// A validator that validates the name of the package and its libraries. | 25 /// A validator that validates the name of the package and its libraries. |
25 class NameValidator extends Validator { | 26 class NameValidator extends Validator { |
26 NameValidator(Entrypoint entrypoint) | 27 NameValidator(Entrypoint entrypoint) |
27 : super(entrypoint); | 28 : super(entrypoint); |
28 | 29 |
29 Future validate() { | 30 Future validate() { |
30 _checkName(entrypoint.root.name, 'Package name "${entrypoint.root.name}"'); | 31 _checkName(entrypoint.root.name, 'Package name "${entrypoint.root.name}"'); |
31 | 32 |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 builder | 88 builder |
88 ..add(source.substring(lastMatchEnd, match.start + 1)) | 89 ..add(source.substring(lastMatchEnd, match.start + 1)) |
89 ..add("_") | 90 ..add("_") |
90 ..add(match.group(1).toLowerCase()); | 91 ..add(match.group(1).toLowerCase()); |
91 lastMatchEnd = match.end; | 92 lastMatchEnd = match.end; |
92 } | 93 } |
93 builder.add(source.substring(lastMatchEnd)); | 94 builder.add(source.substring(lastMatchEnd)); |
94 return builder.toString().toLowerCase(); | 95 return builder.toString().toLowerCase(); |
95 } | 96 } |
96 } | 97 } |
OLD | NEW |