OLD | NEW |
1 #!/usr/bin/env dart | 1 #!/usr/bin/env dart |
2 | 2 |
3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
4 // for details. All rights reserved. Use of this source code is governed by a | 4 // for details. All rights reserved. Use of this source code is governed by a |
5 // BSD-style license that can be found in the LICENSE file. | 5 // BSD-style license that can be found in the LICENSE file. |
6 | 6 |
7 import 'dart:io'; | 7 import 'dart:io'; |
8 | 8 |
9 import 'package:analyzer/src/generated/scanner.dart'; | 9 import 'package:analyzer/src/generated/scanner.dart'; |
10 import 'package:analyzer/src/generated/java_core.dart' show CharSequence; | 10 import 'package:analyzer/src/generated/java_core.dart' show CharSequence; |
11 | 11 |
12 main() { | 12 main() { |
13 | 13 |
14 print('working dir ${new File('.').fullPathSync()}'); | 14 print('working dir ${new File('.').resolveSymbolicLinksSync()}'); |
15 | 15 |
16 var args = new Options().arguments; | 16 var args = new Options().arguments; |
17 if (args.length == 0) { | 17 if (args.length == 0) { |
18 print('Usage: scanner_driver [files_to_scan]'); | 18 print('Usage: scanner_driver [files_to_scan]'); |
19 exit(0); | 19 exit(0); |
20 } | 20 } |
21 | 21 |
22 for (var arg in args) { | 22 for (var arg in args) { |
23 _scan(new File(arg)); | 23 _scan(new File(arg)); |
24 } | 24 } |
25 | 25 |
26 } | 26 } |
27 | 27 |
28 _scan(File file) { | 28 _scan(File file) { |
29 var src = file.readAsStringSync(); | 29 var src = file.readAsStringSync(); |
30 var reader = new CharSequenceReader(new CharSequence(src)); | 30 var reader = new CharSequenceReader(new CharSequence(src)); |
31 var scanner = new Scanner(null, reader, null); | 31 var scanner = new Scanner(null, reader, null); |
32 var token = scanner.tokenize(); | 32 var token = scanner.tokenize(); |
33 while (token.type != TokenType.EOF) { | 33 while (token.type != TokenType.EOF) { |
34 print(token); | 34 print(token); |
35 token = token.next; | 35 token = token.next; |
36 } | 36 } |
37 } | 37 } |
OLD | NEW |