Om
sink.hpp
Go to the documentation of this file.
1 
15 #ifndef Om_Sink_Sink_
16 
17  #define Om_Sink_Sink_ \
18  Om::Sink::Sink
19 
20 namespace Om {
21 
22  namespace Sink {
23 
24  // MARK: - Om::Sink::Sink
25 
30  template <typename ThisItem>
31  class Sink {
32 
33  public: // MARK: public (non-static)
34 
35  virtual ~Sink() = 0;
36 
43  Sink & operator =(ThisItem &);
44 
50 
56 
61  virtual void Push(ThisItem &) = 0;
62 
63  private: // MARK: private (non-static)
64 
65  Sink & operator =(Sink const &);
66 
67  };
68 
69  }
70 
71 }
72 
73  #include "om/sink/sink.cpp"
74 
75 #endif
Any object that items can be pushed to.
Definition: sink.hpp:31
virtual ~Sink()=0
Sink & operator*()
Sink & operator=(ThisItem &)
Pushes to the Sink.
Sink * operator->()
virtual void Push(ThisItem &)=0
Pushes an item.
The Om library.
Definition: code_point.hpp:26
Om source file.