async_mqtt 4.1.0
Loading...
Searching...
No Matches
suback_return_code.hpp
Go to the documentation of this file.
1// Copyright Takatoshi Kondo 2022
2//
3// Distributed under the Boost Software License, Version 1.0.
4// (See accompanying file LICENSE_1_0.txt or copy at
5// http://www.boost.org/LICENSE_1_0.txt)
6
7#if !defined(ASYNC_MQTT_PACKET_SUBACK_RETURN_CODE_HPP)
8#define ASYNC_MQTT_PACKET_SUBACK_RETURN_CODE_HPP
9
10#include <cstdint>
11#include <ostream>
12
14
16
17namespace async_mqtt {
18
24enum class suback_return_code : std::uint8_t {
28 failure = 0x80,
29};
30
37 return static_cast<suback_return_code>(q);
38}
39
43constexpr
45 switch(v)
46 {
47 case suback_return_code::success_maximum_qos_0: return "success_maximum_qos_0";
48 case suback_return_code::success_maximum_qos_1: return "success_maximum_qos_1";
49 case suback_return_code::success_maximum_qos_2: return "success_maximum_qos_2";
50 case suback_return_code::failure: return "failure";
51 default: return "unknown_suback_return_code";
52 }
53}
54
59inline
60std::ostream& operator<<(std::ostream& os, suback_return_code val)
61{
62 os << suback_return_code_to_str(val);
63 return os;
64}
65
66} // namespace async_mqtt
67
68#endif // ASYNC_MQTT_PACKET_SUBACK_RETURN_CODE_HPP
Definition packet_variant.hpp:49
qos
MQTT QoS.
Definition qos.hpp:23
constexpr char const * suback_return_code_to_str(suback_return_code v)
stringize suback_return_code
Definition suback_return_code.hpp:44
constexpr suback_return_code qos_to_suback_return_code(qos q)
create suback_return_code from qos
Definition suback_return_code.hpp:36
suback_return_code
MQTT suback_return_code.
Definition suback_return_code.hpp:24
@ success_maximum_qos_1
Success with QoS1.
@ success_maximum_qos_2
Success with QoS2.
@ success_maximum_qos_0
Success with QoS0.