ok, appurato che il cast tra classi NON si può fare (letto un post su un forum da un tipo della zend...piu' sicuro di cosi'...) pensavo ad un possibile workaround. è qualcosa che in java si vede abbastanza spesso

pippo = AstrattissimoStream(MoltoAstrattoStream(AstrattoSt ream(Stream(pluto)))))

la classe TheClueMySql potrebbe essere qualcosa tipo

codice:
class TheClueMySqlResult{

public function __construct(mysqli_result){

// doh!

}

}
e nella funzione query qualcosa del tipo:

return new TheClueMysqlResult(parent::query($sql));

l'oggetto tornato da query è inequivocabilmente istanza di TheClueMysqlResult

ecco...problema grosso: che diavolo ci metto nel constructor di TheClueMySqlResult per renderlo, diciamo cosi', "uguale" ad un oggetto mysqli_result?

(notare che l'oggetto nn e' piu' extends di mysqli_result quindi in qualche modo bisogna pur fare ^^')

idee?

(io sto definitivamente impazzendo, qui dentro)