Exakat\Data\Composer::getComposerClasses PHP Метод

getComposerClasses() публичный Метод

public getComposerClasses ( )
    public function getComposerClasses()
    {
        // global namespace is stored with 'global' keyword, so we remove it.
        $query = "SELECT DISTINCT CASE namespace WHEN 'global' THEN classname ELSE namespace || '\\' || classname END AS classname \n        FROM namespaces \n        JOIN classes \n            ON classes.namespace_id = namespaces.id";
        $res = $this->sqlite->query($query);
        $return = array();
        while ($row = $res->fetchArray(\SQLITE3_ASSOC)) {
            $return[] = strtolower($row['classname']);
        }
        return $return;
    }

Usage Example

Пример #1
0
 public function analyze()
 {
     $data = new Composer();
     $classes = $data->getComposerClasses();
     $classesFullNP = $this->makeFullNsPath($classes);
     $this->atomIs('Class')->outIs(array('IMPLEMENTS', 'EXTENDS'))->fullnspathIs($classesFullNP);
     $this->prepareQuery();
     $this->atomIs('Instanceof')->outIs('CLASS')->tokenIs(array('T_NS_SEPARATOR', 'T_STRING'))->atomIsNot('Array')->fullnspathIs($classesFullNP);
     $this->prepareQuery();
     $this->atomIs('Function')->outIs('ARGUMENTS')->outIs('ARGUMENT')->outIs('TYPEHINT')->fullnspathIs($classesFullNP);
     $this->prepareQuery();
     $this->atomIs('New')->outIs('NEW')->tokenIs(array('T_NS_SEPARATOR', 'T_STRING'))->atomIsNot('Array')->fullnspathIs($classesFullNP);
     $this->prepareQuery();
 }
All Usage Examples Of Exakat\Data\Composer::getComposerClasses