#include <InnerCategory.h>
Inheritance diagram for InnerCategory:
Public Member Functions | |
virtual StringPimpl | getString () const =0 throw (InternalProgrammerErrorException &) |
Contract to make all inner category XML Tags return a string representing their internal structure. | |
virtual const StringPimpl & | getStringConstRef () const throw (InternalProgrammerErrorException &) |
The same as InnerCategory::getString() only it returns a reference to the string and not the string its self. | |
InnerCategory () throw (InternalProgrammerErrorException &) | |
Default constructor to initalize the private implementation (m_pimpl) data. | |
virtual | ~InnerCategory () |
Default virtual destructor. | |
Private Attributes | |
shared_ptr< InnerCategoryImpl > | m_pimpl |
The private implementation in which you cannot get access to. |
If you write a AIML XML tag class such as Li, Srai, LowerCase, etc... which reside inside of <category> you should either inherit from this class or from another class which already inherits from this class.
|
Default constructor to initalize the private implementation (m_pimpl) data.
|
|
Default virtual destructor. Destroys the private implementation (m_pimpl) data. |
|
Contract to make all inner category XML Tags return a string representing their internal structure. See the inner category Tags to understand what they will return.
Implemented in Bot, Condition, Date, Formal, Gender, Get, Gossip, Id, InnerTemplate, InnerTemplateListImpl, Input, Learn, LowerCase, Pattern, PatternSideThat, Person, Person2, PlainWord, Random, Sentence, Set, Size, Srai, Star, System, Template, TemplateSideThat, ThatStar, Think, TopicStar, UpperCase, and Version. |
|
The same as InnerCategory::getString() only it returns a reference to the string and not the string its self. It is a no-ops (no operations) method. It does not have to be implemented by all InnerCategory Tags. It's provided for high efficiency. Be careful if implementing this in your InnerCategory subclass. You have to ensure that the object stays in memory until a copy of the string is made since the object has ownership of the string.
Reimplemented in Pattern, and PatternSideThat. |
|
The private implementation in which you cannot get access to. This shared_ptr holds the private methods and private member variables of this class. This makes ABI (Application Binary Interface) more resilient to change. See the private implementation idiom on the internet for more information about this. Reimplemented from InnerTopic. Reimplemented in Bot, Condition, Date, Formal, Gender, Get, Gossip, Id, InnerTemplate, InnerTemplateListImpl, Input, Learn, Li, LowerCase, NonImplemented, Pattern, PatternSideThat, Person, Person2, PlainWord, Random, Sentence, Set, Size, Srai, Star, System, Template, TemplateSideThat, ThatStar, Think, TopicStar, UpperCase, and Version. |