public function isCorrectValue()
{
$type = gettype($this->value);
switch ($this->type) {
case CompiledExpression::INTEGER:
return $type == 'integer';
case CompiledExpression::NUMBER:
return $type == 'integer' || $type == 'double';
case CompiledExpression::DOUBLE:
return $type == 'double';
case CompiledExpression::BOOLEAN:
return $type == 'boolean';
case CompiledExpression::ARR:
return $type == 'array';
}
return true;
}