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

Unified Diff: sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart

Issue 57983002: Add mixin support to source mirrors. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Updated cf. comments. 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 side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart
diff --git a/sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart b/sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart
index 7347573e22e7a69d4cd036641f13204968a57ab5..8e836430ae6e2a4b13c969a6bddacbf5bdbe3741 100644
--- a/sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart
+++ b/sdk/lib/_internal/compiler/implementation/mirrors/mirrors.dart
@@ -64,6 +64,10 @@ abstract class DeclarationMirror implements Mirror {
*/
String get simpleName;
+ /// Returns `true` if the name of this declaration is generated by the
+ /// provider of the mirror system.
+ bool get isNameSynthetic;
+
/**
* Returns the name of this entity qualified by is enclosing context. For
* instance, the qualified name of a method 'method' in class 'Class' in
@@ -107,7 +111,7 @@ abstract class DeclarationMirror implements Mirror {
/**
* Looks up [name] in the scope of this declaration.
*
- * [name] may be either a single identifier, like 'foo', or of the
+ * [name] may be either a single identifier, like 'foo', or of the
* a prefixed identifier, like 'foo.bar', where 'foo' must be a prefix.
* For methods and constructors, the scope includes the parameters. For
* classes and typedefs, the scope includes the type variables.
@@ -368,6 +372,13 @@ abstract class ClassMirror implements TypeMirror, ContainerMirror {
List<ClassMirror> get superinterfaces;
/**
+ * The mixin of this class. If this class is the result of a mixin application
+ * of the form S with M, returns a class mirror on M. Otherwise return the
+ * class mirror itself.
+ */
+ ClassMirror get mixin;
+
+ /**
* Is [:true:] iff this type is a class.
*/
bool get isClass;

Powered by Google App Engine
This is Rietveld 408576698