private ResolvedReferenceType toReferenceType(ClassOrInterfaceType classOrInterfaceType) {
        String className = classOrInterfaceType.getName().getId();
        if (classOrInterfaceType.getScope().isPresent()) {
            // look for the qualified name (for example class of type Rectangle2D.Double)
            className = classOrInterfaceType.getScope().get().toString() + "." + className;
        }
        SymbolReference<ResolvedTypeDeclaration> ref = solveType(className, typeSolver);
        if (!ref.isSolved()) {
            Optional<ClassOrInterfaceType> localScope = classOrInterfaceType.getScope();
            if (localScope.isPresent()) {
                String localName = localScope.get().getName().getId() + "." + classOrInterfaceType.getName().getId();
                ref = solveType(localName, typeSolver);
            }
        }
        if (!ref.isSolved()) {
            throw new UnsolvedSymbolException(classOrInterfaceType.getName().getId());
        }
        if (!classOrInterfaceType.getTypeArguments().isPresent()) {
            return new ReferenceTypeImpl(ref.getCorrespondingDeclaration().asReferenceType(), typeSolver);
        }
        List<ResolvedType> superClassTypeParameters = classOrInterfaceType.getTypeArguments().get()
                .stream().map(ta -> new LazyType(v -> JavaParserFacade.get(typeSolver).convert(ta, ta)))
                .collect(Collectors.toList());
        return new ReferenceTypeImpl(ref.getCorrespondingDeclaration().asReferenceType(), superClassTypeParameters, typeSolver);
    }
private ResolvedReferenceType toReferenceType(ClassOrInterfaceType classOrInterfaceType) {
        String className = classOrInterfaceType.getName().getId();
        if (classOrInterfaceType.getScope().isPresent()) {
            
            className = classOrInterfaceType.getScope().get().toString() + "." + className;
        }
        SymbolReference<ResolvedTypeDeclaration> ref = solveType(className, typeSolver);
        if (!ref.isSolved()) {
            Optional<ClassOrInterfaceType> localScope = classOrInterfaceType.getScope();
            if (localScope.isPresent()) {
                String localName = localScope.get().getName().getId() + "." + classOrInterfaceType.getName().getId();
                ref = solveType(localName, typeSolver);
            }
        }
        if (!ref.isSolved()) {
            throw new UnsolvedSymbolException(classOrInterfaceType.getName().getId());
        }
        if (!classOrInterfaceType.getTypeArguments().isPresent()) {
            return new ReferenceTypeImpl(ref.getCorrespondingDeclaration().asReferenceType(), typeSolver);
        }
        List<ResolvedType> superClassTypeParameters = classOrInterfaceType.getTypeArguments().get()
                .stream().map(ta -> new LazyType(v -> JavaParserFacade.get(typeSolver).convert(ta, ta)))
                .collect(Collectors.toList());
        return new ReferenceTypeImpl(ref.getCorrespondingDeclaration().asReferenceType(), superClassTypeParameters, typeSolver);
    }
private ResolvedReferenceType toReferenceType ( ClassOrInterfaceType classOrInterfaceType ) { String className = classOrInterfaceType . getName ( ) . getId ( ) ; if ( classOrInterfaceType . getScope ( ) . isPresent ( ) ) { // look for the qualified name (for example class of type Rectangle2D.Double) className = classOrInterfaceType . getScope ( ) . get ( ) . toString ( ) + "." + className ; } SymbolReference < ResolvedTypeDeclaration > ref = solveType ( className , typeSolver ) ; if ( ! ref . isSolved ( ) ) { Optional < ClassOrInterfaceType > localScope = classOrInterfaceType . getScope ( ) ; if ( localScope . isPresent ( ) ) { String localName = localScope . get ( ) . getName ( ) . getId ( ) + "." + classOrInterfaceType . getName ( ) . getId ( ) ; ref = solveType ( localName , typeSolver ) ; } } if ( ! ref . isSolved ( ) ) { throw new UnsolvedSymbolException ( classOrInterfaceType . getName ( ) . getId ( ) ) ; } if ( ! classOrInterfaceType . getTypeArguments ( ) . isPresent ( ) ) { return new ReferenceTypeImpl ( ref . getCorrespondingDeclaration ( ) . asReferenceType ( ) , typeSolver ) ; } List < ResolvedType > superClassTypeParameters = classOrInterfaceType . getTypeArguments ( ) . get ( ) . stream ( ) . map ( ta -> new LazyType ( v -> JavaParserFacade . get ( typeSolver ) . convert ( ta , ta ) ) ) . collect ( Collectors . toList ( ) ) ; return new ReferenceTypeImpl ( ref . getCorrespondingDeclaration ( ) . asReferenceType ( ) , superClassTypeParameters , typeSolver ) ; }
/
/