Om
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Om::Language::Writer Class Reference

A Consumer that pushes each Element to a CodePoint Sink upon receipt. More...

#include "writer.hpp"

+ Inheritance diagram for Om::Language::Writer:
+ Collaboration diagram for Om::Language::Writer:

Public Member Functions

 Writer (Om::Sink::Sink< CodePoint const > &)
 
virtual void ParseElements (Reader &)
 
virtual void ParseQuotedElements (Reader &)
 
template<typename TheOperand >
void TakeOperand (TheOperand &)
 
template<typename TheOperator >
void TakeOperator (TheOperator &)
 
template<typename TheProducer >
void TakeQuotedProducer (TheProducer &)
 
template<typename TheSeparator >
void TakeSeparator (TheSeparator &)
 
- Public Member Functions inherited from Om::Language::DefaultConsumer< Writer >
virtual ~DefaultConsumer ()=0
 
virtual void TakeElement (Operand &)
 Takes a non-empty Element, which gets copied or swapped. More...
 
virtual void TakeElement (Operand const &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual void TakeElement (Operator &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual void TakeElement (Operator const &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual void TakeElement (Separator &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual void TakeElement (Separator const &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual void TakeElements (Producer &)
 Takes each Element of the argument. More...
 
virtual void TakeElements (Producer const &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual void TakeQuotedElements (Producer &)
 Constructs and takes an Operand, which takes each Element from the argument Producer. More...
 
virtual void TakeQuotedElements (Producer const &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
- Public Member Functions inherited from Om::Language::Consumer
virtual ~Consumer ()=0
 
template<typename TheOperator , typename TheSeparator >
void Parse (Reader &)
 
void TakeElement (Null &)
 Takes a Null Element, which is disregarded. More...
 
void TakeElement (Null const &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 

Private Member Functions

 Writer (Writer const &)
 
Writer const & operator= (Writer const &)
 

Private Attributes

Om::Sink::Sink< CodePoint const > & thisCodePointSink
 The output CodePoint Sink. More...
 

Detailed Description

Definition at line 42 of file writer.hpp.

Constructor & Destructor Documentation

◆ Writer() [1/2]

Om::Language::Writer::Writer ( Om::Sink::Sink< CodePoint const > &  )
explicit

◆ Writer() [2/2]

Om::Language::Writer::Writer ( Writer const &  )
private

Member Function Documentation

◆ ParseElements()

virtual void Om::Language::Writer::ParseElements ( Reader )
virtual

◆ ParseQuotedElements()

virtual void Om::Language::Writer::ParseQuotedElements ( Reader )
virtual

◆ TakeOperand()

template<typename TheOperand >
void Om::Language::Writer::TakeOperand ( TheOperand &  )

◆ TakeOperator()

template<typename TheOperator >
void Om::Language::Writer::TakeOperator ( TheOperator &  )

◆ TakeQuotedProducer()

template<typename TheProducer >
void Om::Language::Writer::TakeQuotedProducer ( TheProducer &  )

◆ TakeSeparator()

template<typename TheSeparator >
void Om::Language::Writer::TakeSeparator ( TheSeparator &  )

◆ operator=()

Writer const& Om::Language::Writer::operator= ( Writer const &  )
private

Member Data Documentation

◆ thisCodePointSink

Om::Sink::Sink<CodePoint const>& Om::Language::Writer::thisCodePointSink
private

Definition at line 77 of file writer.hpp.


The documentation for this class was generated from the following file: