Qpid Proton C++  0.12.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Enumerations | Functions
types.hpp File Reference

Defines C++ types representing AMQP types. More...

#include "proton/comparable.hpp"
#include "proton/export.hpp"
#include "proton/error.hpp"
#include <proton/codec.h>
#include <proton/type_compat.h>
#include <algorithm>
#include <bitset>
#include <string>
#include <memory.h>

Go to the source code of this file.

Enumerations

enum  type_id {
  NULL_TYPE, BOOLEAN, UBYTE, BYTE,
  USHORT, SHORT, UINT, INT,
  CHAR, ULONG, LONG, TIMESTAMP,
  FLOAT, DOUBLE, DECIMAL32, DECIMAL64,
  DECIMAL128, UUID, BINARY, STRING,
  SYMBOL, DESCRIBED, ARRAY, LIST,
  MAP
}
 An identifier for AMQP types.
 

Functions

std::string type_name (type_id)
 Get the name of the AMQP type.
 
std::ostream & operator<< (std::ostream &, type_id)
 Print the type name. More...
 
Type test functions

Attributes of a type_id value, returns same result as the corresponding std::type_traits tests for the corresponding C++ types.

bool type_id_is_scalar (type_id)
 Any scalar type.
 
bool type_id_is_signed_int (type_id)
 One of the signed integer types: BYTE, SHORT, INT or LONG.
 
bool type_id_is_unsigned_int (type_id)
 One of the unsigned integer types: UBYTE, USHORT, UINT or ULONG.
 
bool type_id_is_integral (type_id)
 Any of the signed or unsigned integers, BOOL, CHAR or TIMESTAMP.
 
bool type_id_is_floating_point (type_id)
 A floating point type, float or double.
 
bool type_id_is_signed (type_id)
 Any signed integer, float or double. BOOL, CHAR and TIMESTAMP are not signed.
 
bool type_id_is_decimal (type_id)
 Any DECIMAL type.
 
bool type_id_is_string_like (type_id)
 STRING, SYMBOL or BINARY.
 
bool type_id_is_container (type_id)
 Container types: MAP, LIST, ARRAY or DESCRIBED.
 

Detailed Description

Defines C++ types representing AMQP types.