cutelyst  3.9.1
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
async.h
1 /*
2  * SPDX-FileCopyrightText: (C) 2020-2022 Daniel Nicoletti <dantti12@gmail.com>
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 #ifndef ASYNC_H
6 #define ASYNC_H
7 
8 #include <Cutelyst/cutelyst_global.h>
9 #include <functional>
10 #include <memory>
11 
12 namespace Cutelyst {
13 
14 class Context;
15 class ASyncPrivate;
16 class CUTELYST_LIBRARY ASync
17 {
18 public:
19  ASync();
20  ASync(Context *c);
21  ASync(Context *c, std::function<void(Context *c)> cb);
22  ASync(const ASync &other);
23  ASync(ASync &&other) noexcept;
24 
25  ~ASync();
26 
27  ASync &operator=(const ASync &copy);
28 
29  ASync &operator=(ASync &&other) noexcept
30  {
31  std::swap(d, other.d);
32  return *this;
33  }
34 
35 private:
36  std::shared_ptr<ASyncPrivate> d;
37 };
38 
39 } // namespace Cutelyst
40 
41 #endif // ASYNC_H
The Cutelyst Context.
Definition: context.h:38
The Cutelyst namespace holds all public Cutelyst API.
Definition: Mainpage.dox:7