protected function expected($expecting, $got, $return = false)
    {
        $ex = new ValidationException(ValidationException::VALIDATION_FAILED);
        $ex->addError($this->attribute, ValidationException::DATA_TYPE, [
            $expecting,
            $got
        ]);

        if ($return) {
            return $ex;
        }

        throw $ex;
    }