import {Type, isPresent, BaseException} from 'facade/lang'; import {Directive} from '../annotations/directive'; import {AnnotatedType} from './annotated_type'; /** * Interface representing a way of extracting [Directive] annotations from * [Type]. This interface has three native implementations: * * 1) JavaScript native implementation * 2) Dart reflective implementation * 3) Dart transformer generated implementation */ export class Reflector { annotatedType(type:Type):AnnotatedType { var annotations = type.annotations; if (annotations) { for (var i=0; i