12#ifndef WIBBLE_CONSUMER_H
13#define WIBBLE_CONSUMER_H
17template<
typename T >
struct Consumer;
28template<
typename T,
typename W >
35 return this->
wrapped().consume( a );
39 while ( !s.empty() ) {
46template<
typename T,
typename Self >
89template<
typename T,
typename Out >
101template<
typename R >
107template<
typename Out >
114template<
typename T >
116 return consumer( std::inserter(
c,
c.end() ) );
120template<
typename T >
Consumer< typename R::ConsumedType > consumerMorph(R r)
Definition consumer.h:102
Consumer< typename Out::container_type::value_type > consumer(Out out)
Definition consumer.h:108
const Interface * implementation() const
Definition amorph.h:361
ConsumerFromIterator(Out out)
Definition consumer.h:92
void consume(const T &a)
Definition consumer.h:93
Out m_out
Definition consumer.h:98
T InputType
Definition consumer.h:22
virtual void consume(Range< T > s)=0
virtual ~ConsumerInterface()
Definition consumer.h:25
virtual void consume(const T &a)=0
bool operator<=(const Self &o) const
Definition consumer.h:54
const Self & self() const
Definition consumer.h:50
Consumer< T > & operator++(int)
Definition consumer.h:56
Consumer< T > & operator*()
Definition consumer.h:57
Self & self()
Definition consumer.h:49
Consumer< T > & operator=(const T &a)
Definition consumer.h:58
T ConsumedType
Definition consumer.h:52
Consumer< T > & operator++()
Definition consumer.h:55
std::output_iterator_tag iterator_category
Definition consumer.h:51
ConsumerMorph(const W &w)
Definition consumer.h:32
ConsumerMorph()
Definition consumer.h:31
virtual void consume(Range< T > s)
Definition consumer.h:38
virtual void consume(const T &a)
Definition consumer.h:34
void value_type
Definition consumer.h:70
Amorph< Consumer< T >, ConsumerInterface< T > > Super
Definition consumer.h:68
void pointer
Definition consumer.h:72
Consumer()
Definition consumer.h:76
Consumer< T > & operator=(const T &a)
Definition consumer.h:82
Consumer(const MorphInterface< ConsumerInterface< T > > &i)
Definition consumer.h:75
void difference_type
Definition consumer.h:71
void reference
Definition consumer.h:73
void consume(const T &a)
Definition consumer.h:78
An interface implemented by all morph classes.
Definition amorph.h:91
const Wrapped & wrapped() const
Definition amorph.h:181