libFAUDES

Sections

Index

faudes::Documentation Class Reference

#include <rtitypes.h>

Inherits faudes::Type.

Inherited by faudes::FunctionDefinition, and faudes::TypeDefinition.

List of all members.


Detailed Description

faudes type implementation macros, overall, debug version

Structure to hold documentation data relating to a faudes-type or -function. This class is the common base for faudes::TypeDefinition and faudes::FunctionDefinition. It supports token io as demonstrated by the follwoing example for a type defintion:

  <TypeDefinition>
      % name of this faudes-type, incl. colon separated plugin name
  "CoreFaudes::Generator"

      % corresponding C++ type (optional)
      +faudes::cGenerator+

      % short docu
  <TextDoc> "The common 5 tuple G=(Sigma, Q, delta, Qo, Qm)."

      % html reference for documentation
  <HtmlDoc> "generators.html#plain" </HtmlDoc>

      % relevant keywords 
  <Keywords> "generator" "language" </Keywords>

  </TypeDefinition>

Technical detail: Documentation is derived from Type for the purpose of token IO only. Documentation accompanies a faudes Type, but does itself not constitute a faudes object.

Definition at line 832 of file rtitypes.h.


Public Member Functions

 Documentation (void)
 Constructor.
virtual ~Documentation (void)
 Destructor.
const std::string & Name (void) const
 Get name of the entety to document (aka faudes-type or faudes-function).
const std::string & PlugIn (void) const
 Get name of plugin.
const std::string & CType (void) const
 Get corresponding C++ type.
const std::string & TextDoc (void) const
const std::string & HtmlDoc (void) const
const std::string & Keywords (void) const
std::string MatchKeyword (const std::string &rPattern) const
 Search comma-seperated keywords for a substring.
int KeywordsSize (void) const
 Not implemented.
std::string KeywordAt (int pos) const

Protected Member Functions

void Name (const std::string &name)
 Set name.
void PlugIn (const std::string &plugin)
 Set name of plugin.
void CType (const std::string &name)
 Set C++ type.
void TextDoc (const std::string &textdoc)
 Set a short textual documentation.
void HtmlDoc (const std::string &fname)
 Set name of file pointing to the html documentation.
void AddKeyword (const std::string &rKeyword)
 Append keyword.
void Clear (void)
 Clear.
virtual void DoRead (TokenReader &rTr, const std::string &rLabel="", const Type *pContext=0)
 Read configuration data of this object from TokenReader.
virtual void DoWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const
 Write configuration data of this object to TokenWriter.

Protected Attributes

std::string mName
 Faudes name.
std::string mPlugIn
 Faudes plugin.
std::string mCType
 Corresponing C++ type, or "" if no such.
std::string mTextDoc
 String containing the text-documentation.
std::string mHtmlDoc
 String containing the filename of the corresponding html-documentation.
std::string mKeywords
 Comma-seperated string containing all keywords.

Static Protected Attributes

static const char mDelim = ';'
 Constant characted used to seperate keywords.

Constructor & Destructor Documentation

faudes::Documentation::Documentation ( void   ) 

Constructor.

Definition at line 272 of file rtitypes.cpp.

virtual faudes::Documentation::~Documentation ( void   )  [inline, virtual]

Destructor.

Definition at line 839 of file rtitypes.h.


Member Function Documentation

const std::string & faudes::Documentation::Name ( void   )  const [virtual]

Get name of the entety to document (aka faudes-type or faudes-function).

Returns:
Name

Reimplemented from faudes::Type.

Definition at line 286 of file rtitypes.cpp.

const std::string & faudes::Documentation::PlugIn ( void   )  const

Get name of plugin.

The plugin name defaults to CoreFaudes.

Returns:
Name

Definition at line 287 of file rtitypes.cpp.

const std::string & faudes::Documentation::CType ( void   )  const

Get corresponding C++ type.

Returns:
CType, or "" if no such

Definition at line 288 of file rtitypes.cpp.

const std::string & faudes::Documentation::TextDoc ( void   )  const

Returns:
Short textual documentation.

Definition at line 289 of file rtitypes.cpp.

const std::string & faudes::Documentation::HtmlDoc ( void   )  const

Returns:
Filename pointing to the html documentation.

Definition at line 290 of file rtitypes.cpp.

const std::string & faudes::Documentation::Keywords ( void   )  const

Returns:
CSV-string containing keywords.

Definition at line 291 of file rtitypes.cpp.

std::string faudes::Documentation::MatchKeyword ( const std::string &  rPattern  )  const

Search comma-seperated keywords for a substring.

This should be extended to regular expressions in a future release.

