/src/uWebSockets/src/MoveOnlyFunction.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | MIT License |
3 | | |
4 | | Copyright (c) 2020 Oleg Fatkhiev |
5 | | |
6 | | Permission is hereby granted, free of charge, to any person obtaining a copy |
7 | | of this software and associated documentation files (the "Software"), to deal |
8 | | in the Software without restriction, including without limitation the rights |
9 | | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
10 | | copies of the Software, and to permit persons to whom the Software is |
11 | | furnished to do so, subject to the following conditions: |
12 | | |
13 | | The above copyright notice and this permission notice shall be included in all |
14 | | copies or substantial portions of the Software. |
15 | | |
16 | | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
17 | | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
18 | | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
19 | | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
20 | | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
21 | | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
22 | | SOFTWARE. |
23 | | */ |
24 | | |
25 | | /* Sources fetched from https://github.com/ofats/any_invocable on 2021-02-19. */ |
26 | | |
27 | | #ifndef _ANY_INVOKABLE_H_ |
28 | | #define _ANY_INVOKABLE_H_ |
29 | | |
30 | | #include <functional> |
31 | | |
32 | | #if !defined(__cpp_lib_move_only_function) || __cpp_lib_move_only_function < 202110L |
33 | | |
34 | | #include <memory> |
35 | | #include <type_traits> |
36 | | |
37 | | // clang-format off |
38 | | /* |
39 | | namespace std { |
40 | | template<class Sig> class any_invocable; // never defined |
41 | | |
42 | | template<class R, class... ArgTypes> |
43 | | class any_invocable<R(ArgTypes...) cv ref noexcept(noex)> { |
44 | | public: |
45 | | using result_type = R; |
46 | | |
47 | | // SECTION.3, construct/copy/destroy |
48 | | any_invocable() noexcept; |
49 | | any_invocable(nullptr_t) noexcept; |
50 | | any_invocable(any_invocable&&) noexcept; |
51 | | template<class F> any_invocable(F&&); |
52 | | |
53 | | template<class T, class... Args> |
54 | | explicit any_invocable(in_place_type_t<T>, Args&&...); |
55 | | template<class T, class U, class... Args> |
56 | | explicit any_invocable(in_place_type_t<T>, initializer_list<U>, Args&&...); |
57 | | |
58 | | any_invocable& operator=(any_invocable&&) noexcept; |
59 | | any_invocable& operator=(nullptr_t) noexcept; |
60 | | template<class F> any_invocable& operator=(F&&); |
61 | | template<class F> any_invocable& operator=(reference_wrapper<F>) noexcept; |
62 | | |
63 | | ~any_invocable(); |
64 | | |
65 | | // SECTION.4, any_invocable modifiers |
66 | | void swap(any_invocable&) noexcept; |
67 | | |
68 | | // SECTION.5, any_invocable capacity |
69 | | explicit operator bool() const noexcept; |
70 | | |
71 | | // SECTION.6, any_invocable invocation |
72 | | R operator()(ArgTypes...) cv ref noexcept(noex); |
73 | | |
74 | | // SECTION.7, null pointer comparisons |
75 | | friend bool operator==(const any_invocable&, nullptr_t) noexcept; |
76 | | |
77 | | // SECTION.8, specialized algorithms |
78 | | friend void swap(any_invocable&, any_invocable&) noexcept; |
79 | | }; |
80 | | } |
81 | | */ |
82 | | // clang-format on |
83 | | |
84 | | namespace ofats { |
85 | | |
86 | | namespace any_detail { |
87 | | |
88 | | using buffer = std::aligned_storage_t<sizeof(void*) * 2, alignof(void*)>; |
89 | | |
90 | | template <class T> |
91 | | inline constexpr bool is_small_object_v = |
92 | | sizeof(T) <= sizeof(buffer) && alignof(buffer) % alignof(T) == 0 && |
93 | | std::is_nothrow_move_constructible_v<T>; |
94 | | |
95 | | union storage { |
96 | | void* ptr_ = nullptr; |
97 | | buffer buf_; |
98 | | }; |
99 | | |
100 | | enum class action { destroy, move }; |
101 | | |
102 | | template <class R, class... ArgTypes> |
103 | | struct handler_traits { |
104 | | template <class Derived> |
105 | | struct handler_base { |
106 | 919k | static void handle(action act, storage* current, storage* other = nullptr) { |
107 | 919k | switch (act) { |
108 | 587k | case (action::destroy): |
109 | 587k | Derived::destroy(*current); |
110 | 587k | break; |
111 | 332k | case (action::move): |
112 | 332k | Derived::move(*current, *other); |
113 | 332k | break; |
114 | 919k | } |
115 | 919k | } ofats::any_detail::handler_traits<void*, void*, uWS::HttpRequest*>::handler_base<ofats::any_detail::handler_traits<void*, void*, uWS::HttpRequest*>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::action) Line | Count | Source | 106 | 203k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 203k | switch (act) { | 108 | 203k | case (action::destroy): | 109 | 203k | Derived::destroy(*current); | 110 | 203k | break; | 111 | 0 | case (action::move): | 112 | 0 | Derived::move(*current, *other); | 113 | 0 | break; | 114 | 203k | } | 115 | 203k | } |
ofats::any_detail::handler_traits<void*, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::handler_base<ofats::any_detail::handler_traits<void*, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::action) Line | Count | Source | 106 | 203k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 203k | switch (act) { | 108 | 203k | case (action::destroy): | 109 | 203k | Derived::destroy(*current); | 110 | 203k | break; | 111 | 0 | case (action::move): | 112 | 0 | Derived::move(*current, *other); | 113 | 0 | break; | 114 | 203k | } | 115 | 203k | } |
Unexecuted instantiation: ofats::any_detail::handler_traits<bool, unsigned long>::handler_base<ofats::any_detail::handler_traits<bool, unsigned long>::small_handler<uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::handler_base<ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::handler_base<ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 13.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 13.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 6.94k | case (action::move): | 112 | 6.94k | Derived::move(*current, *other); | 113 | 6.94k | break; | 114 | 13.8k | } | 115 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::handler_base<ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 13.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 13.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 6.94k | case (action::move): | 112 | 6.94k | Derived::move(*current, *other); | 113 | 6.94k | break; | 114 | 13.8k | } | 115 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::handler_base<ofats::any_detail::handler_traits<void>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 34.7k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 34.7k | switch (act) { | 108 | 13.8k | case (action::destroy): | 109 | 13.8k | Derived::destroy(*current); | 110 | 13.8k | break; | 111 | 20.8k | case (action::move): | 112 | 20.8k | Derived::move(*current, *other); | 113 | 20.8k | break; | 114 | 34.7k | } | 115 | 34.7k | } |
ofats::any_detail::handler_traits<bool, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::handler_base<ofats::any_detail::handler_traits<bool, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::large_handler<uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 131k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 131k | switch (act) { | 108 | 41.6k | case (action::destroy): | 109 | 41.6k | Derived::destroy(*current); | 110 | 41.6k | break; | 111 | 90.2k | case (action::move): | 112 | 90.2k | Derived::move(*current, *other); | 113 | 90.2k | break; | 114 | 131k | } | 115 | 131k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::handler_base<ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::large_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 41.6k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 41.6k | switch (act) { | 108 | 13.8k | case (action::destroy): | 109 | 13.8k | Derived::destroy(*current); | 110 | 13.8k | break; | 111 | 27.7k | case (action::move): | 112 | 27.7k | Derived::move(*current, *other); | 113 | 27.7k | break; | 114 | 41.6k | } | 115 | 41.6k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::handler_base<ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_0> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::handler_base<ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_1> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::handler_base<ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 14.7k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 14.7k | switch (act) { | 108 | 4.44k | case (action::destroy): | 109 | 4.44k | Derived::destroy(*current); | 110 | 4.44k | break; | 111 | 10.3k | case (action::move): | 112 | 10.3k | Derived::move(*current, *other); | 113 | 10.3k | break; | 114 | 14.7k | } | 115 | 14.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::handler_base<ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::action) Line | Count | Source | 106 | 9.51k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 9.51k | switch (act) { | 108 | 3.00k | case (action::destroy): | 109 | 3.00k | Derived::destroy(*current); | 110 | 3.00k | break; | 111 | 6.50k | case (action::move): | 112 | 6.50k | Derived::move(*current, *other); | 113 | 6.50k | break; | 114 | 9.51k | } | 115 | 9.51k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::handler_base<ofats::any_detail::handler_traits<void, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 14.7k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 14.7k | switch (act) { | 108 | 4.44k | case (action::destroy): | 109 | 4.44k | Derived::destroy(*current); | 110 | 4.44k | break; | 111 | 10.3k | case (action::move): | 112 | 10.3k | Derived::move(*current, *other); | 113 | 10.3k | break; | 114 | 14.7k | } | 115 | 14.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::handler_base<ofats::any_detail::handler_traits<void>::large_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::action) Line | Count | Source | 106 | 1.43k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 1.43k | switch (act) { | 108 | 1.43k | case (action::destroy): | 109 | 1.43k | Derived::destroy(*current); | 110 | 1.43k | break; | 111 | 0 | case (action::move): | 112 | 0 | Derived::move(*current, *other); | 113 | 0 | break; | 114 | 1.43k | } | 115 | 1.43k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::handler_base<ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_2> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::handler_base<ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_3> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::handler_base<ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::small_handler<test()::$_4> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::handler_base<ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_5> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::handler_base<ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_6> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::handler_base<ofats::any_detail::handler_traits<void>::small_handler<test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage) Line | Count | Source | 106 | 20.9k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.9k | switch (act) { | 108 | 6.97k | case (action::destroy): | 109 | 6.97k | Derived::destroy(*current); | 110 | 6.97k | break; | 111 | 14.0k | case (action::move): | 112 | 14.0k | Derived::move(*current, *other); | 113 | 14.0k | break; | 114 | 20.9k | } | 115 | 20.9k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::handler_base<ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_7> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::handler_base<ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_8> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 20.8k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 20.8k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 13.8k | case (action::move): | 112 | 13.8k | Derived::move(*current, *other); | 113 | 13.8k | break; | 114 | 20.8k | } | 115 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, us_listen_socket_t*>::handler_base<ofats::any_detail::handler_traits<void, us_listen_socket_t*>::small_handler<test()::$_9> >::handle(ofats::any_detail::action, ofats::any_detail::storage*, ofats::any_detail::storage*) Line | Count | Source | 106 | 6.94k | static void handle(action act, storage* current, storage* other = nullptr) { | 107 | 6.94k | switch (act) { | 108 | 6.94k | case (action::destroy): | 109 | 6.94k | Derived::destroy(*current); | 110 | 6.94k | break; | 111 | 0 | case (action::move): | 112 | 0 | Derived::move(*current, *other); | 113 | 0 | break; | 114 | 6.94k | } | 115 | 6.94k | } |
|
116 | | }; |
117 | | |
118 | | template <class T> |
119 | | struct small_handler : handler_base<small_handler<T>> { |
120 | | template <class... Args> |
121 | 744k | static void create(storage& s, Args&&... args) { |
122 | 744k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); |
123 | 744k | } void ofats::any_detail::handler_traits<void*, void*, uWS::HttpRequest*>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}>::create<{lambda(us_socket_t*, char*, int)#1}>(ofats::any_detail::storage&, {lambda(us_socket_t*, char*, int)#1}&&) Line | Count | Source | 121 | 203k | static void create(storage& s, Args&&... args) { | 122 | 203k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 203k | } |
void ofats::any_detail::handler_traits<void*, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::create<{lambda(us_socket_t*, char*, int)#1}>(ofats::any_detail::storage&, {lambda(us_socket_t*, char*, int)#1}&&) Line | Count | Source | 121 | 203k | static void create(storage& s, Args&&... args) { | 122 | 203k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 203k | } |
Unexecuted instantiation: void ofats::any_detail::handler_traits<bool, unsigned long>::small_handler<uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}>::create<{lambda(unsigned long)#1}>(ofats::any_detail::storage&, {lambda(unsigned long)#1}&&) void ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}>::create<{lambda(auto:1*, auto:2*)#1}>(ofats::any_detail::storage&, {lambda(auto:1*, auto:2*)#1}&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}>::create<{lambda(uWS::Loop*)#1}>(ofats::any_detail::storage&, {lambda(uWS::Loop*)#1}&&) Line | Count | Source | 121 | 13.8k | static void create(storage& s, Args&&... args) { | 122 | 13.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 13.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}>::create<{lambda(uWS::Loop*)#2}>(ofats::any_detail::storage&, {lambda(uWS::Loop*)#2}&&) Line | Count | Source | 121 | 13.8k | static void create(storage& s, Args&&... args) { | 122 | 13.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 13.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}>::create<{lambda()#1}>(ofats::any_detail::storage&, {lambda()#1}&&) Line | Count | Source | 121 | 34.7k | static void create(storage& s, Args&&... args) { | 122 | 34.7k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 34.7k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_0>::create<test()::$_0>(ofats::any_detail::storage&, test()::$_0&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_1>::create<test()::$_1>(ofats::any_detail::storage&, test()::$_1&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}>::create<{lambda()#1}>(ofats::any_detail::storage&, {lambda()#1}&&) Line | Count | Source | 121 | 14.7k | static void create(storage& s, Args&&... args) { | 122 | 14.7k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 14.7k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}>::create<{lambda()#1}>(ofats::any_detail::storage&, {lambda()#1}&&) Line | Count | Source | 121 | 9.51k | static void create(storage& s, Args&&... args) { | 122 | 9.51k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 9.51k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::create<{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>(ofats::any_detail::storage&, {lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}&&) Line | Count | Source | 121 | 14.7k | static void create(storage& s, Args&&... args) { | 122 | 14.7k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 14.7k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_2>::create<test()::$_2>(ofats::any_detail::storage&, test()::$_2&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_3>::create<test()::$_3>(ofats::any_detail::storage&, test()::$_3&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::small_handler<test()::$_4>::create<test()::$_4>(ofats::any_detail::storage&, test()::$_4&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_5>::create<test()::$_5>(ofats::any_detail::storage&, test()::$_5&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_6>::create<test()::$_6>(ofats::any_detail::storage&, test()::$_6&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void>::small_handler<test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}>::create<{lambda()#1}>(ofats::any_detail::storage&, {lambda()#1}&&) Line | Count | Source | 121 | 20.9k | static void create(storage& s, Args&&... args) { | 122 | 20.9k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.9k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_7>::create<test()::$_7>(ofats::any_detail::storage&, test()::$_7&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_8>::create<test()::$_8>(ofats::any_detail::storage&, test()::$_8&&) Line | Count | Source | 121 | 20.8k | static void create(storage& s, Args&&... args) { | 122 | 20.8k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 20.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, us_listen_socket_t*>::small_handler<test()::$_9>::create<test()::$_9>(ofats::any_detail::storage&, test()::$_9&&) Line | Count | Source | 121 | 6.94k | static void create(storage& s, Args&&... args) { | 122 | 6.94k | new (static_cast<void*>(&s.buf_)) T(std::forward<Args>(args)...); | 123 | 6.94k | } |
|
124 | | |
125 | 744k | static void destroy(storage& s) noexcept { |
126 | 744k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); |
127 | 744k | value.~T(); |
128 | 744k | } ofats::any_detail::handler_traits<void*, void*, uWS::HttpRequest*>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 203k | static void destroy(storage& s) noexcept { | 126 | 203k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 203k | value.~T(); | 128 | 203k | } |
ofats::any_detail::handler_traits<void*, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 203k | static void destroy(storage& s) noexcept { | 126 | 203k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 203k | value.~T(); | 128 | 203k | } |
Unexecuted instantiation: ofats::any_detail::handler_traits<bool, unsigned long>::small_handler<uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}>::destroy(ofats::any_detail::storage&) ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 13.8k | static void destroy(storage& s) noexcept { | 126 | 13.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 13.8k | value.~T(); | 128 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 13.8k | static void destroy(storage& s) noexcept { | 126 | 13.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 13.8k | value.~T(); | 128 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 34.7k | static void destroy(storage& s) noexcept { | 126 | 34.7k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 34.7k | value.~T(); | 128 | 34.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_0>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_1>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 14.7k | static void destroy(storage& s) noexcept { | 126 | 14.7k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 14.7k | value.~T(); | 128 | 14.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 9.51k | static void destroy(storage& s) noexcept { | 126 | 9.51k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 9.51k | value.~T(); | 128 | 9.51k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 14.7k | static void destroy(storage& s) noexcept { | 126 | 14.7k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 14.7k | value.~T(); | 128 | 14.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_2>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_3>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::small_handler<test()::$_4>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_5>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_6>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.9k | static void destroy(storage& s) noexcept { | 126 | 20.9k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.9k | value.~T(); | 128 | 20.9k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_7>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_8>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 20.8k | static void destroy(storage& s) noexcept { | 126 | 20.8k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 20.8k | value.~T(); | 128 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, us_listen_socket_t*>::small_handler<test()::$_9>::destroy(ofats::any_detail::storage&) Line | Count | Source | 125 | 6.94k | static void destroy(storage& s) noexcept { | 126 | 6.94k | T& value = *static_cast<T*>(static_cast<void*>(&s.buf_)); | 127 | 6.94k | value.~T(); | 128 | 6.94k | } |
|
129 | | |
130 | 214k | static void move(storage& dst, storage& src) noexcept { |
131 | 214k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); |
132 | 214k | destroy(src); |
133 | 214k | } Unexecuted instantiation: ofats::any_detail::handler_traits<void*, void*, uWS::HttpRequest*>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::handler_traits<void*, void*, uWS::HttpRequest*>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}>) Unexecuted instantiation: ofats::any_detail::handler_traits<void*, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::handler_traits<void*, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>) Unexecuted instantiation: ofats::any_detail::handler_traits<bool, unsigned long>::small_handler<uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 130 | 6.94k | static void move(storage& dst, storage& src) noexcept { | 131 | 6.94k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 6.94k | destroy(src); | 133 | 6.94k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 130 | 6.94k | static void move(storage& dst, storage& src) noexcept { | 131 | 6.94k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 6.94k | destroy(src); | 133 | 6.94k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 130 | 20.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 20.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 20.8k | destroy(src); | 133 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_0>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_1>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 130 | 10.3k | static void move(storage& dst, storage& src) noexcept { | 131 | 10.3k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 10.3k | destroy(src); | 133 | 10.3k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}>::move(ofats::any_detail::storage&, ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}>) Line | Count | Source | 130 | 6.50k | static void move(storage& dst, storage& src) noexcept { | 131 | 6.50k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 6.50k | destroy(src); | 133 | 6.50k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 130 | 10.3k | static void move(storage& dst, storage& src) noexcept { | 131 | 10.3k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 10.3k | destroy(src); | 133 | 10.3k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_2>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_3>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::small_handler<test()::$_4>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_5>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_6>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 130 | 14.0k | static void move(storage& dst, storage& src) noexcept { | 131 | 14.0k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 14.0k | destroy(src); | 133 | 14.0k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_7>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_8>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) Line | Count | Source | 130 | 13.8k | static void move(storage& dst, storage& src) noexcept { | 131 | 13.8k | create(dst, std::move(*static_cast<T*>(static_cast<void*>(&src.buf_)))); | 132 | 13.8k | destroy(src); | 133 | 13.8k | } |
Unexecuted instantiation: EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, us_listen_socket_t*>::small_handler<test()::$_9>::move(ofats::any_detail::storage&, ofats::any_detail::storage&) |
134 | | |
135 | 7.04M | static R call(storage& s, ArgTypes... args) { |
136 | 7.04M | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), |
137 | 7.04M | std::forward<ArgTypes>(args)...); |
138 | 7.04M | } ofats::any_detail::handler_traits<void*, void*, uWS::HttpRequest*>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}>::call(ofats::any_detail::storage&, void*, uWS::HttpRequest*) Line | Count | Source | 135 | 67.8k | static R call(storage& s, ArgTypes... args) { | 136 | 67.8k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 67.8k | std::forward<ArgTypes>(args)...); | 138 | 67.8k | } |
ofats::any_detail::handler_traits<void*, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::call(ofats::any_detail::storage&, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) Line | Count | Source | 135 | 55.0k | static R call(storage& s, ArgTypes... args) { | 136 | 55.0k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 55.0k | std::forward<ArgTypes>(args)...); | 138 | 55.0k | } |
Unexecuted instantiation: ofats::any_detail::handler_traits<bool, unsigned long>::small_handler<uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}>::call(ofats::any_detail::storage&, unsigned long) ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}>::call(ofats::any_detail::storage&, uWS::HttpResponse<false>*, uWS::HttpRequest*) Line | Count | Source | 135 | 8.80k | static R call(storage& s, ArgTypes... args) { | 136 | 8.80k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 8.80k | std::forward<ArgTypes>(args)...); | 138 | 8.80k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}>::call(ofats::any_detail::storage&, uWS::Loop*) Line | Count | Source | 135 | 3.36M | static R call(storage& s, ArgTypes... args) { | 136 | 3.36M | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 3.36M | std::forward<ArgTypes>(args)...); | 138 | 3.36M | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::Loop*>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}>::call(ofats::any_detail::storage&, uWS::Loop*) Line | Count | Source | 135 | 3.36M | static R call(storage& s, ArgTypes... args) { | 136 | 3.36M | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 3.36M | std::forward<ArgTypes>(args)...); | 138 | 3.36M | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}>::call(ofats::any_detail::storage&) Line | Count | Source | 135 | 13.8k | static R call(storage& s, ArgTypes... args) { | 136 | 13.8k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 13.8k | std::forward<ArgTypes>(args)...); | 138 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_0>::call(ofats::any_detail::storage&, uWS::HttpResponse<false>*, uWS::HttpRequest*) Line | Count | Source | 135 | 11.1k | static R call(storage& s, ArgTypes... args) { | 136 | 11.1k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 11.1k | std::forward<ArgTypes>(args)...); | 138 | 11.1k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_1>::call(ofats::any_detail::storage&, uWS::HttpResponse<false>*, uWS::HttpRequest*) Line | Count | Source | 135 | 4.44k | static R call(storage& s, ArgTypes... args) { | 136 | 4.44k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 4.44k | std::forward<ArgTypes>(args)...); | 138 | 4.44k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}>::call(ofats::any_detail::storage&) Line | Count | Source | 135 | 3.00k | static R call(storage& s, ArgTypes... args) { | 136 | 3.00k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 3.00k | std::forward<ArgTypes>(args)...); | 138 | 3.00k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}>::call(ofats::any_detail::storage&) Line | Count | Source | 135 | 2.78k | static R call(storage& s, ArgTypes... args) { | 136 | 2.78k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 2.78k | std::forward<ArgTypes>(args)...); | 138 | 2.78k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::small_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>::call(ofats::any_detail::storage&, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) Line | Count | Source | 135 | 33.5k | static R call(storage& s, ArgTypes... args) { | 136 | 33.5k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 33.5k | std::forward<ArgTypes>(args)...); | 138 | 33.5k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::small_handler<test()::$_2>::call(ofats::any_detail::storage&, uWS::HttpResponse<false>*, uWS::HttpRequest*) Line | Count | Source | 135 | 2.31k | static R call(storage& s, ArgTypes... args) { | 136 | 2.31k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 2.31k | std::forward<ArgTypes>(args)...); | 138 | 2.31k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_3>::call(ofats::any_detail::storage&, uWS::WebSocket<false, true, test()::PerSocketData>*) Line | Count | Source | 135 | 39.0k | static R call(storage& s, ArgTypes... args) { | 136 | 39.0k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 39.0k | std::forward<ArgTypes>(args)...); | 138 | 39.0k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::small_handler<test()::$_4>::call(ofats::any_detail::storage&, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode) Line | Count | Source | 135 | 10.4k | static R call(storage& s, ArgTypes... args) { | 136 | 10.4k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 10.4k | std::forward<ArgTypes>(args)...); | 138 | 10.4k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*>::small_handler<test()::$_5>::call(ofats::any_detail::storage&, uWS::WebSocket<false, true, test()::PerSocketData>*) Line | Count | Source | 135 | 4.10k | static R call(storage& s, ArgTypes... args) { | 136 | 4.10k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 4.10k | std::forward<ArgTypes>(args)...); | 138 | 4.10k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_6>::call(ofats::any_detail::storage&, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) Line | Count | Source | 135 | 6.97k | static R call(storage& s, ArgTypes... args) { | 136 | 6.97k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 6.97k | std::forward<ArgTypes>(args)...); | 138 | 6.97k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::small_handler<test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}>::call(ofats::any_detail::storage&) Line | Count | Source | 135 | 5.08k | static R call(storage& s, ArgTypes... args) { | 136 | 5.08k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 5.08k | std::forward<ArgTypes>(args)...); | 138 | 5.08k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_7>::call(ofats::any_detail::storage&, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) Line | Count | Source | 135 | 1.22k | static R call(storage& s, ArgTypes... args) { | 136 | 1.22k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 1.22k | std::forward<ArgTypes>(args)...); | 138 | 1.22k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::small_handler<test()::$_8>::call(ofats::any_detail::storage&, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> >) Line | Count | Source | 135 | 39.0k | static R call(storage& s, ArgTypes... args) { | 136 | 39.0k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 39.0k | std::forward<ArgTypes>(args)...); | 138 | 39.0k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, us_listen_socket_t*>::small_handler<test()::$_9>::call(ofats::any_detail::storage&, us_listen_socket_t*) Line | Count | Source | 135 | 6.94k | static R call(storage& s, ArgTypes... args) { | 136 | 6.94k | return std::invoke(*static_cast<T*>(static_cast<void*>(&s.buf_)), | 137 | 6.94k | std::forward<ArgTypes>(args)...); | 138 | 6.94k | } |
|
139 | | }; |
140 | | |
141 | | template <class T> |
142 | | struct large_handler : handler_base<large_handler<T>> { |
143 | | template <class... Args> |
144 | 56.9k | static void create(storage& s, Args&&... args) { |
145 | 56.9k | s.ptr_ = new T(std::forward<Args>(args)...); |
146 | 56.9k | } void ofats::any_detail::handler_traits<bool, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::large_handler<uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}>::create<{lambda(auto:1*)#1}>(ofats::any_detail::storage&, {lambda(auto:1*)#1}&&) Line | Count | Source | 144 | 41.6k | static void create(storage& s, Args&&... args) { | 145 | 41.6k | s.ptr_ = new T(std::forward<Args>(args)...); | 146 | 41.6k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::large_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}>::create<{lambda(auto:1*, auto:2*)#1}>(ofats::any_detail::storage&, {lambda(auto:1*, auto:2*)#1}&&) Line | Count | Source | 144 | 13.8k | static void create(storage& s, Args&&... args) { | 145 | 13.8k | s.ptr_ = new T(std::forward<Args>(args)...); | 146 | 13.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::handler_traits<void>::large_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}>::create<{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>(ofats::any_detail::storage&, {lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}&&) Line | Count | Source | 144 | 1.43k | static void create(storage& s, Args&&... args) { | 145 | 1.43k | s.ptr_ = new T(std::forward<Args>(args)...); | 146 | 1.43k | } |
|
147 | | |
148 | 56.9k | static void destroy(storage& s) noexcept { delete static_cast<T*>(s.ptr_); } ofats::any_detail::handler_traits<bool, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::large_handler<uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 148 | 41.6k | static void destroy(storage& s) noexcept { delete static_cast<T*>(s.ptr_); } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::large_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 148 | 13.8k | static void destroy(storage& s) noexcept { delete static_cast<T*>(s.ptr_); } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::large_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}>::destroy(ofats::any_detail::storage&) Line | Count | Source | 148 | 1.43k | static void destroy(storage& s) noexcept { delete static_cast<T*>(s.ptr_); } |
|
149 | | |
150 | 118k | static void move(storage& dst, storage& src) noexcept { |
151 | 118k | dst.ptr_ = src.ptr_; |
152 | 118k | } ofats::any_detail::handler_traits<bool, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::large_handler<uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 150 | 90.2k | static void move(storage& dst, storage& src) noexcept { | 151 | 90.2k | dst.ptr_ = src.ptr_; | 152 | 90.2k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::large_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}>::move(ofats::any_detail::storage&, ofats::any_detail::storage) Line | Count | Source | 150 | 27.7k | static void move(storage& dst, storage& src) noexcept { | 151 | 27.7k | dst.ptr_ = src.ptr_; | 152 | 27.7k | } |
Unexecuted instantiation: EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::large_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}>::move(ofats::any_detail::storage&, ofats::any_detail::handler_traits<void>::large_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}>) |
153 | | |
154 | 133k | static R call(storage& s, ArgTypes... args) { |
155 | 133k | return std::invoke(*static_cast<T*>(s.ptr_), |
156 | 133k | std::forward<ArgTypes>(args)...); |
157 | 133k | } ofats::any_detail::handler_traits<bool, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::large_handler<uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}>::call(ofats::any_detail::storage&, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*) Line | Count | Source | 154 | 79.4k | static R call(storage& s, ArgTypes... args) { | 155 | 79.4k | return std::invoke(*static_cast<T*>(s.ptr_), | 156 | 79.4k | std::forward<ArgTypes>(args)...); | 157 | 79.4k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void, uWS::HttpResponse<false>*, uWS::HttpRequest*>::large_handler<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}>::call(ofats::any_detail::storage&, uWS::HttpResponse<false>*, uWS::HttpRequest*) Line | Count | Source | 154 | 52.6k | static R call(storage& s, ArgTypes... args) { | 155 | 52.6k | return std::invoke(*static_cast<T*>(s.ptr_), | 156 | 52.6k | std::forward<ArgTypes>(args)...); | 157 | 52.6k | } |
EpollHelloWorld.cpp:ofats::any_detail::handler_traits<void>::large_handler<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}>::call(ofats::any_detail::storage&) Line | Count | Source | 154 | 1.43k | static R call(storage& s, ArgTypes... args) { | 155 | 1.43k | return std::invoke(*static_cast<T*>(s.ptr_), | 156 | 1.43k | std::forward<ArgTypes>(args)...); | 157 | 1.43k | } |
|
158 | | }; |
159 | | |
160 | | template <class T> |
161 | | using handler = std::conditional_t<is_small_object_v<T>, small_handler<T>, |
162 | | large_handler<T>>; |
163 | | }; |
164 | | |
165 | | template <class T> |
166 | | struct is_in_place_type : std::false_type {}; |
167 | | |
168 | | template <class T> |
169 | | struct is_in_place_type<std::in_place_type_t<T>> : std::true_type {}; |
170 | | |
171 | | template <class T> |
172 | | inline constexpr auto is_in_place_type_v = is_in_place_type<T>::value; |
173 | | |
174 | | template <class R, bool is_noexcept, class... ArgTypes> |
175 | | class any_invocable_impl { |
176 | | template <class T> |
177 | | using handler = |
178 | | typename any_detail::handler_traits<R, ArgTypes...>::template handler<T>; |
179 | | |
180 | | using storage = any_detail::storage; |
181 | | using action = any_detail::action; |
182 | | using handle_func = void (*)(any_detail::action, any_detail::storage*, |
183 | | any_detail::storage*); |
184 | | using call_func = R (*)(any_detail::storage&, ArgTypes...); |
185 | | |
186 | | public: |
187 | | using result_type = R; |
188 | | |
189 | 4.71M | any_invocable_impl() noexcept = default; ofats::any_detail::any_invocable_impl<void, false, char const*>::any_invocable_impl() Line | Count | Source | 189 | 6.94k | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::any_invocable_impl() Line | Count | Source | 189 | 1.37M | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<void, false>::any_invocable_impl() Line | Count | Source | 189 | 1.40M | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::any_invocable_impl() Line | Count | Source | 189 | 1.37M | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<void*, false, void*, uWS::HttpRequest*>::any_invocable_impl() Line | Count | Source | 189 | 203k | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<void*, false, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::any_invocable_impl() Line | Count | Source | 189 | 203k | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::any_invocable_impl() Line | Count | Source | 189 | 41.6k | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>::any_invocable_impl() Line | Count | Source | 189 | 13.8k | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::any_invocable_impl() Line | Count | Source | 189 | 41.6k | any_invocable_impl() noexcept = default; |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::any_invocable_impl() Line | Count | Source | 189 | 13.8k | any_invocable_impl() noexcept = default; |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::any_invocable_impl() Line | Count | Source | 189 | 6.94k | any_invocable_impl() noexcept = default; |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::any_invocable_impl() Line | Count | Source | 189 | 13.8k | any_invocable_impl() noexcept = default; |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::any_invocable_impl() Line | Count | Source | 189 | 6.94k | any_invocable_impl() noexcept = default; |
ofats::any_detail::any_invocable_impl<void, false, us_listen_socket_t*>::any_invocable_impl() Line | Count | Source | 189 | 6.94k | any_invocable_impl() noexcept = default; |
|
190 | 329k | any_invocable_impl(std::nullptr_t) noexcept {} ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 13.8k | any_invocable_impl(std::nullptr_t) noexcept {} |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 41.6k | any_invocable_impl(std::nullptr_t) noexcept {} |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 48.5k | any_invocable_impl(std::nullptr_t) noexcept {} |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 41.6k | any_invocable_impl(std::nullptr_t) noexcept {} |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 27.7k | any_invocable_impl(std::nullptr_t) noexcept {} |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 20.8k | any_invocable_impl(std::nullptr_t) noexcept {} |
ofats::any_detail::any_invocable_impl<void, false, char const*>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 6.94k | any_invocable_impl(std::nullptr_t) noexcept {} |
ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 1.43k | any_invocable_impl(std::nullptr_t) noexcept {} |
ofats::any_detail::any_invocable_impl<void, false>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 63.2k | any_invocable_impl(std::nullptr_t) noexcept {} |
ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::any_invocable_impl(decltype(nullptr)) Line | Count | Source | 190 | 63.2k | any_invocable_impl(std::nullptr_t) noexcept {} |
|
191 | 605k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { |
192 | 605k | if (rhs.handle_) { |
193 | 279k | handle_ = rhs.handle_; |
194 | 279k | handle_(action::move, &storage_, &rhs.storage_); |
195 | 279k | call_ = rhs.call_; |
196 | 279k | rhs.handle_ = nullptr; |
197 | 279k | } |
198 | 605k | } Unexecuted instantiation: ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::any_invocable_impl(ofats::any_detail::any_invocable_impl<bool, false, unsigned long>&&) ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>&&) Line | Count | Source | 191 | 13.8k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 13.8k | if (rhs.handle_) { | 193 | 13.8k | handle_ = rhs.handle_; | 194 | 13.8k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 13.8k | call_ = rhs.call_; | 196 | 13.8k | rhs.handle_ = nullptr; | 197 | 13.8k | } | 198 | 13.8k | } |
ofats::any_detail::any_invocable_impl<void, false>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false>&&) Line | Count | Source | 191 | 45.7k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 45.7k | if (rhs.handle_) { | 193 | 45.7k | handle_ = rhs.handle_; | 194 | 45.7k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 45.7k | call_ = rhs.call_; | 196 | 45.7k | rhs.handle_ = nullptr; | 197 | 45.7k | } | 198 | 45.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>&&) Line | Count | Source | 191 | 83.3k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 83.3k | if (rhs.handle_) { | 193 | 13.8k | handle_ = rhs.handle_; | 194 | 13.8k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 13.8k | call_ = rhs.call_; | 196 | 13.8k | rhs.handle_ = nullptr; | 197 | 13.8k | } | 198 | 83.3k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>&&) Line | Count | Source | 191 | 83.3k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 83.3k | if (rhs.handle_) { | 193 | 6.94k | handle_ = rhs.handle_; | 194 | 6.94k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 6.94k | call_ = rhs.call_; | 196 | 6.94k | rhs.handle_ = nullptr; | 197 | 6.94k | } | 198 | 83.3k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>&&) Line | Count | Source | 191 | 41.6k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 41.6k | if (rhs.handle_) { | 193 | 0 | handle_ = rhs.handle_; | 194 | 0 | handle_(action::move, &storage_, &rhs.storage_); | 195 | 0 | call_ = rhs.call_; | 196 | 0 | rhs.handle_ = nullptr; | 197 | 0 | } | 198 | 41.6k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >&&) Line | Count | Source | 191 | 41.6k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 41.6k | if (rhs.handle_) { | 193 | 6.94k | handle_ = rhs.handle_; | 194 | 6.94k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 6.94k | call_ = rhs.call_; | 196 | 6.94k | rhs.handle_ = nullptr; | 197 | 6.94k | } | 198 | 41.6k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >&&) Line | Count | Source | 191 | 83.3k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 83.3k | if (rhs.handle_) { | 193 | 13.8k | handle_ = rhs.handle_; | 194 | 13.8k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 13.8k | call_ = rhs.call_; | 196 | 13.8k | rhs.handle_ = nullptr; | 197 | 13.8k | } | 198 | 83.3k | } |
ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::any_invocable_impl(ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>&&) Line | Count | Source | 191 | 90.2k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 90.2k | if (rhs.handle_) { | 193 | 90.2k | handle_ = rhs.handle_; | 194 | 90.2k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 90.2k | call_ = rhs.call_; | 196 | 90.2k | rhs.handle_ = nullptr; | 197 | 90.2k | } | 198 | 90.2k | } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>&&) Line | Count | Source | 191 | 83.3k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 83.3k | if (rhs.handle_) { | 193 | 83.3k | handle_ = rhs.handle_; | 194 | 83.3k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 83.3k | call_ = rhs.call_; | 196 | 83.3k | rhs.handle_ = nullptr; | 197 | 83.3k | } | 198 | 83.3k | } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*>&&) Line | Count | Source | 191 | 27.7k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 27.7k | if (rhs.handle_) { | 193 | 0 | handle_ = rhs.handle_; | 194 | 0 | handle_(action::move, &storage_, &rhs.storage_); | 195 | 0 | call_ = rhs.call_; | 196 | 0 | rhs.handle_ = nullptr; | 197 | 0 | } | 198 | 27.7k | } |
ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>&&) Line | Count | Source | 191 | 4.44k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 4.44k | if (rhs.handle_) { | 193 | 4.44k | handle_ = rhs.handle_; | 194 | 4.44k | handle_(action::move, &storage_, &rhs.storage_); | 195 | 4.44k | call_ = rhs.call_; | 196 | 4.44k | rhs.handle_ = nullptr; | 197 | 4.44k | } | 198 | 4.44k | } |
ofats::any_detail::any_invocable_impl<void, false, char const*>::any_invocable_impl(ofats::any_detail::any_invocable_impl<void, false, char const*>&&) Line | Count | Source | 191 | 6.94k | any_invocable_impl(any_invocable_impl&& rhs) noexcept { | 192 | 6.94k | if (rhs.handle_) { | 193 | 0 | handle_ = rhs.handle_; | 194 | 0 | handle_(action::move, &storage_, &rhs.storage_); | 195 | 0 | call_ = rhs.call_; | 196 | 0 | rhs.handle_ = nullptr; | 197 | 0 | } | 198 | 6.94k | } |
|
199 | | |
200 | 126k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { |
201 | 126k | any_invocable_impl{std::move(rhs)}.swap(*this); |
202 | 126k | return *this; |
203 | 126k | } Unexecuted instantiation: ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::operator=(ofats::any_detail::any_invocable_impl<bool, false, unsigned long>&&) EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::operator=(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>&&) Line | Count | Source | 200 | 27.7k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 27.7k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 27.7k | return *this; | 203 | 27.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::operator=(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>&&) Line | Count | Source | 200 | 27.7k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 27.7k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 27.7k | return *this; | 203 | 27.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::operator=(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>&&) Line | Count | Source | 200 | 13.8k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 13.8k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 13.8k | return *this; | 203 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::operator=(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >&&) Line | Count | Source | 200 | 13.8k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 13.8k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 13.8k | return *this; | 203 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::operator=(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >&&) Line | Count | Source | 200 | 27.7k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 27.7k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 27.7k | return *this; | 203 | 27.7k | } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::operator=(ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>&&) ofats::any_detail::any_invocable_impl<void, false>::operator=(ofats::any_detail::any_invocable_impl<void, false>&&) Line | Count | Source | 200 | 4.44k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 4.44k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 4.44k | return *this; | 203 | 4.44k | } |
ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::operator=(ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>&&) Line | Count | Source | 200 | 4.44k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 4.44k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 4.44k | return *this; | 203 | 4.44k | } |
ofats::any_detail::any_invocable_impl<void, false, char const*>::operator=(ofats::any_detail::any_invocable_impl<void, false, char const*>&&) Line | Count | Source | 200 | 6.94k | any_invocable_impl& operator=(any_invocable_impl&& rhs) noexcept { | 201 | 6.94k | any_invocable_impl{std::move(rhs)}.swap(*this); | 202 | 6.94k | return *this; | 203 | 6.94k | } |
|
204 | | any_invocable_impl& operator=(std::nullptr_t) noexcept { |
205 | | destroy(); |
206 | | return *this; |
207 | | } |
208 | | |
209 | 5.64M | ~any_invocable_impl() { destroy(); } ofats::any_detail::any_invocable_impl<void, false, us_listen_socket_t*>::~any_invocable_impl() Line | Count | Source | 209 | 6.94k | ~any_invocable_impl() { destroy(); } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::~any_invocable_impl() Line | Count | Source | 209 | 69.4k | ~any_invocable_impl() { destroy(); } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::~any_invocable_impl() Line | Count | Source | 209 | 69.4k | ~any_invocable_impl() { destroy(); } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::~any_invocable_impl() Line | Count | Source | 209 | 138k | ~any_invocable_impl() { destroy(); } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::~any_invocable_impl() Line | Count | Source | 209 | 138k | ~any_invocable_impl() { destroy(); } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::~any_invocable_impl() Line | Count | Source | 209 | 138k | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*>::~any_invocable_impl() Line | Count | Source | 209 | 41.6k | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::~any_invocable_impl() Line | Count | Source | 209 | 124k | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<void, false>::~any_invocable_impl() Line | Count | Source | 209 | 1.51M | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>::~any_invocable_impl() Line | Count | Source | 209 | 27.7k | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<void, false, char const*>::~any_invocable_impl() Line | Count | Source | 209 | 20.8k | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::~any_invocable_impl() Line | Count | Source | 209 | 131k | ~any_invocable_impl() { destroy(); } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, int>::~any_invocable_impl() ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::~any_invocable_impl() Line | Count | Source | 209 | 1.38M | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::~any_invocable_impl() Line | Count | Source | 209 | 1.43M | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<void*, false, void*, uWS::HttpRequest*>::~any_invocable_impl() Line | Count | Source | 209 | 203k | ~any_invocable_impl() { destroy(); } |
ofats::any_detail::any_invocable_impl<void*, false, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::~any_invocable_impl() Line | Count | Source | 209 | 203k | ~any_invocable_impl() { destroy(); } |
|
210 | | |
211 | 305k | void swap(any_invocable_impl& rhs) noexcept { |
212 | 305k | if (handle_) { |
213 | 50.5k | if (rhs.handle_) { |
214 | 0 | storage tmp; |
215 | 0 | handle_(action::move, &tmp, &storage_); |
216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); |
217 | 0 | handle_(action::move, &rhs.storage_, &tmp); |
218 | 0 | std::swap(handle_, rhs.handle_); |
219 | 0 | std::swap(call_, rhs.call_); |
220 | 50.5k | } else { |
221 | 50.5k | rhs.swap(*this); |
222 | 50.5k | } |
223 | 254k | } else if (rhs.handle_) { |
224 | 53.4k | rhs.handle_(action::move, &storage_, &rhs.storage_); |
225 | 53.4k | handle_ = rhs.handle_; |
226 | 53.4k | call_ = rhs.call_; |
227 | 53.4k | rhs.handle_ = nullptr; |
228 | 53.4k | } |
229 | 305k | } ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::swap(ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>&) Line | Count | Source | 211 | 10.3k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 10.3k | if (handle_) { | 213 | 4.44k | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 4.44k | } else { | 221 | 4.44k | rhs.swap(*this); | 222 | 4.44k | } | 223 | 5.88k | } else if (rhs.handle_) { | 224 | 5.88k | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 5.88k | handle_ = rhs.handle_; | 226 | 5.88k | call_ = rhs.call_; | 227 | 5.88k | rhs.handle_ = nullptr; | 228 | 5.88k | } | 229 | 10.3k | } |
ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::swap(ofats::any_detail::any_invocable_impl<bool, false, unsigned long>&) Line | Count | Source | 211 | 63.2k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 63.2k | if (handle_) { | 213 | 0 | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 0 | } else { | 221 | 0 | rhs.swap(*this); | 222 | 0 | } | 223 | 63.2k | } else if (rhs.handle_) { | 224 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 0 | handle_ = rhs.handle_; | 226 | 0 | call_ = rhs.call_; | 227 | 0 | rhs.handle_ = nullptr; | 228 | 0 | } | 229 | 63.2k | } |
ofats::any_detail::any_invocable_impl<void, false>::swap(ofats::any_detail::any_invocable_impl<void, false>&) Line | Count | Source | 211 | 72.1k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 72.1k | if (handle_) { | 213 | 4.44k | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 4.44k | } else { | 221 | 4.44k | rhs.swap(*this); | 222 | 4.44k | } | 223 | 67.7k | } else if (rhs.handle_) { | 224 | 5.88k | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 5.88k | handle_ = rhs.handle_; | 226 | 5.88k | call_ = rhs.call_; | 227 | 5.88k | rhs.handle_ = nullptr; | 228 | 5.88k | } | 229 | 72.1k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::swap(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>&) Line | Count | Source | 211 | 41.6k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 41.6k | if (handle_) { | 213 | 13.8k | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 13.8k | } else { | 221 | 13.8k | rhs.swap(*this); | 222 | 13.8k | } | 223 | 27.7k | } else if (rhs.handle_) { | 224 | 13.8k | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 13.8k | handle_ = rhs.handle_; | 226 | 13.8k | call_ = rhs.call_; | 227 | 13.8k | rhs.handle_ = nullptr; | 228 | 13.8k | } | 229 | 41.6k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::swap(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>&) Line | Count | Source | 211 | 34.7k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 34.7k | if (handle_) { | 213 | 6.94k | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 6.94k | } else { | 221 | 6.94k | rhs.swap(*this); | 222 | 6.94k | } | 223 | 27.7k | } else if (rhs.handle_) { | 224 | 6.94k | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 6.94k | handle_ = rhs.handle_; | 226 | 6.94k | call_ = rhs.call_; | 227 | 6.94k | rhs.handle_ = nullptr; | 228 | 6.94k | } | 229 | 34.7k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::swap(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>&) Line | Count | Source | 211 | 13.8k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 13.8k | if (handle_) { | 213 | 0 | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 0 | } else { | 221 | 0 | rhs.swap(*this); | 222 | 0 | } | 223 | 13.8k | } else if (rhs.handle_) { | 224 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 0 | handle_ = rhs.handle_; | 226 | 0 | call_ = rhs.call_; | 227 | 0 | rhs.handle_ = nullptr; | 228 | 0 | } | 229 | 13.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::swap(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >&) Line | Count | Source | 211 | 20.8k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 20.8k | if (handle_) { | 213 | 6.94k | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 6.94k | } else { | 221 | 6.94k | rhs.swap(*this); | 222 | 6.94k | } | 223 | 13.8k | } else if (rhs.handle_) { | 224 | 6.94k | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 6.94k | handle_ = rhs.handle_; | 226 | 6.94k | call_ = rhs.call_; | 227 | 6.94k | rhs.handle_ = nullptr; | 228 | 6.94k | } | 229 | 20.8k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::swap(ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >&) Line | Count | Source | 211 | 41.6k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 41.6k | if (handle_) { | 213 | 13.8k | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 13.8k | } else { | 221 | 13.8k | rhs.swap(*this); | 222 | 13.8k | } | 223 | 27.7k | } else if (rhs.handle_) { | 224 | 13.8k | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 13.8k | handle_ = rhs.handle_; | 226 | 13.8k | call_ = rhs.call_; | 227 | 13.8k | rhs.handle_ = nullptr; | 228 | 13.8k | } | 229 | 41.6k | } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::swap(ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>&) ofats::any_detail::any_invocable_impl<void, false, char const*>::swap(ofats::any_detail::any_invocable_impl<void, false, char const*>&) Line | Count | Source | 211 | 6.94k | void swap(any_invocable_impl& rhs) noexcept { | 212 | 6.94k | if (handle_) { | 213 | 0 | if (rhs.handle_) { | 214 | 0 | storage tmp; | 215 | 0 | handle_(action::move, &tmp, &storage_); | 216 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 217 | 0 | handle_(action::move, &rhs.storage_, &tmp); | 218 | 0 | std::swap(handle_, rhs.handle_); | 219 | 0 | std::swap(call_, rhs.call_); | 220 | 0 | } else { | 221 | 0 | rhs.swap(*this); | 222 | 0 | } | 223 | 6.94k | } else if (rhs.handle_) { | 224 | 0 | rhs.handle_(action::move, &storage_, &rhs.storage_); | 225 | 0 | handle_ = rhs.handle_; | 226 | 0 | call_ = rhs.call_; | 227 | 0 | rhs.handle_ = nullptr; | 228 | 0 | } | 229 | 6.94k | } |
|
230 | | |
231 | 1.61M | explicit operator bool() const noexcept { return handle_ != nullptr; } ofats::any_detail::any_invocable_impl<void, false>::operator bool() const Line | Count | Source | 231 | 1.33M | explicit operator bool() const noexcept { return handle_ != nullptr; } |
ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::operator bool() const Line | Count | Source | 231 | 59.4k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::operator bool() const Line | Count | Source | 231 | 32.1k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, int>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::operator bool() const Unexecuted instantiation: EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::operator bool() const EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::operator bool() const Line | Count | Source | 231 | 40.4k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::operator bool() const Line | Count | Source | 231 | 12.9k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::operator bool() const Line | Count | Source | 231 | 9.33k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::operator bool() const Line | Count | Source | 231 | 44.8k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::operator bool() const Line | Count | Source | 231 | 41.6k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*>::operator bool() const Line | Count | Source | 231 | 40.4k | explicit operator bool() const noexcept { return handle_ != nullptr; } |
|
232 | | |
233 | | protected: |
234 | | template <class F, class... Args> |
235 | 587k | void create(Args&&... args) { |
236 | 587k | using hdl = handler<F>; |
237 | 587k | hdl::create(storage_, std::forward<Args>(args)...); |
238 | 587k | handle_ = &hdl::handle; |
239 | 587k | call_ = &hdl::call; |
240 | 587k | } void ofats::any_detail::any_invocable_impl<void*, false, void*, uWS::HttpRequest*>::create<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}, {lambda(us_socket_t*, char*, int)#1}>({lambda(us_socket_t*, char*, int)#1}&&) Line | Count | Source | 235 | 203k | void create(Args&&... args) { | 236 | 203k | using hdl = handler<F>; | 237 | 203k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 203k | handle_ = &hdl::handle; | 239 | 203k | call_ = &hdl::call; | 240 | 203k | } |
void ofats::any_detail::any_invocable_impl<void*, false, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::create<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}, {lambda(us_socket_t*, char*, int)#1}>({lambda(us_socket_t*, char*, int)#1}&&) Line | Count | Source | 235 | 203k | void create(Args&&... args) { | 236 | 203k | using hdl = handler<F>; | 237 | 203k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 203k | handle_ = &hdl::handle; | 239 | 203k | call_ = &hdl::call; | 240 | 203k | } |
Unexecuted instantiation: void ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::create<uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}, {lambda(unsigned long)#1}>({lambda(unsigned long)#1}&&) void ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::create<uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}, {lambda(auto:1*, auto:2*)#1}>({lambda(auto:1*, auto:2*)#1}&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>::create<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}, {lambda(uWS::Loop*)#1}>({lambda(uWS::Loop*)#1}&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>::create<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}, {lambda(uWS::Loop*)#2}>({lambda(uWS::Loop*)#2}&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false>::create<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}, {lambda()#1}>({lambda()#1}&&) Line | Count | Source | 235 | 13.8k | void create(Args&&... args) { | 236 | 13.8k | using hdl = handler<F>; | 237 | 13.8k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 13.8k | handle_ = &hdl::handle; | 239 | 13.8k | call_ = &hdl::call; | 240 | 13.8k | } |
void ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::create<uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}, {lambda(auto:1*)#1}>({lambda(auto:1*)#1}&&) Line | Count | Source | 235 | 41.6k | void create(Args&&... args) { | 236 | 41.6k | using hdl = handler<F>; | 237 | 41.6k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 41.6k | handle_ = &hdl::handle; | 239 | 41.6k | call_ = &hdl::call; | 240 | 41.6k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::create<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}, {lambda(auto:1*, auto:2*)#1}>({lambda(auto:1*, auto:2*)#1}&&) Line | Count | Source | 235 | 13.8k | void create(Args&&... args) { | 236 | 13.8k | using hdl = handler<F>; | 237 | 13.8k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 13.8k | handle_ = &hdl::handle; | 239 | 13.8k | call_ = &hdl::call; | 240 | 13.8k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::create<test()::$_0, test()::$_0>(test()::$_0&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::create<test()::$_1, test()::$_1>(test()::$_1&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false>::create<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}, {lambda()#1}>({lambda()#1}&&) Line | Count | Source | 235 | 4.44k | void create(Args&&... args) { | 236 | 4.44k | using hdl = handler<F>; | 237 | 4.44k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 4.44k | handle_ = &hdl::handle; | 239 | 4.44k | call_ = &hdl::call; | 240 | 4.44k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false>::create<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}, {lambda()#1}>({lambda()#1}&&) Line | Count | Source | 235 | 3.00k | void create(Args&&... args) { | 236 | 3.00k | using hdl = handler<F>; | 237 | 3.00k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 3.00k | handle_ = &hdl::handle; | 239 | 3.00k | call_ = &hdl::call; | 240 | 3.00k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::create<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}, {lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>({lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}&&) Line | Count | Source | 235 | 4.44k | void create(Args&&... args) { | 236 | 4.44k | using hdl = handler<F>; | 237 | 4.44k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 4.44k | handle_ = &hdl::handle; | 239 | 4.44k | call_ = &hdl::call; | 240 | 4.44k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false>::create<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}, {lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}>({lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}&&) Line | Count | Source | 235 | 1.43k | void create(Args&&... args) { | 236 | 1.43k | using hdl = handler<F>; | 237 | 1.43k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 1.43k | handle_ = &hdl::handle; | 239 | 1.43k | call_ = &hdl::call; | 240 | 1.43k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::create<test()::$_2, test()::$_2>(test()::$_2&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::create<test()::$_3, test()::$_3>(test()::$_3&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::create<test()::$_4, test()::$_4>(test()::$_4&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::create<test()::$_5, test()::$_5>(test()::$_5&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::create<test()::$_6, test()::$_6>(test()::$_6&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false>::create<test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}, {lambda()#1}>({lambda()#1}&&) Line | Count | Source | 235 | 6.97k | void create(Args&&... args) { | 236 | 6.97k | using hdl = handler<F>; | 237 | 6.97k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.97k | handle_ = &hdl::handle; | 239 | 6.97k | call_ = &hdl::call; | 240 | 6.97k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::create<test()::$_7, test()::$_7>(test()::$_7&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::create<test()::$_8, test()::$_8>(test()::$_8&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
EpollHelloWorld.cpp:void ofats::any_detail::any_invocable_impl<void, false, us_listen_socket_t*>::create<test()::$_9, test()::$_9>(test()::$_9&&) Line | Count | Source | 235 | 6.94k | void create(Args&&... args) { | 236 | 6.94k | using hdl = handler<F>; | 237 | 6.94k | hdl::create(storage_, std::forward<Args>(args)...); | 238 | 6.94k | handle_ = &hdl::handle; | 239 | 6.94k | call_ = &hdl::call; | 240 | 6.94k | } |
|
241 | | |
242 | 5.64M | void destroy() noexcept { |
243 | 5.64M | if (handle_) { |
244 | 587k | handle_(action::destroy, &storage_, nullptr); |
245 | 587k | handle_ = nullptr; |
246 | 587k | } |
247 | 5.64M | } ofats::any_detail::any_invocable_impl<void, false, us_listen_socket_t*>::destroy() Line | Count | Source | 242 | 6.94k | void destroy() noexcept { | 243 | 6.94k | if (handle_) { | 244 | 6.94k | handle_(action::destroy, &storage_, nullptr); | 245 | 6.94k | handle_ = nullptr; | 246 | 6.94k | } | 247 | 6.94k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::destroy() Line | Count | Source | 242 | 69.4k | void destroy() noexcept { | 243 | 69.4k | if (handle_) { | 244 | 6.94k | handle_(action::destroy, &storage_, nullptr); | 245 | 6.94k | handle_ = nullptr; | 246 | 6.94k | } | 247 | 69.4k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::destroy() Line | Count | Source | 242 | 69.4k | void destroy() noexcept { | 243 | 69.4k | if (handle_) { | 244 | 0 | handle_(action::destroy, &storage_, nullptr); | 245 | 0 | handle_ = nullptr; | 246 | 0 | } | 247 | 69.4k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::destroy() Line | Count | Source | 242 | 138k | void destroy() noexcept { | 243 | 138k | if (handle_) { | 244 | 13.8k | handle_(action::destroy, &storage_, nullptr); | 245 | 13.8k | handle_ = nullptr; | 246 | 13.8k | } | 247 | 138k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::destroy() Line | Count | Source | 242 | 138k | void destroy() noexcept { | 243 | 138k | if (handle_) { | 244 | 13.8k | handle_(action::destroy, &storage_, nullptr); | 245 | 13.8k | handle_ = nullptr; | 246 | 13.8k | } | 247 | 138k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::destroy() Line | Count | Source | 242 | 138k | void destroy() noexcept { | 243 | 138k | if (handle_) { | 244 | 6.94k | handle_(action::destroy, &storage_, nullptr); | 245 | 6.94k | handle_ = nullptr; | 246 | 6.94k | } | 247 | 138k | } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*>::destroy() Line | Count | Source | 242 | 41.6k | void destroy() noexcept { | 243 | 41.6k | if (handle_) { | 244 | 0 | handle_(action::destroy, &storage_, nullptr); | 245 | 0 | handle_ = nullptr; | 246 | 0 | } | 247 | 41.6k | } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::destroy() Line | Count | Source | 242 | 124k | void destroy() noexcept { | 243 | 124k | if (handle_) { | 244 | 41.6k | handle_(action::destroy, &storage_, nullptr); | 245 | 41.6k | handle_ = nullptr; | 246 | 41.6k | } | 247 | 124k | } |
ofats::any_detail::any_invocable_impl<void, false>::destroy() Line | Count | Source | 242 | 1.51M | void destroy() noexcept { | 243 | 1.51M | if (handle_) { | 244 | 29.7k | handle_(action::destroy, &storage_, nullptr); | 245 | 29.7k | handle_ = nullptr; | 246 | 29.7k | } | 247 | 1.51M | } |
ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>::destroy() Line | Count | Source | 242 | 27.7k | void destroy() noexcept { | 243 | 27.7k | if (handle_) { | 244 | 13.8k | handle_(action::destroy, &storage_, nullptr); | 245 | 13.8k | handle_ = nullptr; | 246 | 13.8k | } | 247 | 27.7k | } |
ofats::any_detail::any_invocable_impl<void, false, char const*>::destroy() Line | Count | Source | 242 | 20.8k | void destroy() noexcept { | 243 | 20.8k | if (handle_) { | 244 | 0 | handle_(action::destroy, &storage_, nullptr); | 245 | 0 | handle_ = nullptr; | 246 | 0 | } | 247 | 20.8k | } |
ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::destroy() Line | Count | Source | 242 | 131k | void destroy() noexcept { | 243 | 131k | if (handle_) { | 244 | 41.6k | handle_(action::destroy, &storage_, nullptr); | 245 | 41.6k | handle_ = nullptr; | 246 | 41.6k | } | 247 | 131k | } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, int>::destroy() ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::destroy() Line | Count | Source | 242 | 1.38M | void destroy() noexcept { | 243 | 1.38M | if (handle_) { | 244 | 4.44k | handle_(action::destroy, &storage_, nullptr); | 245 | 4.44k | handle_ = nullptr; | 246 | 4.44k | } | 247 | 1.38M | } |
ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::destroy() Line | Count | Source | 242 | 1.43M | void destroy() noexcept { | 243 | 1.43M | if (handle_) { | 244 | 0 | handle_(action::destroy, &storage_, nullptr); | 245 | 0 | handle_ = nullptr; | 246 | 0 | } | 247 | 1.43M | } |
ofats::any_detail::any_invocable_impl<void*, false, void*, uWS::HttpRequest*>::destroy() Line | Count | Source | 242 | 203k | void destroy() noexcept { | 243 | 203k | if (handle_) { | 244 | 203k | handle_(action::destroy, &storage_, nullptr); | 245 | 203k | handle_ = nullptr; | 246 | 203k | } | 247 | 203k | } |
ofats::any_detail::any_invocable_impl<void*, false, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::destroy() Line | Count | Source | 242 | 203k | void destroy() noexcept { | 243 | 203k | if (handle_) { | 244 | 203k | handle_(action::destroy, &storage_, nullptr); | 245 | 203k | handle_ = nullptr; | 246 | 203k | } | 247 | 203k | } |
|
248 | | |
249 | 7.18M | R call(ArgTypes... args) noexcept(is_noexcept) { |
250 | 7.18M | return call_(storage_, std::forward<ArgTypes>(args)...); |
251 | 7.18M | } ofats::any_detail::any_invocable_impl<void, false>::call() Line | Count | Source | 249 | 26.2k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 26.2k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 26.2k | } |
ofats::any_detail::any_invocable_impl<void, false, uWS::Loop*>::call(uWS::Loop*) Line | Count | Source | 249 | 6.73M | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 6.73M | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 6.73M | } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, int>::call(uWS::HttpResponse<false>*, int) ofats::any_detail::any_invocable_impl<void*, false, void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::call(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) Line | Count | Source | 249 | 55.0k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 55.0k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 55.0k | } |
ofats::any_detail::any_invocable_impl<void*, false, void*, uWS::HttpRequest*>::call(void*, uWS::HttpRequest*) Line | Count | Source | 249 | 67.8k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 67.8k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 67.8k | } |
ofats::any_detail::any_invocable_impl<bool, false, uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*>::call(uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*) Line | Count | Source | 249 | 79.4k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 79.4k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 79.4k | } |
ofats::any_detail::any_invocable_impl<void, false, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool>::call(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) Line | Count | Source | 249 | 33.5k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 33.5k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 33.5k | } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<bool, false, unsigned long>::call(unsigned long) Unexecuted instantiation: ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, int>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::call(uWS::WebSocket<false, true, int>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode) Unexecuted instantiation: EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int>::call(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int) EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::call(uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> >) Line | Count | Source | 249 | 39.0k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 39.0k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 39.0k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode>::call(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode) Line | Count | Source | 249 | 10.4k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 10.4k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 10.4k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::call(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) Line | Count | Source | 249 | 8.19k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 8.19k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 8.19k | } |
EpollHelloWorld.cpp:ofats::any_detail::any_invocable_impl<void, false, uWS::WebSocket<false, true, test()::PerSocketData>*>::call(uWS::WebSocket<false, true, test()::PerSocketData>*) Line | Count | Source | 249 | 43.1k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 43.1k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 43.1k | } |
ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*>::call(uWS::HttpResponse<false>*, uWS::HttpRequest*) Line | Count | Source | 249 | 79.4k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 79.4k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 79.4k | } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<void, false, uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*>::call(uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*) ofats::any_detail::any_invocable_impl<void, false, us_listen_socket_t*>::call(us_listen_socket_t*) Line | Count | Source | 249 | 6.94k | R call(ArgTypes... args) noexcept(is_noexcept) { | 250 | 6.94k | return call_(storage_, std::forward<ArgTypes>(args)...); | 251 | 6.94k | } |
Unexecuted instantiation: ofats::any_detail::any_invocable_impl<void, false, char const*>::call(char const*) |
252 | | |
253 | | friend bool operator==(const any_invocable_impl& f, std::nullptr_t) noexcept { |
254 | | return !f; |
255 | | } |
256 | | friend bool operator==(std::nullptr_t, const any_invocable_impl& f) noexcept { |
257 | | return !f; |
258 | | } |
259 | | friend bool operator!=(const any_invocable_impl& f, std::nullptr_t) noexcept { |
260 | | return static_cast<bool>(f); |
261 | | } |
262 | | friend bool operator!=(std::nullptr_t, const any_invocable_impl& f) noexcept { |
263 | | return static_cast<bool>(f); |
264 | | } |
265 | | |
266 | | friend void swap(any_invocable_impl& lhs, any_invocable_impl& rhs) noexcept { |
267 | | lhs.swap(rhs); |
268 | | } |
269 | | |
270 | | private: |
271 | | storage storage_; |
272 | | handle_func handle_ = nullptr; |
273 | | call_func call_; |
274 | | }; |
275 | | |
276 | | template <class T> |
277 | | using remove_cvref_t = std::remove_cv_t<std::remove_reference_t<T>>; |
278 | | |
279 | | template <class AI, class F, bool noex, class R, class FCall, class... ArgTypes> |
280 | | using can_convert = std::conjunction< |
281 | | std::negation<std::is_same<remove_cvref_t<F>, AI>>, |
282 | | std::negation<any_detail::is_in_place_type<remove_cvref_t<F>>>, |
283 | | std::is_invocable_r<R, FCall, ArgTypes...>, |
284 | | std::bool_constant<(!noex || |
285 | | std::is_nothrow_invocable_r_v<R, FCall, ArgTypes...>)>, |
286 | | std::is_constructible<std::decay_t<F>, F>>; |
287 | | |
288 | | } // namespace any_detail |
289 | | |
290 | | template <class Signature> |
291 | | class any_invocable; |
292 | | |
293 | | #define __OFATS_ANY_INVOCABLE(cv, ref, noex, inv_quals) \ |
294 | | template <class R, class... ArgTypes> \ |
295 | | class any_invocable<R(ArgTypes...) cv ref noexcept(noex)> \ |
296 | | : public any_detail::any_invocable_impl<R, noex, ArgTypes...> { \ |
297 | | using base_type = any_detail::any_invocable_impl<R, noex, ArgTypes...>; \ |
298 | | \ |
299 | | public: \ |
300 | | using base_type::base_type; \ |
301 | | \ |
302 | | template < \ |
303 | | class F, \ |
304 | | class = std::enable_if_t<any_detail::can_convert< \ |
305 | | any_invocable, F, noex, R, F inv_quals, ArgTypes...>::value>> \ |
306 | 587k | any_invocable(F&& f) { \ |
307 | 587k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ |
308 | 587k | } \ ofats::any_invocable<void* (void*, uWS::HttpRequest*)>::any_invocable<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}, void>(uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, uWS::HttpRequest*)#1}&&) Line | Count | Source | 306 | 203k | any_invocable(F&& f) { \ | 307 | 203k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 203k | } \ |
ofats::any_invocable<void* (void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)>::any_invocable<uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}, void>(uWS::HttpContext<false>::init()::{lambda(us_socket_t*, char*, int)#1}::operator()(us_socket_t*, char*, int) const::{lambda(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}&&) Line | Count | Source | 306 | 203k | any_invocable(F&& f) { \ | 307 | 203k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 203k | } \ |
Unexecuted instantiation: ofats::any_invocable<bool (unsigned long)>::any_invocable<uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}, void>(uWS::HttpResponseData<false>::callOnWritable(unsigned long)::{lambda(unsigned long)#1}&&) ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>::any_invocable<uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}, void>(uWS::TemplatedApp<false>::TemplatedApp(uWS::SocketContextOptions)::{lambda(auto:1*, auto:2*)#1}&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::Loop*)>::any_invocable<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}, void>(uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#1}&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::Loop*)>::any_invocable<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}, void>(uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(uWS::Loop*)#2}&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void ()>::any_invocable<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}, void>(uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda()#1}&&) Line | Count | Source | 306 | 13.8k | any_invocable(F&& f) { \ | 307 | 13.8k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 13.8k | } \ |
ofats::any_invocable<bool (uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*)>::any_invocable<uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}, void>(uWS::HttpContext<false>::onHttp(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>&&, bool)::{lambda(auto:1*)#1}&&) Line | Count | Source | 306 | 41.6k | any_invocable(F&& f) { \ | 307 | 41.6k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 41.6k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>::any_invocable<uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}, void>(uWS::TemplatedApp<false>::ws<test()::PerSocketData>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, uWS::TemplatedApp<false>::WebSocketBehavior<test()::PerSocketData>&&)::{lambda(auto:1*, auto:2*)#1}&&) Line | Count | Source | 306 | 13.8k | any_invocable(F&& f) { \ | 307 | 13.8k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 13.8k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>::any_invocable<test()::$_0, void>(test()::$_0&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>::any_invocable<test()::$_1, void>(test()::$_1&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void ()>::any_invocable<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}, void>(test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}&&) Line | Count | Source | 306 | 4.44k | any_invocable(F&& f) { \ | 307 | 4.44k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 4.44k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void ()>::any_invocable<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}, void>(test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda()#1}::operator()() const::{lambda()#1}&&) Line | Count | Source | 306 | 3.00k | any_invocable(F&& f) { \ | 307 | 3.00k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 3.00k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)>::any_invocable<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}, void>(test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}&&) Line | Count | Source | 306 | 4.44k | any_invocable(F&& f) { \ | 307 | 4.44k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 4.44k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void ()>::any_invocable<test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}, void>(test()::$_1::operator()<uWS::HttpResponse<false>, uWS::HttpRequest>(uWS::HttpResponse<false>*, uWS::HttpRequest*) const::{lambda(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)#1}::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) const::{lambda()#1}&&) Line | Count | Source | 306 | 1.43k | any_invocable(F&& f) { \ | 307 | 1.43k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 1.43k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>::any_invocable<test()::$_2, void>(test()::$_2&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*)>::any_invocable<test()::$_3, void>(test()::$_3&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode)>::any_invocable<test()::$_4, void>(test()::$_4&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*)>::any_invocable<test()::$_5, void>(test()::$_5&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >)>::any_invocable<test()::$_6, void>(test()::$_6&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void ()>::any_invocable<test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}, void>(test()::$_6::operator()<uWS::WebSocket<false, true, test()::PerSocketData> >(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) const::{lambda()#1}&&) Line | Count | Source | 306 | 6.97k | any_invocable(F&& f) { \ | 307 | 6.97k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.97k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >)>::any_invocable<test()::$_7, void>(test()::$_7&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> >)>::any_invocable<test()::$_8, void>(test()::$_8&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (us_listen_socket_t*)>::any_invocable<test()::$_9, void>(test()::$_9&&) Line | Count | Source | 306 | 6.94k | any_invocable(F&& f) { \ | 307 | 6.94k | base_type::template create<std::decay_t<F>>(std::forward<F>(f)); \ | 308 | 6.94k | } \ |
|
309 | | \ |
310 | | template <class T, class... Args, class VT = std::decay_t<T>, \ |
311 | | class = std::enable_if_t< \ |
312 | | std::is_move_constructible_v<VT> && \ |
313 | | std::is_constructible_v<VT, Args...> && \ |
314 | | std::is_invocable_r_v<R, VT inv_quals, ArgTypes...> && \ |
315 | | (!noex || std::is_nothrow_invocable_r_v<R, VT inv_quals, \ |
316 | | ArgTypes...>)>> \ |
317 | | explicit any_invocable(std::in_place_type_t<T>, Args&&... args) { \ |
318 | | base_type::template create<VT>(std::forward<Args>(args)...); \ |
319 | | } \ |
320 | | \ |
321 | | template < \ |
322 | | class T, class U, class... Args, class VT = std::decay_t<T>, \ |
323 | | class = std::enable_if_t< \ |
324 | | std::is_move_constructible_v<VT> && \ |
325 | | std::is_constructible_v<VT, std::initializer_list<U>&, Args...> && \ |
326 | | std::is_invocable_r_v<R, VT inv_quals, ArgTypes...> && \ |
327 | | (!noex || \ |
328 | | std::is_nothrow_invocable_r_v<R, VT inv_quals, ArgTypes...>)>> \ |
329 | | explicit any_invocable(std::in_place_type_t<T>, \ |
330 | | std::initializer_list<U> il, Args&&... args) { \ |
331 | | base_type::template create<VT>(il, std::forward<Args>(args)...); \ |
332 | | } \ |
333 | | \ |
334 | | template <class F, class FDec = std::decay_t<F>> \ |
335 | | std::enable_if_t<!std::is_same_v<FDec, any_invocable> && \ |
336 | | std::is_move_constructible_v<FDec>, \ |
337 | | any_invocable&> \ |
338 | 128k | operator=(F&& f) { \ |
339 | 128k | any_invocable{std::forward<F>(f)}.swap(*this); \ |
340 | 128k | return *this; \ |
341 | 128k | } \ _ZN5ofats13any_invocableIFvNSt3__117basic_string_viewIcNS1_11char_traitsIcEEEEbEEaSIDnDnEENS1_9enable_ifIXaantsr3stdE9is_same_vIT0_S7_Esr3stdE23is_move_constructible_vISA_EERS7_E4typeEOT_ Line | Count | Source | 338 | 1.43k | operator=(F&& f) { \ | 339 | 1.43k | any_invocable{std::forward<F>(f)}.swap(*this); \ | 340 | 1.43k | return *this; \ | 341 | 1.43k | } \ |
Unexecuted instantiation: _ZN5ofats13any_invocableIFbmEEaSIZN3uWS16HttpResponseDataILb0EE14callOnWritableEmEUlmE_S7_EENSt3__19enable_ifIXaantsr3stdE9is_same_vIT0_S2_Esr3stdE23is_move_constructible_vISA_EERS2_E4typeEOT_ _ZN5ofats13any_invocableIFvvEEaSIDnDnEENSt3__19enable_ifIXaantsr3stdE9is_same_vIT0_S2_Esr3stdE23is_move_constructible_vIS6_EERS2_E4typeEOT_ Line | Count | Source | 338 | 63.2k | operator=(F&& f) { \ | 339 | 63.2k | any_invocable{std::forward<F>(f)}.swap(*this); \ | 340 | 63.2k | return *this; \ | 341 | 63.2k | } \ |
_ZN5ofats13any_invocableIFbmEEaSIDnDnEENSt3__19enable_ifIXaantsr3stdE9is_same_vIT0_S2_Esr3stdE23is_move_constructible_vIS6_EERS2_E4typeEOT_ Line | Count | Source | 338 | 63.2k | operator=(F&& f) { \ | 339 | 63.2k | any_invocable{std::forward<F>(f)}.swap(*this); \ | 340 | 63.2k | return *this; \ | 341 | 63.2k | } \ |
|
342 | | template <class F> \ |
343 | | any_invocable& operator=(std::reference_wrapper<F> f) { \ |
344 | | any_invocable{f}.swap(*this); \ |
345 | | return *this; \ |
346 | | } \ |
347 | | \ |
348 | 7.18M | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ |
349 | 7.18M | return base_type::call(std::forward<ArgTypes>(args)...); \ |
350 | 7.18M | } \ ofats::any_invocable<void ()>::operator()() Line | Count | Source | 348 | 26.2k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 26.2k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 26.2k | } \ |
ofats::any_invocable<void (uWS::Loop*)>::operator()(uWS::Loop*) Line | Count | Source | 348 | 6.73M | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 6.73M | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 6.73M | } \ |
Unexecuted instantiation: ofats::any_invocable<void (uWS::HttpResponse<false>*, int)>::operator()(uWS::HttpResponse<false>*, int) ofats::any_invocable<void* (void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)>::operator()(void*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) Line | Count | Source | 348 | 55.0k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 55.0k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 55.0k | } \ |
ofats::any_invocable<void* (void*, uWS::HttpRequest*)>::operator()(void*, uWS::HttpRequest*) Line | Count | Source | 348 | 67.8k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 67.8k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 67.8k | } \ |
ofats::any_invocable<bool (uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*)>::operator()(uWS::HttpRouter<uWS::HttpContextData<false>::RouterData>*) Line | Count | Source | 348 | 79.4k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 79.4k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 79.4k | } \ |
ofats::any_invocable<void (std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool)>::operator()(std::__1::basic_string_view<char, std::__1::char_traits<char> >, bool) Line | Count | Source | 348 | 33.5k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 33.5k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 33.5k | } \ |
Unexecuted instantiation: ofats::any_invocable<bool (unsigned long)>::operator()(unsigned long) Unexecuted instantiation: ofats::any_invocable<void (uWS::WebSocket<false, true, int>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode)>::operator()(uWS::WebSocket<false, true, int>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode) Unexecuted instantiation: EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int)>::operator()(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, int, int) EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> >)>::operator()(uWS::WebSocket<false, true, test()::PerSocketData>*, int, std::__1::basic_string_view<char, std::__1::char_traits<char> >) Line | Count | Source | 348 | 39.0k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 39.0k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 39.0k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode)>::operator()(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >, uWS::OpCode) Line | Count | Source | 348 | 10.4k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 10.4k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 10.4k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >)>::operator()(uWS::WebSocket<false, true, test()::PerSocketData>*, std::__1::basic_string_view<char, std::__1::char_traits<char> >) Line | Count | Source | 348 | 8.19k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 8.19k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 8.19k | } \ |
EpollHelloWorld.cpp:ofats::any_invocable<void (uWS::WebSocket<false, true, test()::PerSocketData>*)>::operator()(uWS::WebSocket<false, true, test()::PerSocketData>*) Line | Count | Source | 348 | 43.1k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 43.1k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 43.1k | } \ |
ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*)>::operator()(uWS::HttpResponse<false>*, uWS::HttpRequest*) Line | Count | Source | 348 | 79.4k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 79.4k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 79.4k | } \ |
Unexecuted instantiation: ofats::any_invocable<void (uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*)>::operator()(uWS::HttpResponse<false>*, uWS::HttpRequest*, us_socket_context_t*) ofats::any_invocable<void (us_listen_socket_t*)>::operator()(us_listen_socket_t*) Line | Count | Source | 348 | 6.94k | R operator()(ArgTypes... args) cv ref noexcept(noex) { \ | 349 | 6.94k | return base_type::call(std::forward<ArgTypes>(args)...); \ | 350 | 6.94k | } \ |
Unexecuted instantiation: ofats::any_invocable<void (char const*)>::operator()(char const*) |
351 | | }; |
352 | | |
353 | | // cv -> {`empty`, const} |
354 | | // ref -> {`empty`, &, &&} |
355 | | // noex -> {true, false} |
356 | | // inv_quals -> (is_empty(ref) ? & : ref) |
357 | | __OFATS_ANY_INVOCABLE(, , false, &) // 000 |
358 | | __OFATS_ANY_INVOCABLE(, , true, &) // 001 |
359 | | __OFATS_ANY_INVOCABLE(, &, false, &) // 010 |
360 | | __OFATS_ANY_INVOCABLE(, &, true, &) // 011 |
361 | | __OFATS_ANY_INVOCABLE(, &&, false, &&) // 020 |
362 | | __OFATS_ANY_INVOCABLE(, &&, true, &&) // 021 |
363 | | __OFATS_ANY_INVOCABLE(const, , false, const&) // 100 |
364 | | __OFATS_ANY_INVOCABLE(const, , true, const&) // 101 |
365 | | __OFATS_ANY_INVOCABLE(const, &, false, const&) // 110 |
366 | | __OFATS_ANY_INVOCABLE(const, &, true, const&) // 111 |
367 | | __OFATS_ANY_INVOCABLE(const, &&, false, const&&) // 120 |
368 | | __OFATS_ANY_INVOCABLE(const, &&, true, const&&) // 121 |
369 | | |
370 | | #undef __OFATS_ANY_INVOCABLE |
371 | | |
372 | | } // namespace ofats |
373 | | |
374 | | /* We, uWebSockets define our own type */ |
375 | | namespace uWS { |
376 | | template <class T> |
377 | | using MoveOnlyFunction = ofats::any_invocable<T>; |
378 | | } |
379 | | |
380 | | #else // !defined(__cpp_lib_move_only_function) || __cpp_lib_move_only_function < 202110L |
381 | | |
382 | | namespace uWS { |
383 | | template <class T> |
384 | | using MoveOnlyFunction = std::move_only_function<T>; |
385 | | } |
386 | | |
387 | | #endif |
388 | | |
389 | | #endif // _ANY_INVOKABLE_H_ |