Pattern Class Reference

AIML class that represents the AIML XML tag "pattern". More...

#include <Pattern.h>

Inheritance diagram for Pattern:

InnerCategory InnerTopic InnerAIML Tag List of all members.

Public Member Functions

virtual void addCharacters (const StringPimpl &characters) throw (InternalProgrammerErrorException &)
 Sets its internal string to the characters inbetween its begin and end tag.
virtual StringPimpl getString () const throw (InternalProgrammerErrorException &)
 Returns a copy of the internal string.
virtual const StringPimplgetStringConstRef () const throw (InternalProgrammerErrorException &)
 Returns a reference of the internal string.
 Pattern () throw (InternalProgrammerErrorException &)
 Default constructor to initalize the private implementation (m_pimpl) data.
virtual ~Pattern ()
 Default virtual destructor.

Private Attributes

shared_ptr< PatternImpl > m_pimpl
 The private implementation in which you cannot get access to.

Detailed Description

AIML class that represents the AIML XML tag "pattern".

Every time a XML Tag of AIML is encountered, an instance of this class will be created. All text inbetween the begin and end tag, all attributes, and all inner Tags will go through methods of this class.


Constructor & Destructor Documentation

Pattern  )  throw (InternalProgrammerErrorException &)
 

Default constructor to initalize the private implementation (m_pimpl) data.

Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

virtual ~Pattern  )  [virtual]
 

Default virtual destructor.

Destroys the private implementation (m_pimpl) data.


Member Function Documentation

virtual void addCharacters const StringPimpl characters  )  throw (InternalProgrammerErrorException &) [virtual]
 

Sets its internal string to the characters inbetween its begin and end tag.

For example, in <pattern>blah</pattern>, blah will be added through this method to an internal string.

Parameters:
characters The characters inbetween its begin and end tag that are added to the internal string.
Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

Reimplemented from Tag.

virtual StringPimpl getString  )  const throw (InternalProgrammerErrorException &) [virtual]
 

Returns a copy of the internal string.

Returns:
The internal string
Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

Implements InnerCategory.

virtual const StringPimpl& getStringConstRef  )  const throw (InternalProgrammerErrorException &) [virtual]
 

Returns a reference of the internal string.

This is for efficiency's sake. Be careful because this object retains ownership of the string and it has to stay instantiated while the reference is being passed around.

Returns:
A reference to the internal string
Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

Reimplemented from InnerCategory.


Member Data Documentation

shared_ptr<PatternImpl> m_pimpl [private]
 

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 InnerCategory.


The documentation for this class was generated from the following file:
Generated on Thu Sep 7 22:05:53 2006 for RebeccaAIML by  doxygen 1.4.5