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

Side by Side Diff: dart/sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart

Issue 64033002: Version 0.8.10.8 (Closed) Base URL: http://dart.googlecode.com/svn/trunk/
Patch Set: Created 7 years, 1 month 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 /** 7 /**
8 * The main interface for the whole mirror system. 8 * The main interface for the whole mirror system.
9 */ 9 */
10 abstract class MirrorSystem { 10 abstract class MirrorSystem {
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 * unnamed constructor for [:class Foo:] the simple name is ''. For a 57 * unnamed constructor for [:class Foo:] the simple name is ''. For a
58 * constructor for [:class Foo:] named 'named' the simple name is 'named'. 58 * constructor for [:class Foo:] named 'named' the simple name is 'named'.
59 * For a property [:foo:] the simple name of the getter method is 'foo' and 59 * For a property [:foo:] the simple name of the getter method is 'foo' and
60 * the simple name of the setter is 'foo='. For operators the simple name is 60 * the simple name of the setter is 'foo='. For operators the simple name is
61 * the operator itself, for example '+' for [:operator +:]. 61 * the operator itself, for example '+' for [:operator +:].
62 * 62 *
63 * The simple name for the unary minus operator is [Mirror.UNARY_MINUS]. 63 * The simple name for the unary minus operator is [Mirror.UNARY_MINUS].
64 */ 64 */
65 String get simpleName; 65 String get simpleName;
66 66
67 /// Returns `true` if the name of this declaration is generated by the
68 /// provider of the mirror system.
69 bool get isNameSynthetic;
70
67 /** 71 /**
68 * Returns the name of this entity qualified by is enclosing context. For 72 * Returns the name of this entity qualified by is enclosing context. For
69 * instance, the qualified name of a method 'method' in class 'Class' in 73 * instance, the qualified name of a method 'method' in class 'Class' in
70 * library 'library' is 'library.Class.method'. 74 * library 'library' is 'library.Class.method'.
71 */ 75 */
72 String get qualifiedName; 76 String get qualifiedName;
73 77
74 /** 78 /**
75 * The source location of this Dart language entity. 79 * The source location of this Dart language entity.
76 */ 80 */
(...skipping 23 matching lines...) Expand all
100 bool get isTopLevel; 104 bool get isTopLevel;
101 105
102 /** 106 /**
103 * A list of the metadata associated with this declaration. 107 * A list of the metadata associated with this declaration.
104 */ 108 */
105 List<InstanceMirror> get metadata; 109 List<InstanceMirror> get metadata;
106 110
107 /** 111 /**
108 * Looks up [name] in the scope of this declaration. 112 * Looks up [name] in the scope of this declaration.
109 * 113 *
110 * [name] may be either a single identifier, like 'foo', or of the 114 * [name] may be either a single identifier, like 'foo', or of the
111 * a prefixed identifier, like 'foo.bar', where 'foo' must be a prefix. 115 * a prefixed identifier, like 'foo.bar', where 'foo' must be a prefix.
112 * For methods and constructors, the scope includes the parameters. For 116 * For methods and constructors, the scope includes the parameters. For
113 * classes and typedefs, the scope includes the type variables. 117 * classes and typedefs, the scope includes the type variables.
114 * For classes and class members, the scope includes inherited members. 118 * For classes and class members, the scope includes inherited members.
115 * 119 *
116 * See also: 120 * See also:
117 * 121 *
118 * * [Lexical Scope](https://www.dartlang.org/docs/dart-up-and-running/content s/ch02.html#ch02-lexical-scope) 122 * * [Lexical Scope](https://www.dartlang.org/docs/dart-up-and-running/content s/ch02.html#ch02-lexical-scope)
119 * in Dart Up and Running. 123 * in Dart Up and Running.
120 * * [Lexical Scoping](http://www.dartlang.org/docs/spec/latest/dart-language- specification.html#h.jb82efuudrc5) 124 * * [Lexical Scoping](http://www.dartlang.org/docs/spec/latest/dart-language- specification.html#h.jb82efuudrc5)
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after
361 * typedef. 365 * typedef.
362 */ 366 */
363 ClassMirror get superclass; 367 ClassMirror get superclass;
364 368
365 /** 369 /**
366 * Returns a list of the interfaces directly implemented by this type. 370 * Returns a list of the interfaces directly implemented by this type.
367 */ 371 */
368 List<ClassMirror> get superinterfaces; 372 List<ClassMirror> get superinterfaces;
369 373
370 /** 374 /**
375 * The mixin of this class. If this class is the result of a mixin application
376 * of the form S with M, returns a class mirror on M. Otherwise return the
377 * class mirror itself.
378 */
379 ClassMirror get mixin;
380
381 /**
371 * Is [:true:] iff this type is a class. 382 * Is [:true:] iff this type is a class.
372 */ 383 */
373 bool get isClass; 384 bool get isClass;
374 385
375 /** 386 /**
376 * Is this the original declaration of this type? 387 * Is this the original declaration of this type?
377 * 388 *
378 * For most classes, they are their own original declaration. For 389 * For most classes, they are their own original declaration. For
379 * generic classes, however, there is a distinction between the 390 * generic classes, however, there is a distinction between the
380 * original class declaration, which has unbound type variables, and 391 * original class declaration, which has unbound type variables, and
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after
689 /** 700 /**
690 * Returns the URI where the source originated. 701 * Returns the URI where the source originated.
691 */ 702 */
692 Uri get sourceUri; 703 Uri get sourceUri;
693 704
694 /** 705 /**
695 * Returns the text of this source. 706 * Returns the text of this source.
696 */ 707 */
697 String get sourceText; 708 String get sourceText;
698 } 709 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698