| 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 codegen.protocol; | 5 library codegen.protocol; |
| 6 | 6 |
| 7 import 'dart:convert'; | 7 import 'dart:convert'; |
| 8 | 8 |
| 9 import 'package:analyzer/src/codegen/tools.dart'; |
| 9 import 'package:html/dom.dart' as dom; | 10 import 'package:html/dom.dart' as dom; |
| 10 | 11 |
| 11 import 'api.dart'; | 12 import 'api.dart'; |
| 12 import 'codegen_dart.dart'; | 13 import 'codegen_dart.dart'; |
| 13 import 'codegen_tools.dart'; | |
| 14 import 'from_html.dart'; | 14 import 'from_html.dart'; |
| 15 import 'implied_types.dart'; | 15 import 'implied_types.dart'; |
| 16 import 'to_html.dart'; | 16 import 'to_html.dart'; |
| 17 | 17 |
| 18 /** | 18 /** |
| 19 * Translate spec_input.html into protocol_matchers.dart. | |
| 20 */ | |
| 21 main() { | |
| 22 target.generate(); | |
| 23 } | |
| 24 | |
| 25 /** | |
| 26 * Special flags that need to be inserted into the declaration of the Element | 19 * Special flags that need to be inserted into the declaration of the Element |
| 27 * class. | 20 * class. |
| 28 */ | 21 */ |
| 29 const Map<String, String> specialElementFlags = const { | 22 const Map<String, String> specialElementFlags = const { |
| 30 'abstract': '0x01', | 23 'abstract': '0x01', |
| 31 'const': '0x02', | 24 'const': '0x02', |
| 32 'final': '0x04', | 25 'final': '0x04', |
| 33 'static': '0x08', | 26 'static': '0x08', |
| 34 'private': '0x10', | 27 'private': '0x10', |
| 35 'deprecated': '0x20' | 28 'deprecated': '0x20' |
| 36 }; | 29 }; |
| 37 | 30 |
| 38 final GeneratedFile target = | 31 final GeneratedFile target = new GeneratedFile( |
| 39 new GeneratedFile('../../lib/plugin/protocol/generated_protocol.dart', () { | 32 'lib/plugin/protocol/generated_protocol.dart', (String pkgPath) { |
| 40 CodegenProtocolVisitor visitor = new CodegenProtocolVisitor(readApi()); | 33 CodegenProtocolVisitor visitor = new CodegenProtocolVisitor(readApi(pkgPath)); |
| 41 return visitor.collectCode(visitor.visitApi); | 34 return visitor.collectCode(visitor.visitApi); |
| 42 }); | 35 }); |
| 43 | 36 |
| 44 /** | 37 /** |
| 45 * Callback type used to represent arbitrary code generation. | 38 * Callback type used to represent arbitrary code generation. |
| 46 */ | 39 */ |
| 47 typedef void CodegenCallback(); | 40 typedef void CodegenCallback(); |
| 48 | 41 |
| 49 typedef String FromJsonSnippetCallback(String jsonPath, String json); | 42 typedef String FromJsonSnippetCallback(String jsonPath, String json); |
| 50 | 43 |
| (...skipping 1189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1240 | 1233 |
| 1241 @override | 1234 @override |
| 1242 String get asClosure => '($type value) => ${callback('value')}'; | 1235 String get asClosure => '($type value) => ${callback('value')}'; |
| 1243 | 1236 |
| 1244 @override | 1237 @override |
| 1245 bool get isIdentity => false; | 1238 bool get isIdentity => false; |
| 1246 | 1239 |
| 1247 @override | 1240 @override |
| 1248 String asSnippet(String value) => callback(value); | 1241 String asSnippet(String value) => callback(value); |
| 1249 } | 1242 } |
| OLD | NEW |