Public Types | Public Member Functions | Private Attributes | Friends | List of all members
DocParamSect Class Reference

#include <docparser.h>

Inheritance diagram for DocParamSect:
CompAccept< DocParamSect > DocNode

Public Types

enum  Type {
  Unknown, Param, RetVal, Exception,
  TemplateParam
}
 
enum  Direction { In =1, Out =2, InOut =3, Unspecified =0 }
 
- Public Types inherited from DocNode
enum  Kind {
  Kind_Root = 0, Kind_Word = 1, Kind_WhiteSpace = 2, Kind_Para = 3,
  Kind_AutoList = 4, Kind_AutoListItem = 5, Kind_Symbol = 6, Kind_URL = 7,
  Kind_StyleChange = 8, Kind_SimpleSect = 9, Kind_Title = 10, Kind_SimpleList = 11,
  Kind_SimpleListItem = 12, Kind_Section = 13, Kind_Verbatim = 14, Kind_XRefItem = 15,
  Kind_HtmlList = 16, Kind_HtmlListItem = 17, Kind_HtmlDescList = 18, Kind_HtmlDescData = 19,
  Kind_HtmlDescTitle = 20, Kind_HtmlTable = 21, Kind_HtmlRow = 22, Kind_HtmlCell = 23,
  Kind_HtmlCaption = 24, Kind_LineBreak = 25, Kind_HorRuler = 26, Kind_Anchor = 27,
  Kind_IndexEntry = 28, Kind_Internal = 29, Kind_HRef = 30, Kind_Include = 31,
  Kind_IncOperator = 32, Kind_HtmlHeader = 33, Kind_Image = 34, Kind_DotFile = 35,
  Kind_Link = 36, Kind_Ref = 37, Kind_Formula = 38, Kind_SecRefItem = 39,
  Kind_SecRefList = 40, Kind_SimpleSectSep = 41, Kind_LinkedWord = 42, Kind_ParamSect = 43,
  Kind_ParamList = 44, Kind_InternalRef = 45, Kind_Copy = 46, Kind_Text = 47,
  Kind_MscFile = 48, Kind_HtmlBlockQuote = 49, Kind_VhdlFlow = 50, Kind_ParBlock = 51,
  Kind_DiaFile = 52
}
 

Public Member Functions

 DocParamSect (DocNode *parent, Type t)
 
int parse (const QCString &cmdName, bool xmlContext, Direction d)
 
Kind kind () const
 
Type type () const
 
void accept (DocVisitor *v)
 
bool hasInOutSpecifier () const
 
bool hasTypeSpecifier () const
 
- Public Member Functions inherited from CompAccept< DocParamSect >
 CompAccept ()
 
virtual ~CompAccept ()
 
void accept (DocParamSect *obj, DocVisitor *v)
 
const QList< DocNode > & children () const
 
QList< DocNode > & children ()
 
- Public Member Functions inherited from DocNode
 DocNode ()
 
virtual ~DocNode ()
 
DocNodeparent () const
 
void setParent (DocNode *parent)
 
bool isPreformatted () const
 

Private Attributes

Type m_type
 
bool m_hasInOutSpecifier
 
bool m_hasTypeSpecifier
 

Friends

class DocParamList
 

Additional Inherited Members

- Protected Member Functions inherited from DocNode
void setInsidePreformatted (bool p)
 
- Protected Attributes inherited from CompAccept< DocParamSect >
QList< DocNodem_children
 
- Protected Attributes inherited from DocNode
DocNodem_parent
 

Detailed Description

Node representing a parameter section

Definition at line 1084 of file docparser.h.

Member Enumeration Documentation

Enumerator
In 
Out 
InOut 
Unspecified 

Definition at line 1092 of file docparser.h.

Enumerator
Unknown 
Param 
RetVal 
Exception 
TemplateParam 

Definition at line 1088 of file docparser.h.

Constructor & Destructor Documentation

DocParamSect::DocParamSect ( DocNode parent,
Type  t 
)
inline

Definition at line 1096 of file docparser.h.

1098  { m_parent = parent; }
DocNode * parent() const
Definition: docparser.h:147
const bool FALSE
Definition: qglobal.h:370
DocNode * m_parent
Definition: docparser.h:163
bool m_hasTypeSpecifier
Definition: docparser.h:1109
bool m_hasInOutSpecifier
Definition: docparser.h:1108

Member Function Documentation

void DocParamSect::accept ( DocVisitor v)
inlinevirtual

Acceptor function for node visitors. Part of the visitor pattern.

Parameters
vAbstract visitor.

Implements DocNode.

Definition at line 1102 of file docparser.h.

void accept(T *obj, DocVisitor *v)
Definition: docparser.h:177
bool DocParamSect::hasInOutSpecifier ( ) const
inline

Definition at line 1103 of file docparser.h.

1103 { return m_hasInOutSpecifier; }
bool m_hasInOutSpecifier
Definition: docparser.h:1108
bool DocParamSect::hasTypeSpecifier ( ) const
inline

Definition at line 1104 of file docparser.h.

1104 { return m_hasTypeSpecifier; }
bool m_hasTypeSpecifier
Definition: docparser.h:1109
Kind DocParamSect::kind ( ) const
inlinevirtual

Returns the kind of node. Provides runtime type information

Implements DocNode.

Definition at line 1100 of file docparser.h.

int DocParamSect::parse ( const QCString cmdName,
bool  xmlContext,
Direction  d 
)

Definition at line 4795 of file docparser.cpp.

4796 {
4797  int retval=RetVal_OK;
4798  DBG(("DocParamSect::parse() start\n"));
4799  g_nodeStack.push(this);
4800 
4801  if (d!=Unspecified)
4802  {
4804  }
4805 
4806  DocParamList *pl = new DocParamList(this,m_type,d);
4807  if (m_children.isEmpty())
4808  {
4809  pl->markFirst();
4810  pl->markLast();
4811  }
4812  else
4813  {
4815  ((DocParamList *)m_children.getLast())->markLast(FALSE);
4816  pl->markLast();
4817  }
4818  m_children.append(pl);
4819  if (xmlContext)
4820  {
4821  retval = pl->parseXml(cmdName);
4822  }
4823  else
4824  {
4825  retval = pl->parse(cmdName);
4826  }
4827  if (retval==RetVal_EndParBlock)
4828  {
4829  retval = RetVal_OK;
4830  }
4831 
4832  DBG(("DocParamSect::parse() end retval=%d\n",retval));
4833  DocNode *n=g_nodeStack.pop();
4834  ASSERT(n==this);
4835  return retval;
4836 }
void markLast(bool b=TRUE)
Definition: docparser.h:1174
QList< DocNode > m_children
Definition: docparser.h:189
int parse(const QCString &cmdName)
Definition: docparser.cpp:4650
void append(const type *d)
Definition: qlist.h:73
friend class DocParamList
Definition: docparser.h:1086
#define DBG(x)
Definition: docparser.cpp:59
const bool FALSE
Definition: qglobal.h:370
static QStack< DocNode > g_nodeStack
Definition: docparser.cpp:91
virtual Kind kind() const =0
void markFirst(bool b=TRUE)
Definition: docparser.h:1173
void push(const type *d)
Definition: qstack.h:58
type * getLast() const
Definition: qlist.h:96
bool isEmpty() const
Definition: qlist.h:67
std::void_t< T > n
int parseXml(const QCString &paramName)
Definition: docparser.cpp:4725
type * pop()
Definition: qstack.h:59
const bool TRUE
Definition: qglobal.h:371
#define ASSERT(x)
Definition: qglobal.h:590
bool m_hasInOutSpecifier
Definition: docparser.h:1108
Type DocParamSect::type ( ) const
inline

Definition at line 1101 of file docparser.h.

1101 { return m_type; }

Friends And Related Function Documentation

friend class DocParamList
friend

Definition at line 1086 of file docparser.h.

Member Data Documentation

bool DocParamSect::m_hasInOutSpecifier
private

Definition at line 1108 of file docparser.h.

bool DocParamSect::m_hasTypeSpecifier
private

Definition at line 1109 of file docparser.h.

Type DocParamSect::m_type
private

Definition at line 1107 of file docparser.h.


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