Om
default_sink.cpp
Go to the documentation of this file.
1 
15 #ifndef Om_Sink_DefaultSink_
16 
17  #include "om/sink/default_sink.hpp"
18 
19 #else
20 
21 // MARK: - Om::Sink::DefaultSink
22 
23  #define Template_ \
24  template < \
25  typename ThisItem, \
26  typename ThisImplementation \
27  >
28 
29  #define Type_ \
30  Om::Sink::DefaultSink< \
31  ThisItem, \
32  ThisImplementation \
33  >
34 
35 // MARK: public (non-static)
36 
37 Template_
38 inline Type_::~DefaultSink() {}
39 
40 Template_
41 inline ThisImplementation & Type_::operator ++() {
42  assert(
43  dynamic_cast<ThisImplementation *>(this)
44  );
45  return static_cast<ThisImplementation &>(*this);
46 }
47 
48 Template_
49 inline ThisImplementation Type_::operator ++(int) {
50  assert(
51  dynamic_cast<ThisImplementation *>(this)
52  );
53  return static_cast<ThisImplementation &>(*this);
54 }
55 
56  #undef Type_
57  #undef Template_
58 
59 #endif
Om header file.