Qpid Proton C++ API  0.17.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
proton Namespace Reference

The main Proton namespace. More...

Namespaces

namespace  codec
 Experimental - AMQP data encoding and decoding.
 
namespace  io
 Experimental - An SPI for multithreaded network IO.
 

Classes

class  annotation_key
 A key for use with AMQP annotation maps. More...
 
class  binary
 Arbitrary binary data. More...
 
class  byte_array
 Arbitrary fixed-size data. More...
 
class  connection
 A connection to a remote AMQP peer. More...
 
class  connection_options
 Options for creating a connection. More...
 
class  container
 A top-level container of connections, sessions, senders, and receivers. More...
 
class  decimal32
 32-bit decimal floating point. More...
 
class  decimal64
 64-bit decimal floating point. More...
 
class  decimal128
 128-bit decimal floating point. More...
 
class  delivery
 A received message. More...
 
struct  delivery_mode
 The message delivery policy to establish when opening a link. More...
 
class  duration
 A span of time in milliseconds. More...
 
class  endpoint
 The base class for session, connection, and link. More...
 
struct  error
 The base Proton error. More...
 
struct  timeout_error
 An operation timed out. More...
 
struct  conversion_error
 An error converting between AMQP and C++ data. More...
 
class  error_condition
 Describes an endpoint error state. More...
 
class  event_loop
 Experimental - A serial execution context. More...
 
class  void_function0
 A C++03 compatible void no-argument callback function object. More...
 
class  thread_safe
 Experimental - A thread-safe object wrapper. More...
 
class  link
 A named channel for sending or receiving messages. More...
 
class  listen_handler
 Experimental - A handler for incoming connections. More...
 
class  listener
 A listener for incoming connections. More...
 
class  message
 An AMQP message. More...
 
class  message_id
 An AMQP message ID. More...
 
class  messaging_handler
 A handler for Proton messaging events. More...
 
class  receiver
 A channel for receiving messages. More...
 
class  receiver_options
 Options for creating a receiver. More...
 
class  sasl
 SASL information. More...
 
class  scalar
 A holder for an instance of any scalar AMQP type. More...
 
class  scalar_base
 Base class for scalar types. More...
 
class  sender
 A channel for sending messages. More...
 
class  sender_options
 Options for creating a sender. More...
 
class  session
 A container of senders and receivers. More...
 
class  session_options
 Options for creating a session. More...
 
class  source
 A point of origin for messages. More...
 
class  source_options
 Options for creating a source node for a sender or receiver. More...
 
class  ssl
 SSL information. More...
 
class  ssl_certificate
 Experimental - An SSL certificate. More...
 
class  ssl_server_options
 Experimental - SSL configuration for inbound connections. More...
 
class  ssl_client_options
 Experimental - SSL configuration for outbound connections. More...
 
class  symbol
 A std::string that represents the AMQP symbol type. More...
 
class  target
 A destination for messages. More...
 
class  target_options
 Options for creating a target node for a sender or receiver. More...
 
class  terminus
 One end of a link, either a source or a target. More...
 
class  timestamp
 A 64-bit timestamp in milliseconds since the Unix epoch. More...
 
class  tracker
 A tracker for a sent message. More...
 
class  transfer
 The base class for delivery and tracker. More...
 
class  transport
 A network channel supporting an AMQP connection. More...
 
struct  url_error
 An error encountered during URL parsing. More...
 
class  url
 A URL parser. More...
 
class  uuid
 A 16-byte universally unique identifier. More...
 
class  value
 A holder for any AMQP value, simple or complex. More...
 

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. More...
 

Functions

std::ostream & operator<< (std::ostream &, const binary &)
 Print a binary value.
 
std::ostream & operator<< (std::ostream &, duration)
 Print duration.
 
std::string to_string (const scalar_base &x)
 Return a readable string representation of x for display purposes.
 
template<class T >
returned< T > make_thread_safe (const T &obj)
 Make a thread-safe wrapper for obj.
 
