| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 * This file contains code to generate serialization/deserialization logic for | 6 * This file contains code to generate serialization/deserialization logic for |
| 7 * summaries based on an "IDL" description of the summary format (written in | 7 * summaries based on an "IDL" description of the summary format (written in |
| 8 * stylized Dart). | 8 * stylized Dart). |
| 9 * | 9 * |
| 10 * For each class in the "IDL" input, two corresponding classes are generated: | 10 * For each class in the "IDL" input, two corresponding classes are generated: |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 import 'dart:io'; | 23 import 'dart:io'; |
| 24 | 24 |
| 25 import 'package:front_end/src/codegen/tools.dart'; | 25 import 'package:front_end/src/codegen/tools.dart'; |
| 26 import 'package:front_end/src/fasta/scanner/string_scanner.dart'; | 26 import 'package:front_end/src/fasta/scanner/string_scanner.dart'; |
| 27 import 'package:front_end/src/scanner/token.dart' show Token; | 27 import 'package:front_end/src/scanner/token.dart' show Token; |
| 28 import 'package:path/path.dart'; | 28 import 'package:path/path.dart'; |
| 29 | 29 |
| 30 import 'idl_model.dart' as idlModel; | 30 import 'idl_model.dart' as idlModel; |
| 31 import 'mini_ast.dart'; | 31 import 'mini_ast.dart'; |
| 32 | 32 |
| 33 main() { | 33 main() async { |
| 34 String script = Platform.script.toFilePath(windows: Platform.isWindows); | 34 String script = Platform.script.toFilePath(windows: Platform.isWindows); |
| 35 String pkgPath = normalize(join(dirname(script), '..', '..')); | 35 String pkgPath = normalize(join(dirname(script), '..', '..')); |
| 36 GeneratedContent.generateAll(pkgPath, allTargets); | 36 await GeneratedContent.generateAll(pkgPath, allTargets); |
| 37 } | 37 } |
| 38 | 38 |
| 39 final List<GeneratedContent> allTargets = <GeneratedContent>[ | 39 final List<GeneratedContent> allTargets = <GeneratedContent>[ |
| 40 formatTarget, | 40 formatTarget, |
| 41 schemaTarget | 41 schemaTarget |
| 42 ]; | 42 ]; |
| 43 | 43 |
| 44 final GeneratedFile formatTarget = | 44 final GeneratedFile formatTarget = |
| 45 new GeneratedFile('lib/src/summary/format.dart', (String pkgPath) { | 45 new GeneratedFile('lib/src/summary/format.dart', (String pkgPath) async { |
| 46 _CodeGenerator codeGenerator = new _CodeGenerator(pkgPath); | 46 _CodeGenerator codeGenerator = new _CodeGenerator(pkgPath); |
| 47 codeGenerator.generateFormatCode(); | 47 codeGenerator.generateFormatCode(); |
| 48 return codeGenerator._outBuffer.toString(); | 48 return codeGenerator._outBuffer.toString(); |
| 49 }); | 49 }); |
| 50 | 50 |
| 51 final GeneratedFile schemaTarget = | 51 final GeneratedFile schemaTarget = |
| 52 new GeneratedFile('lib/src/summary/format.fbs', (String pkgPath) { | 52 new GeneratedFile('lib/src/summary/format.fbs', (String pkgPath) async { |
| 53 _CodeGenerator codeGenerator = new _CodeGenerator(pkgPath); | 53 _CodeGenerator codeGenerator = new _CodeGenerator(pkgPath); |
| 54 codeGenerator.generateFlatBufferSchema(); | 54 codeGenerator.generateFlatBufferSchema(); |
| 55 return codeGenerator._outBuffer.toString(); | 55 return codeGenerator._outBuffer.toString(); |
| 56 }); | 56 }); |
| 57 | 57 |
| 58 typedef String _StringToString(String s); | 58 typedef String _StringToString(String s); |
| 59 | 59 |
| 60 class _CodeGenerator { | 60 class _CodeGenerator { |
| 61 static const String _throwDeprecated = | 61 static const String _throwDeprecated = |
| 62 "throw new UnimplementedError('attempt to access deprecated field')"; | 62 "throw new UnimplementedError('attempt to access deprecated field')"; |
| (...skipping 944 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1007 Token token = comment.tokens.first; | 1007 Token token = comment.tokens.first; |
| 1008 return token.lexeme.split('\n').map((String line) { | 1008 return token.lexeme.split('\n').map((String line) { |
| 1009 line = line.trimLeft(); | 1009 line = line.trimLeft(); |
| 1010 if (line.startsWith('*')) line = ' ' + line; | 1010 if (line.startsWith('*')) line = ' ' + line; |
| 1011 return line; | 1011 return line; |
| 1012 }).join('\n'); | 1012 }).join('\n'); |
| 1013 } | 1013 } |
| 1014 return null; | 1014 return null; |
| 1015 } | 1015 } |
| 1016 } | 1016 } |
| OLD | NEW |