function &classes()
    {
        $classes = array();
        $packages = $this->packages(); // not by reference so as not to move the internal array pointer
        foreach ($packages as $name => $package) {
            $packageClasses = $this->_packages[$name]->allClasses(); // not by reference so as not to move the internal array pointer
            if ($packageClasses) {
                foreach ($packageClasses as $key => $pack) {
                    $classes[$key.'.'.$name] =& $packageClasses[$key];
                }
            }
        }
        ksort($classes);

        return $classes;
    }