public function analyze()
{
// Just not a falsy
$this->atomIs(array('Integer', 'Real', 'Boolean'))->analyzerIsNot('Structures/Falsy');
$this->prepareQuery();
// String
$this->atomIs('String')->analyzerIsNot('Structures/Falsy')->hasNoIn('CONCAT');
$this->prepareQuery();
// Note : heredoc always includes a final \n
$this->atomIs('Heredoc')->outIs('CONCAT')->atomIs('String')->codeIsNot(array('', "\n"))->back('first');
$this->prepareQuery();
// array
$this->atomIs('Functioncall')->fullnspathIs('\\array')->analyzerIsNot('Structures/Falsy');
$this->prepareQuery();
// NULL
// No
// object
// How to test?
// resource
// resources are never literals
}