/src/arduinojson/src/ArduinoJson/Polyfills/utility.hpp
Line | Count | Source |
1 | | // ArduinoJson - https://arduinojson.org |
2 | | // Copyright © 2014-2025, Benoit BLANCHON |
3 | | // MIT License |
4 | | |
5 | | #pragma once |
6 | | |
7 | | #include "type_traits.hpp" |
8 | | |
9 | | ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE |
10 | | |
11 | | using nullptr_t = decltype(nullptr); |
12 | | |
13 | | template <class T> |
14 | 0 | T&& forward(remove_reference_t<T>& t) noexcept { |
15 | 0 | return static_cast<T&&>(t); |
16 | 0 | } Unexecuted instantiation: ArduinoJson::V742HB42::JsonString const& ArduinoJson::V742HB42::detail::forward<ArduinoJson::V742HB42::JsonString const&>(ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::JsonString const&>::type&) Unexecuted instantiation: ArduinoJson::V742HB42::JsonString&& ArduinoJson::V742HB42::detail::forward<ArduinoJson::V742HB42::JsonString>(ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::JsonString>::type&) Unexecuted instantiation: ArduinoJson::V742HB42::JsonString& ArduinoJson::V742HB42::detail::forward<ArduinoJson::V742HB42::JsonString&>(ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::JsonString&>::type&) |
17 | | |
18 | | template <class T> |
19 | 0 | remove_reference_t<T>&& move(T&& t) { |
20 | 0 | return static_cast<remove_reference_t<T>&&>(t); |
21 | 0 | } Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::detail::StringNode*&>::type&& ArduinoJson::V742HB42::detail::move<ArduinoJson::V742HB42::detail::StringNode*&>(ArduinoJson::V742HB42::detail::StringNode*&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>&>::type&& ArduinoJson::V742HB42::detail::move<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>&>(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>*&>::type&& ArduinoJson::V742HB42::detail::move<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>*&>(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>*&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<unsigned int&>::type&& ArduinoJson::V742HB42::detail::move<unsigned int&>(unsigned int&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>&>::type&& ArduinoJson::V742HB42::detail::move<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>&>(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>*&>::type&& ArduinoJson::V742HB42::detail::move<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>*&>(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>*&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::Allocator*&>::type&& ArduinoJson::V742HB42::detail::move<ArduinoJson::V742HB42::Allocator*&>(ArduinoJson::V742HB42::Allocator*&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<bool&>::type&& ArduinoJson::V742HB42::detail::move<bool&>(bool&) Unexecuted instantiation: ArduinoJson::V742HB42::detail::remove_reference<ArduinoJson::V742HB42::detail::VariantData&>::type&& ArduinoJson::V742HB42::detail::move<ArduinoJson::V742HB42::detail::VariantData&>(ArduinoJson::V742HB42::detail::VariantData&) |
22 | | |
23 | | // Polyfull for std::swap |
24 | | // Don't use the name "swap" because it makes calls ambiguous for types in the |
25 | | // detail namespace |
26 | | template <class T> |
27 | 0 | void swap_(T& a, T& b) { |
28 | 0 | T tmp = move(a); |
29 | 0 | a = move(b); |
30 | 0 | b = move(tmp); |
31 | 0 | } Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<ArduinoJson::V742HB42::detail::StringNode*>(ArduinoJson::V742HB42::detail::StringNode*&, ArduinoJson::V742HB42::detail::StringNode*&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData> >(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>&, ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>*>(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>*&, ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::VariantData>*&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<unsigned int>(unsigned int&, unsigned int&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue> >(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>&, ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>*>(ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>*&, ArduinoJson::V742HB42::detail::MemoryPool<ArduinoJson::V742HB42::detail::EightByteValue>*&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<ArduinoJson::V742HB42::Allocator*>(ArduinoJson::V742HB42::Allocator*&, ArduinoJson::V742HB42::Allocator*&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<bool>(bool&, bool&) Unexecuted instantiation: void ArduinoJson::V742HB42::detail::swap_<ArduinoJson::V742HB42::detail::VariantData>(ArduinoJson::V742HB42::detail::VariantData&, ArduinoJson::V742HB42::detail::VariantData&) |
32 | | |
33 | | ARDUINOJSON_END_PRIVATE_NAMESPACE |