Om
reader.hpp
Go to the documentation of this file.
1 
15 #ifndef Om_Language_Reader_
16 
17  #define Om_Language_Reader_ \
18  Om::Language::Reader
19 
20  #include "om/code_point.hpp"
22 
23 namespace Om {
24 
25  namespace Language {
26 
27  // MARK: - Om::Language::Reader
28 
33  class Reader:
35  CodePoint const,
36  Reader
37  > {
38 
39  public: // MARK: public (non-static)
40 
41  explicit Reader(
43  );
44 
45  virtual CodePoint const & operator *() const;
46 
47  virtual bool operator !() const;
48 
50  CodePoint const,
51  Reader
52  >::Equals;
53 
54  bool Equals(Reader const &) const;
55 
56  virtual void Pop();
57 
58  private: // MARK: private (non-static)
59 
60  Reader(Reader const &);
61 
62  Reader const & operator =(Reader const &);
63 
65 
66  size_t thisDepth;
67 
69 
70  };
71 
72  // MARK: - Om::Language::
73 
75  Reader const &,
76  Reader const &
77  );
78 
80  Reader const &,
81  Reader const &
82  );
83 
84  }
85 
86 }
87 
88  #include "om/language/reader.cpp"
89 
90 #endif
Produces each CodePoint until the end of the Source.
Definition: reader.hpp:37
Reader(Om::Source::Source< CodePoint const > &)
virtual void Pop()
Pops the current item.
bool Equals(Reader const &) const
virtual CodePoint const & operator*() const
Reader const & operator=(Reader const &)
Om::Source::Source< CodePoint const > & thisCodePointSource
Definition: reader.hpp:64
virtual bool operator!() const
Reader(Reader const &)
A partial implementation of Source.
Any object that items can be pulled from.
Definition: source.hpp:31
Om header file.
Om header file.
bool operator!=(DefaultAtom< TheImplementation > const &, DefaultAtom< TheImplementation > const &)
bool operator==(DefaultAtom< TheImplementation > const &, DefaultAtom< TheImplementation > const &)
The Om library.
Definition: code_point.hpp:26
boost::locale::utf::code_point CodePoint
A UTF-8 code point.
Definition: code_point.hpp:32
Om source file.