cutelyst 4.8.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
validatorrequiredwithoutall.h
1/*
2 * SPDX-FileCopyrightText: (C) 2017-2023 Matthias Fehring <mf@huessenbergnetz.de>
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5#ifndef CUTELYSTVALIDATORREQUIREDWITHOUTALL_H
6#define CUTELYSTVALIDATORREQUIREDWITHOUTALL_H
7
8#include "validatorrule.h"
9
10#include <QStringList>
11
12namespace Cutelyst {
13
14class ValidatorRequiredWithoutAllPrivate;
15
39class CUTELYST_PLUGIN_UTILS_VALIDATOR_EXPORT ValidatorRequiredWithoutAll : public ValidatorRule
40{
41public:
50 ValidatorRequiredWithoutAll(const QString &field,
51 const QStringList &otherFields,
52 const ValidatorMessages &messages = ValidatorMessages());
53
58
59protected:
66 ValidatorReturnType validate(Context *c, const ParamsMultiMap &params) const override;
67
71 QString genericValidationError(Context *c,
72 const QVariant &errorData = QVariant()) const override;
73
74private:
75 // NOLINTNEXTLINE(cppcoreguidelines-pro-type-reinterpret-cast)
76 Q_DECLARE_PRIVATE(ValidatorRequiredWithoutAll)
77 Q_DISABLE_COPY(ValidatorRequiredWithoutAll)
78};
79
80} // namespace Cutelyst
81
82#endif // CUTELYSTVALIDATORREQUIREDWITHOUTALL_H
The Cutelyst Context.
Definition context.h:42
The field under validation must be present and not empty only when all of the other specified fields ...
Base class for all validator rules.
QMultiMap< QString, QString > ParamsMultiMap
The Cutelyst namespace holds all public Cutelyst API.
Stores custom error messages and the input field label.
Contains the result of a single input parameter validation.