Exakat\Analyzer\Interfaces\IsExtInterface::analyze PHP Method

analyze() public method

public analyze ( )
    public function analyze()
    {
        $exts = self::$docs->listAllAnalyzer('Extensions');
        $exts[] = 'php_interfaces';
        $i = array();
        foreach ($exts as $ext) {
            $inifile = str_replace('Extensions\\Ext', '', $ext) . '.ini';
            $ini = $this->loadIni($inifile);
            if (!empty($ini['interfaces'][0])) {
                $i[] = $ini['interfaces'];
            }
        }
        $interfaces = call_user_func_array('array_merge', $i);
        $interfaces = $this->makeFullNsPath($interfaces);
        $this->atomIs('Class')->outIs(array('IMPLEMENTS', 'EXTENDS'))->fullnspathIs($interfaces);
        $this->prepareQuery();
        $this->atomIs('Instanceof')->outIs('CLASS')->tokenIs(array('T_STRING', 'T_NS_SEPARATOR'))->atomIsNot(array('Array', 'Boolean', 'Null'))->fullnspathIs($interfaces);
        $this->prepareQuery();
        $this->atomIs('Function')->outIs('ARGUMENTS')->outIs('ARGUMENT')->outIs('TYPEHINT')->fullnspathIs($interfaces);
        $this->prepareQuery();
    }
IsExtInterface