Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(78)

Side by Side Diff: lib/dartdoc/mirrors/mirrors.dart

Issue 10701091: Dartdoc and Apidoc updated to use dart2js through the mirror system. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fixed cf. rnystrom's comments. Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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('mirrors'); 5 #library('mirrors');
6 6
7 #import('dart:uri'); 7 #import('dart:uri');
8 #import('dart2js_mirror.dart'); 8 #import('dart2js_mirror.dart');
9 9
10 /** 10 /**
11 * [Compilation] encapsulates the compilation of a program. 11 * [Compilation] encapsulates the compilation of a program.
12 */ 12 */
13 class Compilation { 13 class Compilation {
14 /** 14 /**
15 * Creates a new compilation which has [script] as its entry point. 15 * Creates a new compilation which has [script] as its entry point.
16 */ 16 */
17 factory Compilation(String script, String libraryRoot, 17 factory Compilation(String script,
18 String libraryRoot,
18 [String packageRoot, 19 [String packageRoot,
19 List<String> opts = const <String>[]]) { 20 List<String> opts = const <String>[]]) {
20 return new Dart2jsCompilation(script, libraryRoot, packageRoot, opts); 21 return new Dart2JsCompilation(script, libraryRoot, packageRoot, opts);
22 }
23 factory Compilation.library(List<String> libraries,
24 String libraryRoot,
25 [String packageRoot,
26 List<String> opts = const []]) {
27 return new Dart2JsCompilation.library(libraries, libraryRoot,
28 packageRoot, opts);
21 } 29 }
22 30
23 /** 31 /**
24 * Returns the mirror system for this compilation. 32 * Returns the mirror system for this compilation.
25 */ 33 */
26 abstract MirrorSystem mirrors(); 34 abstract MirrorSystem mirrors();
27 } 35 }
28 36
29 /** 37 /**
30 * The main interface for the whole mirror system. 38 * The main interface for the whole mirror system.
31 */ 39 */
32 interface MirrorSystem { 40 interface MirrorSystem {
33 /** 41 /**
34 * Returns an unmodifiable map of all libraries in this mirror system. 42 * Returns an unmodifiable map of all libraries in this mirror system.
35 */ 43 */
36 Map<Object, LibraryMirror> libraries(); 44 Map<Object, LibraryMirror> libraries();
37 } 45 }
38 46
39 47
40 /** 48 /**
41 * An entity in the mirror system. 49 * An entity in the mirror system.
42 */ 50 */
43 interface Mirror { 51 interface Mirror extends Hashable {
44 /** 52 /**
45 * The simple name of the entity. The simple name is in most cases the 53 * The simple name of the entity. The simple name is in most cases the
46 * the declared single identifier name of the entity, such as 'method' for 54 * the declared single identifier name of the entity, such as 'method' for
47 * a method [:void method() {...}:]. 55 * a method [:void method() {...}:].
48 */ 56 */
49 String simpleName(); 57 String simpleName();
50 58
51 /** 59 /**
52 * Returns the name of this entity qualified by is enclosing context. For 60 * Returns the name of this entity qualified by is enclosing context. For
53 * instance, the qualified name of a method 'method' in class 'Class' in 61 * instance, the qualified name of a method 'method' in class 'Class' in
54 * library 'library' is 'library.Class.method'. 62 * library 'library' is 'library.Class.method'.
55 */ 63 */
56 String qualifiedName(); 64 String qualifiedName();
65
66 /**
67 * Returns the mirror system which contains this mirror.
68 */
69 final MirrorSystem system;
57 } 70 }
58 71
59 /** 72 /**
60 * Common interface for interface types and libraries. 73 * Common interface for interface types and libraries.
61 */ 74 */
62 interface ObjectMirror extends Mirror { 75 interface ObjectMirror extends Mirror {
63 76
64 /** 77 /**
65 * Returns an unmodifiable map of the members of declared in this type or 78 * Returns an unmodifiable map of the members of declared in this type or
66 * library. 79 * library.
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after
428 interface Source { 441 interface Source {
429 /** 442 /**
430 * Returns the URI where the source originated. 443 * Returns the URI where the source originated.
431 */ 444 */
432 Uri uri(); 445 Uri uri();
433 446
434 /** 447 /**
435 * Returns the text of this source. 448 * Returns the text of this source.
436 */ 449 */
437 String text(); 450 String text();
438 } 451 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698