@@ -69,14 +69,14 @@ export class TypePlugin extends ConverterComponent {
6969 if ( ! types ) {
7070 return ;
7171 }
72- types . forEach ( ( type : ReferenceType ) => {
72+ types . forEach ( type => {
7373 if ( ! ( type instanceof ReferenceType ) ) {
7474 return ;
7575 }
7676 if ( ! type . reflection || ! ( type . reflection instanceof DeclarationReflection ) ) {
7777 return ;
7878 }
79- callback ( < DeclarationReflection > type . reflection ) ;
79+ callback ( type . reflection ) ;
8080 } ) ;
8181 }
8282
@@ -91,28 +91,19 @@ export class TypePlugin extends ConverterComponent {
9191
9292 function resolveType ( reflection : Reflection , type : Type ) {
9393 if ( type instanceof ReferenceType ) {
94- const referenceType : ReferenceType = < ReferenceType > type ;
95- if ( referenceType . symbolID === ReferenceType . SYMBOL_ID_RESOLVE_BY_NAME ) {
96- referenceType . reflection = reflection . findReflectionByName ( referenceType . name ) ;
97- } else if ( ! referenceType . reflection && referenceType . symbolID !== ReferenceType . SYMBOL_ID_RESOLVED ) {
98- referenceType . reflection = project . reflections [ project . symbolMapping [ referenceType . symbolID ] ] ;
94+ if ( type . symbolID === ReferenceType . SYMBOL_ID_RESOLVE_BY_NAME ) {
95+ type . reflection = reflection . findReflectionByName ( type . name ) ;
96+ } else if ( ! type . reflection && type . symbolID !== ReferenceType . SYMBOL_ID_RESOLVED ) {
97+ type . reflection = project . reflections [ project . symbolMapping [ type . symbolID ] ] ;
9998 }
10099
101- if ( referenceType . typeArguments ) {
102- referenceType . typeArguments . forEach ( ( typeArgument : Type ) => {
103- resolveType ( reflection , typeArgument ) ;
104- } ) ;
100+ if ( type . typeArguments ) {
101+ resolveTypes ( reflection , type . typeArguments ) ;
105102 }
106103 } else if ( type instanceof TupleType ) {
107- const tupleType : TupleType = < TupleType > type ;
108- for ( let index = 0 , count = tupleType . elements . length ; index < count ; index ++ ) {
109- resolveType ( reflection , tupleType . elements [ index ] ) ;
110- }
104+ resolveTypes ( reflection , type . elements ) ;
111105 } else if ( type instanceof UnionType || type instanceof IntersectionType ) {
112- const unionOrIntersectionType : UnionType | IntersectionType = < UnionType | IntersectionType > type ;
113- for ( let index = 0 , count = unionOrIntersectionType . types . length ; index < count ; index ++ ) {
114- resolveType ( reflection , unionOrIntersectionType . types [ index ] ) ;
115- }
106+ resolveTypes ( reflection , type . types ) ;
116107 } else if ( type instanceof ArrayType ) {
117108 resolveType ( reflection , type . elementType ) ;
118109 }
0 commit comments