template<class T >
std::shared_ptr< thread_safe< T > > make_shared_thread_safe (const T &obj)
 Create a thread-safe shared_ptr to obj.
 
template<class T >
std::unique_ptr< thread_safe< T > > make_unique_thread_safe (const T &obj)
 Create a thread-safe unique_ptr to obj.
 
std::ostream & operator<< (std::ostream &, timestamp)
 Printable format.
 
std::string type_name (type_id)
 Get the name of the AMQP type.
 
std::ostream & operator<< (std::ostream &, type_id)
 Print the type name.
 
void assert_type_equal (type_id want, type_id got)
 Throw a conversion_error if want != got with a message including the names of the types. More...
 
std::ostream & operator<< (std::ostream &, const uuid &)
 UUID standard format: 8-4-4-4-12 (36 chars, 32 alphanumeric chars and 4 hypens). More...
 
template<>
void get< null > (const value &v, null &)
 Special case for get<null>(), just checks that value contains NULL.
 
std::string to_string (const value &x)
 Return a readable string representation of x for display purposes.
 
std::ostream & operator<< (std::ostream &, const decimal32 &)
 Print decimal values.
 
std::ostream & operator<< (std::ostream &, const decimal64 &)
 
std::ostream & operator<< (std::ostream &, const decimal128 &)
 
Comparison and arithmetic operators
bool operator< (duration x, duration y)
 
bool operator== (duration x, duration y)
 
duration operator+ (duration x, duration y)
 
duration operator- (duration x, duration y)
 
duration operator* (duration d, uint64_t n)
 
duration operator* (uint64_t n, duration d)
 
bool operator== (timestamp x, timestamp y)
 
bool operator< (timestamp x, timestamp y)
 
timestamp operator+ (timestamp ts, duration d)
 
duration operator- (timestamp t0, timestamp t1)
 
timestamp operator+ (duration d, timestamp ts)
 
Test the properties of a type_id.
bool type_id_is_signed_int (type_id t)
 
bool type_id_is_unsigned_int (type_id t)
 
bool type_id_is_integral (type_id t)
 
bool type_id_is_floating_point (type_id t)
 
bool type_id_is_decimal (type_id t)
 
bool type_id_is_signed (type_id t)
 
bool type_id_is_string_like (type_id t)
 
bool type_id_is_container (type_id t)
 
bool type_id_is_scalar (type_id t)
 
bool type_id_is_null (type_id t)
 

Detailed Description

The main Proton namespace.

Enumeration Type Documentation

enum type_id

An identifier for AMQP types.

Enumerator
NULL_TYPE 

The null type, contains no data.

BOOLEAN 

Boolean true or false.

UBYTE 

Unsigned 8-bit integer.

BYTE 

Signed 8-bit integer.

USHORT 

Unsigned 16-bit integer.

SHORT 

Signed 16-bit integer.

UINT 

Unsigned 32-bit integer.

INT 

Signed 32-bit integer.

CHAR 

32-bit unicode character.

ULONG 

Unsigned 64-bit integer.

LONG 

Signed 64-bit integer.

TIMESTAMP 

Signed 64-bit milliseconds since the epoch.

FLOAT 

32-bit binary floating point.

DOUBLE 

64-bit binary floating point.

DECIMAL32 

32-bit decimal floating point.

DECIMAL64 

64-bit decimal floating point.

DECIMAL128 

128-bit decimal floating point.

UUID 

16-byte UUID.

BINARY 

Variable-length sequence of bytes.

STRING 

Variable-length utf8-encoded string.

SYMBOL 

Variable-length encoded string.

DESCRIBED 

A descriptor and a value.

ARRAY 

A sequence of values of the same type.

LIST 

A sequence of values of mixed types.

MAP 

A sequence of key-value pairs.

Function Documentation

void proton::assert_type_equal ( type_id  want,
type_id  got 
)

Throw a conversion_error if want != got with a message including the names of the types.

std::ostream& proton::operator<< ( std::ostream &  ,
const uuid &   
)

UUID standard format: 8-4-4-4-12 (36 chars, 32 alphanumeric chars and 4 hypens).