Parameters:
rPattern String-pattern.
Returns:
Matching keyword or "" if no match

Definition at line 311 of file rtitypes.cpp.

int faudes::Documentation::KeywordsSize ( void   )  const

Not implemented.

Returns:
Number of keywords.

Definition at line 362 of file rtitypes.cpp.

std::string faudes::Documentation::KeywordAt ( int  pos  )  const

Parameters:
pos Position of keyword
Returns:
Keyword at specified position (or "" if pos out of range)

Definition at line 338 of file rtitypes.cpp.

void faudes::Documentation::Name ( const std::string &  name  )  [protected, virtual]

Set name.

Parameters:
name New name.

Reimplemented from faudes::Type.

Definition at line 294 of file rtitypes.cpp.

void faudes::Documentation::PlugIn ( const std::string &  plugin  )  [protected]

Set name of plugin.

Parameters:
plugin New name.

Definition at line 295 of file rtitypes.cpp.

void faudes::Documentation::CType ( const std::string &  name  )  [protected]

Set C++ type.

Parameters:
name New ctype.

Definition at line 296 of file rtitypes.cpp.

void faudes::Documentation::TextDoc ( const std::string &  textdoc  )  [protected]

Set a short textual documentation.

Parameters:
textdoc New textual documentation.

Definition at line 297 of file rtitypes.cpp.

void faudes::Documentation::HtmlDoc ( const std::string &  fname  )  [protected]

Set name of file pointing to the html documentation.

Parameters:
fname Filename

Definition at line 298 of file rtitypes.cpp.

void faudes::Documentation::AddKeyword ( const std::string &  rKeyword  )  [protected]

Append keyword.

Parameters:
rKeyword Keyword

Definition at line 301 of file rtitypes.cpp.

void faudes::Documentation::Clear ( void   )  [protected, virtual]

Clear.

Reimplemented from faudes::Type.

Reimplemented in faudes::FunctionDefinition, and faudes::TypeDefinition.

Definition at line 276 of file rtitypes.cpp.

void faudes::Documentation::DoRead ( TokenReader rTr,
const std::string &  rLabel = "",
const Type pContext = 0 
) [protected, virtual]

Read configuration data of this object from TokenReader.

This virtual function reads documentation members only. It does NOT read the enclosing begin and end tokens. Both, rLabel and Pontext are ignored.

Parameters:
rTr TokenReader to read from
rLabel Section to read
pContext Read context to provide contextual information (ignored)
Exceptions:
Exception 
  • Token mismatch (id 50, 51, 52)
  • IO Error (id 1)

Reimplemented from faudes::Type.

Reimplemented in faudes::FunctionDefinition, and faudes::TypeDefinition.

Definition at line 377 of file rtitypes.cpp.

void faudes::Documentation::DoWrite ( TokenWriter rTw,
const std::string &  rLabel = "",
const Type pContext = 0 
) const [protected, virtual]

Write configuration data of this object to TokenWriter.

This virtual function reads documentation members only. It does NOT write enclosing begin and end tokens. Both, rLabel and Pontext are ignored.

Parameters:
rTw Reference to TokenWriter
rLabel Label of section to write
pContext Write context to provide contextual information
Exceptions:
Exception 
  • IO errors (id 2)

Reimplemented from faudes::Type.

Reimplemented in faudes::FunctionDefinition, and faudes::TypeDefinition.

Definition at line 432 of file rtitypes.cpp.


Member Data Documentation

std::string faudes::Documentation::mName [protected]

Faudes name.

Reimplemented from faudes::Type.

Definition at line 1008 of file rtitypes.h.

std::string faudes::Documentation::mPlugIn [protected]

Faudes plugin.

Definition at line 1011 of file rtitypes.h.

std::string faudes::Documentation::mCType [protected]

Corresponing C++ type, or "" if no such.

Definition at line 1014 of file rtitypes.h.

std::string faudes::Documentation::mTextDoc [protected]

String containing the text-documentation.

Definition at line 1017 of file rtitypes.h.

std::string faudes::Documentation::mHtmlDoc [protected]

String containing the filename of the corresponding html-documentation.

Definition at line 1020 of file rtitypes.h.

std::string faudes::Documentation::mKeywords [protected]

Comma-seperated string containing all keywords.

Definition at line 1023 of file rtitypes.h.

const char faudes::Documentation::mDelim = ';' [static, protected]

Constant characted used to seperate keywords.

Definition at line 1026 of file rtitypes.h.


The documentation for this class was generated from the following files:

libFAUDES 2.14g --- 2009-12-3 --- c++ source docu by doxygen 1.5.6