7#if !defined(TETENGO_JSON_CHANNEL_HPP)
8#define TETENGO_JSON_CHANNEL_HPP
14#include <boost/core/noncopyable.hpp>
25 class channel :
private boost::noncopyable
63 void insert(std::exception_ptr&& p_exception);
104 const std::unique_ptr<impl> m_p_impl;
A channel.
Definition channel.hpp:26
channel(std::size_t capacity)
Creates a channel.
bool closed() const
Returns true the channel is closed.
void take()
Takes an element.
~channel()
Destroys the JSON parser.
void insert(element element_)
Inserts an element.
const element & peek() const
Returns the front element.
void insert(std::exception_ptr &&p_exception)
Inserts an exception.
void close()
Closes the channel.
An element.
Definition element.hpp:22