Salve, esame all'università alle porte... Laboratorio di Algoritmi e Strutture dati.
Implementando la struttura dati Albero, nello specifico LinkedTree, mi sono trovato a dover scrivere questo metodo che deve restituire un "iteratore sulle Position" (interfaccia di astrazione della posizione di un elemento) che non sono nient'altro che i figli del nodo "v" dell'albero.

ecco il codice incriminato:

codice:
	

public Iterable<Position<E>> children(Position<E> v) 
                                                      throws InvalidPositionException {

        TreePosition<E> tn = checkPosition(v); 		
        PositionList<Position<E>> pl = tn.getChildren(); 	

        return pl.positions(); 	

}
Mi da questo tipo di errore:
Type mismatch: cannot convert from Iterable<Position<Position<E>>> to Iterable<Position<E>>

Ma come è possibile che mi da un errore Iterable<Position<Position<E>>>??
Come arriva a mettere una Position dentro un'altra?
Qualcuno ha mai avuto un problema simile??
Non riesco a venirne a capo!! Aiutatemi!

So di non essere chiarissimo, ma le strutture dati coinvolte sono tantissime!!
In ogni caso sono aperto a tutti i suggerimenti!!

Saluti,
Lancill