private static boolean hasMoreTagsToResolve ( ObjectType objectType ) { checkArgument ( objectType . isUnknownType ( ) ) ; FunctionType ctor = objectType . getConstructor ( ) ; if ( ctor != null ) { // interface extends interfaces for ( ObjectType interfaceType : ctor . getExtendedInterfaces ( ) ) { if ( ! interfaceType . isResolved ( ) ) { return true ; } } } if ( objectType . getImplicitPrototype ( ) != null ) { // constructor extends class return ! objectType . getImplicitPrototype ( ) . isResolved ( ) ; } return false ; }
Check whether a type is resolvable in the future If this has a supertype that hasn t been resolved yet then we can assume this type will be OK once the super type resolves .