UCommon
|
Abstract interfaces and support. More...
#include <ucommon/cpr.h>
Go to the source code of this file.
Data Structures | |
class | ucommon::_character_operators |
At least with gcc, linking of stream operators was broken. More... | |
class | ucommon::BufferProtocol |
Common buffer protocol class. More... | |
class | ucommon::CharacterProtocol |
Common character processing protocol. More... | |
class | ucommon::InputProtocol |
Used for processing input. More... | |
class | ucommon::KeyProtocol |
Key data protocol used for things like maps and ordered lists. More... | |
class | ucommon::LockingProtocol |
Common locking protocol. More... | |
class | ucommon::MemoryRedirect |
A redirection base class for the memory protocol. More... | |
class | ucommon::ObjectProtocol |
A common base class for all managed objects. More... | |
class | ucommon::PrintProtocol |
Used for forming stream output. More... | |
Namespaces | |
namespace | ucommon |
Common namespace for all ucommon objects. | |
Functions | |
CharacterProtocol & | ucommon::operator<< (CharacterProtocol &p, const char *s) |
CharacterProtocol & | ucommon::operator<< (CharacterProtocol &p, const char &ch) |
CharacterProtocol & | ucommon::operator<< (CharacterProtocol &p, const PrintProtocol &format) |
CharacterProtocol & | ucommon::operator<< (CharacterProtocol &p, const StringPager &list) |
CharacterProtocol & | ucommon::operator<< (CharacterProtocol &p, const long &value) |
CharacterProtocol & | ucommon::operator<< (CharacterProtocol &p, const double &value) |
CharacterProtocol & | ucommon::operator>> (CharacterProtocol &p, char &ch) |
CharacterProtocol & | ucommon::operator>> (CharacterProtocol &p, String &str) |
CharacterProtocol & | ucommon::operator>> (CharacterProtocol &p, InputProtocol &format) |
CharacterProtocol & | ucommon::operator>> (CharacterProtocol &p, StringPager &list) |
CharacterProtocol & | ucommon::operator>> (CharacterProtocol &p, long &value) |
CharacterProtocol & | ucommon::operator>> (CharacterProtocol &p, double &value) |
Abstract interfaces and support.
This is a set of "protocols", a concept borrowed from other object oriented languages, to define interfaces for low level services. By using a protocol base class which offers both virtuals and support methods only, one can easily stack and share these as common base classes without having to consider when the final derived object implements them. Core protocol methods always are tagged with a _ prefix to make it easier to track their derivation.
Definition in file protocols.h.