public function analyze()
{
// direct class
$this->atomIs('Variable')->codeIs('$this')->inIs(array('VARIABLE', 'APPEND'))->_as('results')->atomIs(array('Array', 'Arrayappend'))->goToClass()->raw('where( __.out("IMPLEMENTS").has("fullnspath", "\\\\arrayaccess").count().is(eq(0)) )')->raw('where( __.repeat( __.out("IMPLEMENTS", "EXTENDS").in("DEFINITION")).emit().times(' . self::MAX_LOOPING . ')
.out("IMPLEMENTS").has("fullnspath", "\\\\arrayaccess").count().is(eq(0)) )')->back('results');
$this->prepareQuery();
}