5#ifndef CUTELYSTVALIDATOREMAIL_H
6#define CUTELYSTVALIDATOREMAIL_H
8#include "validatorrule.h"
10#include <Cutelyst/cutelyst_global.h>
14class ValidatorEmailPrivate;
165 Q_DECLARE_FLAGS(Options, Option)
176 Category threshold = RFC5321,
177 Options options = NoOption,
179 const QString &defValKey = QString());
193 static QString diagnoseString(
Context *c, Diagnose diagnose,
const QString &label = QString());
202 static QString categoryString(
Context *c, Category category,
const QString &label = QString());
209 static Category category(Diagnose diagnose);
218 static QString categoryString(
Context *c, Diagnose diagnose,
const QString &label = QString());
233 QList<Diagnose> *diagnoses =
nullptr);
250 const QVariant &errorData = QVariant())
const override;
259Q_DECLARE_OPERATORS_FOR_FLAGS(Cutelyst::ValidatorEmail::Options)
Checks if the value is a valid email address according to specific RFCs.
QString genericValidationError(Context *c, const QVariant &errorData=QVariant()) const override
Returns a generic error if validation failed.
Diagnose
Single diagnose values that show why an address is not valid.
@ ErrorUnclosedDomLiteral
ValidatorEmail(const QString &field, Category threshold=RFC5321, Options options=NoOption, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString())
Constructs a new email validator.
Category
Validation category, used as threshold to define valid addresses.
ValidatorRule(const QString &field, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString())
Constructs a new ValidatorRule with the given parameters.
static bool validate(const QString &email, Category threshold=RFC5321, Options options=NoOption, QList< Diagnose > *diagnoses=nullptr)
Returns true if email is a valid address according to the Category given in the threshold.
The Cutelyst namespace holds all public Cutelyst API.
QMultiMap< QString, QString > ParamsMultiMap
Stores custom error messages and the input field label.
Contains the result of a single input parameter validation.