1#ifndef PROTON_SCALAR_HPP
2#define PROTON_SCALAR_HPP
27#include <proton/type_compat.h>
43 template <
class T>
scalar(
const T& x) { *
this = x; }
60template<
class T> T
get(
const scalar& s) {
return internal::get<T>(s); }
72template<
class T> T
coerce(
const scalar& x) {
return internal::coerce<T>(x); }
85template<
class T> T
coerce(
scalar& x) {
return internal::coerce<T>(x); }
The type of the AMQP null value.
Definition null.hpp:38
The base class for scalar types.
Definition scalar_base.hpp:60
A holder for an instance of any scalar AMQP type.
Definition scalar.hpp:37
scalar(const T &x)
Construct from any scalar type.
Definition scalar.hpp:43
T coerce(scalar &x)
Coerce the contained value to type T.
Definition scalar.hpp:85
scalar & operator=(const T &x)
Assign from any scalar type.
Definition scalar.hpp:46
T coerce(const scalar &x)
Coerce the contained value to type T.
Definition scalar.hpp:72
T get(const scalar &s)
Get a contained value of type T.
Definition scalar.hpp:60
scalar()=default
Create an empty scalar.
void clear()
Clear the scalar, making it empty().
Definition scalar.hpp:49
The main Proton namespace.
Definition annotation_key.hpp:33
The type of the AMQP null value.
The base class for scalar types.