1 #ifndef __JLANG__JPIPE__ 
    2 #define __JLANG__JPIPE__ 
   69         if (
valve.is_open()) {
 
   71           while (
in.hasNext()) {
 
  142   template<
class JHead_t, 
class JTail_t>
 
  144     public JPipe<JHead_t>,
 
  145     public JPipe<JTail_t>,
 
  163       JPipe<JHead_t>(input, valve, selector, regulator),
 
  164       JPipe<JTail_t>(input, valve, selector, regulator)
 
  172   template<
class JHead_t>
 
  174     public JPipe<JHead_t>
 
  188       JPipe<JHead_t>(input, valve, selector, regulator)
 
  196   template<
class T, 
int N>
 
  258       JPipe<T>(input, valve, selector, regulator)
 
  326     template<
class JBase_t>
 
  341   template<
class T, 
int N>
 
const JObjectSelector< T > & selector
 
JPipe(JObjectIterator< T > &input, const JValve< T > &valve, const JObjectSelector< T > &selector, const JRegulator ®ulator)
Constructor. 
 
const JRegulator & regulator
 
static JSinglePointer< JMultiPipe< T, N > > pipe
Declaration of common pipe. 
 
friend JMultiPipe< T, N+1 > & operator|(JMultiPipe &left, const JRegulator &right)
Recursive expansion of multi-pipe. 
 
JObjectIterator< T > & in
 
JMultiPipe(JObjectIterator< T > &input, const JRegulator ®ulator)
Constructor. 
 
unsigned int skip_type
Type definition for number of objects to skip. 
 
JMultiPipe(JObjectIterator< T > &input, const JValve< T > &valve, const JObjectSelector< T > &selector, const JRegulator ®ulator)
Constructor. 
 
JObjectIterator< T >::pointer_type pointer_type
 
Auxiliary class for a type holder. 
 
Interface of object iteration for a single data type. 
 
Auxiliary class for multiplexing object iterators. 
 
bool is_valid() const 
Check validity of pointer. 
 
Auxiliary class for selection of data type. 
 
Auxiliary class for object iteration via pipe (i.e. operator |). 
 
Auxiliary class for object iteration via multiple pipes (e.g. operator | ..\ |). 
 
friend JObjectMultiplexer< T, JBase_t > & operator|(JMultiPipe &left, const JType< JBase_t > &right)
Pipe operator. 
 
The template JSinglePointer class can be used to hold a pointer to an object. 
 
Interface for selection of objects. 
 
virtual void reset()
Reset pointer. 
 
Interface for controlling object throughput. 
 
virtual skip_type skip(const skip_type ns)
Skip items. 
 
virtual const pointer_type & next()
Get next element. 
 
const JValve< T > & valve
 
Auxiliary class for no type definition. 
 
JPipe(JObjectIterator< typelist > &input, const JValve< typelist > &valve, const JObjectSelector< typelist > &selector, const JRegulator ®ulator)
Constructor. 
 
JTypeList< JHead_t, JTail_t > typelist
 
JPipe(JObjectIterator< JHead_t > &input, const JValve< JHead_t > &valve, const JObjectSelector< JHead_t > &selector, const JRegulator ®ulator)
Constructor. 
 
friend void operator|(JMultiPipe &left, JObjectOutput< T > &right)
Pipe terminator. 
 
virtual bool accept() const 
Accept. 
 
JMultiPipe(JObjectIterator< T > &input)
Constructor. 
 
Forward declarations for definitions of I/O redirect and pipe operators. 
 
friend JMultiPipe< T, N+1 > & operator|(JMultiPipe &left, const JValve< T > &right)
Recursive expansion of multi-pipe. 
 
virtual bool hasNext()
Check availability of next element. 
 
JMultiPipe(JObjectIterator< T > &input, const JValve< T > &valve)
Constructor. 
 
friend JMultiPipe< T, N+1 > & operator|(JMultiPipe &left, const JObjectSelector< T > &right)
Recursive expansion of multi-pipe. 
 
JMultiPipe(JObjectIterator< T > &input, const JObjectSelector< T > &selector)
Constructor.