Index: pkg/docgen/lib/src/models/annotation.dart |
diff --git a/pkg/docgen/lib/src/models/annotation.dart b/pkg/docgen/lib/src/models/annotation.dart |
index 0cc97c6e20f37077e667136ab2648cdd5097020a..0b226a1586e3a4d77a99794480c5392aba9f3b51 100644 |
--- a/pkg/docgen/lib/src/models/annotation.dart |
+++ b/pkg/docgen/lib/src/models/annotation.dart |
@@ -13,23 +13,26 @@ import 'library.dart'; |
import 'mirror_based.dart'; |
/// Holds the name of the annotation, and its parameters. |
-class Annotation extends MirrorBased { |
+class Annotation extends MirrorBased<ClassMirror> { |
kevmoo
2014/04/20 21:34:54
Added a generic param to MirrorBased to improve ty
|
/// The class of this annotation. |
final ClassMirror mirror; |
final Library owningLibrary; |
- List<String> parameters; |
+ final List<String> parameters; |
Annotation(InstanceMirror originalMirror, this.owningLibrary) |
- : mirror = originalMirror.type { |
- parameters = dart2js_util.variablesOf(originalMirror.type.declarations) |
- .where((e) => e.isFinal) |
- .map((e) => originalMirror.getField(e.simpleName).reflectee) |
- .where((e) => e != null) |
- .toList(); |
- } |
+ : mirror = originalMirror.type, |
+ parameters = _createParamaters(originalMirror); |
kevmoo
2014/04/20 21:34:54
popped this mountain of code into a helper
|
Map toMap() => { |
'name': getDocgenObject(mirror, owningLibrary).docName, |
'parameters': parameters |
}; |
} |
+ |
+List<String> _createParamaters(InstanceMirror originalMirror) { |
+ return dart2js_util.variablesOf(originalMirror.type.declarations) |
+ .where((e) => e.isFinal) |
+ .map((e) => originalMirror.getField(e.simpleName).reflectee) |
+ .where((e) => e != null) |
+ .toList(); |
+} |