8 #include "controller.h" 24 return Component::OnlyExecute;
32 d->evaluateBool =
true;
36 d->listSignature =
true;
59 d->numberOfArgs = qint8(argsAttr.
toInt());
64 d->numberOfCaptures = qint8(capturesAttr.
toInt());
77 return d->attributes.value(
name, defaultValue);
105 return d->numberOfArgs == -1 || d->numberOfArgs == numberOfArgs;
115 return d->numberOfCaptures == -1 || d->numberOfCaptures == numberOfCaptures;
127 return d->numberOfArgs;
133 return d->numberOfCaptures;
145 #if (QT_VERSION < QT_VERSION_CHECK(6, 5, 0)) 147 if (d->evaluateBool) {
150 if (d->listSignature) {
151 ret = d->method.invoke(d->controller,
153 Q_RETURN_ARG(
bool, methodRet),
159 args.
append(d->emptyArgs);
161 ret = d->method.invoke(d->controller,
163 Q_RETURN_ARG(
bool, methodRet),
187 if (d->listSignature) {
188 ret = d->method.invoke(d->controller,
195 args.
append(d->emptyArgs);
197 ret = d->method.invoke(d->controller,
229 if (d->evaluateBool) {
232 if (d->listSignature) {
233 ret = d->method.invoke(
236 switch (d->method.parameterCount()) {
245 ret = d->method.invoke(
249 ret = d->method.invoke(d->controller,
251 qReturnArg(methodRet),
257 ret = d->method.invoke(d->controller,
259 qReturnArg(methodRet),
266 ret = d->method.invoke(d->controller,
268 qReturnArg(methodRet),
276 ret = d->method.invoke(d->controller,
278 qReturnArg(methodRet),
287 ret = d->method.invoke(d->controller,
289 qReturnArg(methodRet),
299 ret = d->method.invoke(d->controller,
301 qReturnArg(methodRet),
312 ret = d->method.invoke(d->controller,
314 qReturnArg(methodRet),
326 ret = d->method.invoke(d->controller,
328 qReturnArg(methodRet),
354 if (d->listSignature) {
357 switch (d->method.parameterCount()) {
368 ret = d->method.invoke(
372 ret = d->method.invoke(d->controller,
380 ret = d->method.invoke(d->controller,
389 ret = d->method.invoke(d->controller,
399 ret = d->method.invoke(d->controller,
410 ret = d->method.invoke(d->controller,
422 ret = d->method.invoke(d->controller,
435 ret = d->method.invoke(d->controller,
457 #include "moc_action.cpp" ParamsMultiMap attributes() const noexcept
virtual bool doExecute(Context *c) override
const_reference at(qsizetype i) const const
void detach(Action *action=nullptr)
The Cutelyst Component base class.
virtual bool matchCaptures(int numberOfCaptures) const noexcept
This class represents a Cutelyst Action.
T value(qsizetype i) const const
Cutelyst Controller base class
virtual qint8 numberOfArgs() const noexcept
bool detached() const noexcept
void setAttributes(const ParamsMultiMap &attributes)
int toInt(bool *ok, int base) const const
bool isEmpty() const const
virtual bool init(Application *application, const QVariantHash &args)
virtual qint8 numberOfCaptures() const noexcept
Controller * controller() const
The Cutelyst namespace holds all public Cutelyst API.
Action(QObject *parent=nullptr)
QString ns() const noexcept
virtual Modifiers modifiers() const override
void setController(Controller *controller)
QString fromLatin1(QByteArrayView str)
void append(QList< T > &&value)
void setupAction(const QVariantHash &args, Application *app)
virtual bool match(int numberOfArgs) const noexcept
The Cutelyst Application.
void setMethod(const QMetaMethod &method)
void setState(bool state) noexcept
Sets the state of the current executed action, setting to false will make the dispatcher skip non pro...
QString attribute(const QString &name, const QString &defaultValue={}) const
T value(const Key &key, const T &defaultValue) const const
QString className() const