15 #ifndef Om_Language_DefaultAtom_
17 #define Om_Language_DefaultAtom_ \
18 Om::Language::DefaultAtom
23 #ifndef Om_Macro_Precompilation_
41 template <
typename ThisImplementation>
69 bool Equals(ThisImplementation
const &)
const;
71 virtual std::auto_ptr<
75 virtual std::auto_ptr<
102 virtual bool Merge(ThisImplementation &);
107 virtual bool Merge(ThisImplementation
const &);
109 void Swap(ThisImplementation &);
120 char const theCodeUnitIterator[]
143 template <
typename TheImplementation>
149 template <
typename TheImplementation>
An atomic Element defined by a string.
A partial implementation of Atom.
bool Equals(DefaultAtom const &) const
virtual bool IsEmpty() const
std::string thisString
The NFD-normalized string that defines the Atom.
virtual std::auto_ptr< Om::Source::Source< Element > > GetElementRange()
DefaultAtom & operator=(DefaultAtom const &)
virtual bool Merge(ThisImplementation const &)
std::string const & GetString() const
virtual std::auto_ptr< Om::Source::Source< Element const > > GetElementRange() const
bool Equals(ThisImplementation const &) const
DefaultAtom(char const theCodeUnit)
DefaultAtom(char const theCodeUnitIterator[])
void Swap(ThisImplementation &)
virtual bool Merge(ThisImplementation &)
bool operator<(DefaultAtom const &)
Compares with a Atom; required for use as index in containers.
A partial implementation of Element.
Any object that items can be pulled from.
bool operator!=(DefaultAtom< TheImplementation > const &, DefaultAtom< TheImplementation > const &)
bool operator==(DefaultAtom< TheImplementation > const &, DefaultAtom< TheImplementation > const &)