#include <chain.hh>

Public Member Functions | |
| Link (const ChainPosition &position) | |
| Link () | |
| void | Init (const ChainPosition &position) |
| ~Link () | |
| Block & | operator* () |
| const Block & | operator* () const |
| Block * | operator-> () |
| const Block * | operator-> () const |
| Link & | operator++ () |
| operator bool () const | |
| void | Poison () |
Definition at line 252 of file chain.hh.
| util::stream::Link::Link | ( | const ChainPosition & | position | ) | [explicit] |
Constructs an initialized link.
Definition at line 121 of file chain.cc.
References Init().

| util::stream::Link::Link | ( | ) |
| util::stream::Link::~Link | ( | ) |
Destructs the link object.
If necessary, this method will pass a poison block to this link's output producer queue.
Definition at line 125 of file chain.cc.
References util::PCQueue< T >::Produce().

| void util::stream::Link::Init | ( | const ChainPosition & | position | ) |
Initializes the link with the input consumer queue and output producer queue at a given position in the chain.
Definition at line 112 of file chain.cc.
References util::PCQueue< T >::Consume(), and UTIL_THROW_IF.
Referenced by util::stream::Stream::Init(), Link(), and util::stream::operator>>().


| util::stream::Link::operator bool | ( | ) | const [inline] |
Returns true if the block at this link encapsulates a valid (non-NULL) block of memory.
This method is a user-defined implicit conversion function to boolean; among other things, this method enables bare instances of this class to be used as the condition of an if statement.
| const Block& util::stream::Link::operator* | ( | ) | const [inline] |
| Block& util::stream::Link::operator* | ( | ) | [inline] |
| Link & util::stream::Link::operator++ | ( | ) |
Gets the link at the next position in the chain.
Definition at line 143 of file chain.cc.
References util::PCQueue< T >::Consume(), util::PCQueue< T >::Produce(), and util::stream::Block::ValidSize().

| const Block* util::stream::Link::operator-> | ( | ) | const [inline] |
| Block* util::stream::Link::operator-> | ( | ) | [inline] |
| void util::stream::Link::Poison | ( | ) |
Poisons the block at this link, and passes this now-poisoned block to this link's output producer queue.
Definition at line 155 of file chain.cc.
References util::PCQueue< T >::Produce().
Referenced by util::stream::Stream::Poison(), util::stream::MergingReader< Compare, Combine >::Run(), and util::stream::PRead::Run().


1.5.9