| Index: third_party/pkg/angular/lib/core/registry.dart
|
| diff --git a/third_party/pkg/angular/lib/core/registry.dart b/third_party/pkg/angular/lib/core/registry.dart
|
| index 17985f893b590e645e3e5d49e4a95336be795abc..9d66de3ed4f748fcf1358ed716e9d7c8a7ba610e 100644
|
| --- a/third_party/pkg/angular/lib/core/registry.dart
|
| +++ b/third_party/pkg/angular/lib/core/registry.dart
|
| @@ -1,11 +1,13 @@
|
| -part of angular.core;
|
| +library angular.core.registry;
|
| +
|
| +import 'package:di/di.dart' show Injector;
|
|
|
| abstract class AnnotationMap<K> {
|
| final Map<K, Type> _map = {};
|
|
|
| AnnotationMap(Injector injector, MetadataExtractor extractMetadata) {
|
| injector.types.forEach((type) {
|
| - var meta = extractMetadata(type)
|
| + extractMetadata(type)
|
| .where((annotation) => annotation is K)
|
| .forEach((annotation) {
|
| _map[annotation] = type;
|
| @@ -19,10 +21,12 @@ abstract class AnnotationMap<K> {
|
| return value;
|
| }
|
|
|
| - forEach(fn(K, Type)) => _map.forEach(fn);
|
| + void forEach(fn(K, Type)) {
|
| + _map.forEach(fn);
|
| + }
|
|
|
| List<K> annotationsFor(Type type) {
|
| - var res = <K>[];
|
| + final res = <K>[];
|
| forEach((ann, annType) {
|
| if (annType == type) res.add(ann);
|
| });
|
| @@ -35,7 +39,7 @@ abstract class AnnotationsMap<K> {
|
|
|
| AnnotationsMap(Injector injector, MetadataExtractor extractMetadata) {
|
| injector.types.forEach((type) {
|
| - var meta = extractMetadata(type)
|
| + extractMetadata(type)
|
| .where((annotation) => annotation is K)
|
| .forEach((annotation) {
|
| map.putIfAbsent(annotation, () => []).add(type);
|
| @@ -49,7 +53,7 @@ abstract class AnnotationsMap<K> {
|
| return value;
|
| }
|
|
|
| - forEach(fn(K, Type)) {
|
| + void forEach(fn(K, Type)) {
|
| map.forEach((annotation, types) {
|
| types.forEach((type) {
|
| fn(annotation, type);
|
| @@ -66,13 +70,6 @@ abstract class AnnotationsMap<K> {
|
| }
|
| }
|
|
|
| -
|
| -@NgInjectableService()
|
| -class MetadataExtractor {
|
| - Iterable call(Type type) {
|
| - if (reflectType(type) is TypedefMirror) return [];
|
| - var metadata = reflectClass(type).metadata;
|
| - if (metadata == null) return [];
|
| - return metadata.map((InstanceMirror im) => im.reflectee);
|
| - }
|
| +abstract class MetadataExtractor {
|
| + Iterable call(Type type);
|
| }
|
|
|