public function analyze()
{
// interface used in a instanceof nor a Typehint but not defined
$this->atomIs('Instanceof')->outIs('CLASS')->isNot('aliased', true)->codeIsNot(array('self', 'parent', 'static'))->tokenIs(array('T_STRING', 'T_NS_SEPARATOR'))->noClassDefinition()->noInterfaceDefinition()->analyzerIsNot('Classes/IsExtClass')->analyzerIsNot('Interfaces/IsExtInterface')->analyzerIsNot('Composer/IsComposerClass')->analyzerIsNot('Composer/IsComposerInterface')->codeIsNot('iterable');
$this->prepareQuery();
$this->atomIs(array('Nsname', 'Identifier'))->hasIn('TYPEHINT')->codeIsNot(array('self', 'parent', 'static'))->noClassDefinition()->noInterfaceDefinition()->analyzerIsNot('Classes/IsExtClass')->analyzerIsNot('Interfaces/IsExtInterface')->analyzerIsNot('Composer/IsComposerClass')->analyzerIsNot('Composer/IsComposerInterface')->tokenIsNot(array('T_ARRAY', 'T_CALLABLE'))->codeIsNot('iterable');
$this->prepareQuery();
}