private function adjustOperation($rule)
{
if (is_string($rule->validator) && ord($rule->validator[0]) > 127) {
$rule->isNegative = TRUE;
$rule->validator = ~$rule->validator;
if (!$rule->branch) {
$name = strncmp($rule->validator, ':', 1) ? $rule->validator : 'Form:' . strtoupper($rule->validator);
trigger_error("Negative validation rules such as ~{$name} are deprecated.", E_USER_DEPRECATED);
}
if ($rule->validator === Form::FILLED) {
$rule->validator = Form::BLANK;
$rule->isNegative = FALSE;
trigger_error('Replace negative validation rule ~Form::FILLED with Form::BLANK.', E_USER_DEPRECATED);
}
}
if (!is_callable($this->getCallback($rule))) {
$validator = is_scalar($rule->validator) ? " '{$rule->validator}'" : '';
throw new Nette\InvalidArgumentException("Unknown validator{$validator} for control '{$rule->control->name}'.");
}
}