public static function getTypeAsString($type, $canonical = false)
{
if (is_string($type)) {
return $canonical ? __CLASS__ . '::' . $type : $type;
}
switch ($type) {
case self::EOF:
$name = 'EOF';
break;
case self::TEXT:
$name = 'TEXT';
break;
case self::BLOCK_START:
$name = 'BLOCK_START';
break;
case self::OUTPUT_START:
$name = 'OUTPUT_START';
break;
case self::BLOCK_END:
$name = 'BLOCK_END';
break;
case self::OUTPUT_END:
$name = 'OUTPUT_END';
break;
case self::NAME:
$name = 'NAME';
break;
case self::NUMBER:
$name = 'NUMBER';
break;
case self::STRING:
$name = 'STRING';
break;
case self::OPERATOR:
$name = 'OPERATOR';
break;
case self::CONSTANT:
$name = 'CONSTANT';
break;
}
return $canonical ? __CLASS__ . '::' . $name : $name;
}