| 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 /** | 5 /** |
| 6 * Code generation for the file "matchers.dart". | 6 * Code generation for the file "matchers.dart". |
| 7 */ | 7 */ |
| 8 import 'dart:convert'; | 8 import 'dart:convert'; |
| 9 | 9 |
| 10 import 'package:analyzer/src/codegen/tools.dart'; | 10 import 'package:analyzer/src/codegen/tools.dart'; |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 visitApi() { | 99 visitApi() { |
| 100 outputHeader(year: '2017'); | 100 outputHeader(year: '2017'); |
| 101 writeln(); | 101 writeln(); |
| 102 writeln('/**'); | 102 writeln('/**'); |
| 103 writeln(' * Matchers for data types defined in the analysis server API'); | 103 writeln(' * Matchers for data types defined in the analysis server API'); |
| 104 writeln(' */'); | 104 writeln(' */'); |
| 105 writeln("import 'package:test/test.dart';"); | 105 writeln("import 'package:test/test.dart';"); |
| 106 writeln(); | 106 writeln(); |
| 107 writeln("import 'integration_tests.dart';"); | 107 writeln("import 'integration_tests.dart';"); |
| 108 writeln(); | 108 writeln(); |
| 109 for (ImpliedType impliedType in computeImpliedTypes(api).values) { | 109 List<ImpliedType> impliedTypes = computeImpliedTypes(api).values.toList(); |
| 110 impliedTypes.sort((ImpliedType first, ImpliedType second) => |
| 111 first.camelName.compareTo(second.camelName)); |
| 112 for (ImpliedType impliedType in impliedTypes) { |
| 110 makeMatcher(impliedType); | 113 makeMatcher(impliedType); |
| 111 } | 114 } |
| 112 } | 115 } |
| 113 | 116 |
| 114 @override | 117 @override |
| 115 visitTypeEnum(TypeEnum typeEnum) { | 118 visitTypeEnum(TypeEnum typeEnum) { |
| 116 writeln('new MatchesEnum(${JSON.encode(context)}, ['); | 119 writeln('new MatchesEnum(${JSON.encode(context)}, ['); |
| 117 indent(() { | 120 indent(() { |
| 118 bool commaNeeded = false; | 121 bool commaNeeded = false; |
| 119 for (TypeEnumValue value in typeEnum.values) { | 122 for (TypeEnumValue value in typeEnum.values) { |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 for (TypeDecl choice in typeUnion.choices) { | 182 for (TypeDecl choice in typeUnion.choices) { |
| 180 if (commaNeeded) { | 183 if (commaNeeded) { |
| 181 write(', '); | 184 write(', '); |
| 182 } | 185 } |
| 183 visitTypeDecl(choice); | 186 visitTypeDecl(choice); |
| 184 commaNeeded = true; | 187 commaNeeded = true; |
| 185 } | 188 } |
| 186 write('])'); | 189 write('])'); |
| 187 } | 190 } |
| 188 } | 191 } |
| OLD | NEW |