1 #ifndef PROTON_DURATION_HPP 2 #define PROTON_DURATION_HPP 25 #include "./internal/export.hpp" 26 #include "./internal/comparable.hpp" 29 #include <proton/type_compat.h> 36 class duration :
private internal::comparable<duration> {
65 inline bool operator==(duration x, duration y) {
return x.milliseconds() == y.milliseconds(); }
67 inline duration operator+(duration x, duration y) {
return duration(x.milliseconds() + y.milliseconds()); }
68 inline duration operator-(duration x, duration y) {
return duration(x.milliseconds() - y.milliseconds()); }
69 inline duration operator*(duration d, uint64_t n) {
return duration(d.milliseconds()*n); }
70 inline duration operator*(uint64_t n, duration d) {
return d * n; }
75 #endif // PROTON_DURATION_HPP std::ostream & operator<<(std::ostream &, const binary &)
Print a binary value.
duration(numeric_type ms=0)
Construct from milliseconds.
Definition: duration.hpp:42
A span of time in milliseconds.
Definition: duration.hpp:36
static const duration IMMEDIATE
Don't wait at all.
Definition: duration.hpp:51
numeric_type milliseconds() const
Return milliseconds.
Definition: duration.hpp:48
Forward declarations for all the C++ types used by Proton to represent AMQP types.
int64_t numeric_type
Numeric type used to store milliseconds.
Definition: duration.hpp:39
static const duration SECOND
One second.
Definition: duration.hpp:52
duration & operator=(numeric_type ms)
Assign.
Definition: duration.hpp:45
static const duration MINUTE
One minute.
Definition: duration.hpp:53
The main Proton namespace.
Definition: annotation_key.hpp:30
static const duration FOREVER
Wait forever.
Definition: duration.hpp:50