Skip to main content

The DocHtmlDetails Class Reference

Node Html details. More...

Declaration

class DocHtmlDetails { ... }

Included Headers

#include <src/docnode.h>

Base class

classDocCompoundNode

Base class for nodes with children. More...

Public Constructors Index

DocHtmlDetails (DocParser *parser, DocNodeVariant *parent, const HtmlAttribList &attribs)

Public Member Functions Index

const HtmlAttribList &attribs () const
Tokenparse ()
voidparseSummary (DocNodeVariant *, HtmlAttribList &attribs)
const DocNodeVariant *summary () const

Private Member Attributes Index

HtmlAttribListm_attribs
std::unique_ptr< DocNodeVariant >m_summary

Description

Node Html details.

Definition at line 856 of file docnode.h.

Public Constructors

DocHtmlDetails()

DocHtmlDetails::DocHtmlDetails (DocParser * parser, DocNodeVariant * parent, const HtmlAttribList & attribs)
inline

Public Member Functions

attribs()

const HtmlAttribList & DocHtmlDetails::attribs ()
inline

Definition at line 861 of file docnode.h.

861 const HtmlAttribList &attribs() const { return m_attribs; }

Reference m_attribs.

Referenced by DocHtmlDetails, HtmlDocVisitor::operator() and parseSummary.

parse()

Token DocHtmlDetails::parse ()

Declaration at line 862 of file docnode.h, definition at line 1444 of file docnode.cpp.

1445{
1446 AUTO_TRACE();
1447 Token retval(TokenRetval::TK_NONE);
1448 auto ns = AutoNodeStack(parser(),thisVariant());
1449
1450 // parse one or more paragraphs
1451 bool isFirst=TRUE;
1452 DocPara *par=nullptr;
1453 do
1454 {
1456 par = children().get_last<DocPara>();
1457 if (isFirst) { par->markFirst(); isFirst=FALSE; }
1458 retval=par->parse();
1459 }
1460 while (retval.is(TokenRetval::TK_NEWPARA));
1461 if (par) par->markLast();
1462
1463 if (retval.is_any_of(TokenRetval::TK_NONE,TokenRetval::TK_EOF))
1464 {
1465 warn_doc_error(parser()->context.fileName,parser()->tokenizer.getLineNr(),"unexpected end of comment while inside <details> block");
1466 }
1467
1468 if (!summary())
1469 {
1470 HtmlAttribList summaryAttribs;
1472 DocHtmlSummary *summary = &std::get<DocHtmlSummary>(*m_summary);
1473 summary->children().append<DocWord>(parser(),thisVariant(),theTranslator->trDetails());
1474 }
1475 AUTO_TRACE_EXIT("retval={}",retval.to_string());
1476 return retval.is(TokenRetval::RetVal_EndHtmlDetails) ? Token::make_RetVal_OK() : retval;
1477}

References DocNodeList::append, AUTO_TRACE, AUTO_TRACE_EXIT, DocCompoundNode::children, createDocNode, FALSE, DocNodeList::get_last, Token::is, Token::is_any_of, m_summary, DocPara::markFirst, DocPara::markLast, DocPara::parse, DocNode::parser, summary, theTranslator, DocNode::thisVariant, Token::to_string, TRUE and warn_doc_error.

parseSummary()

void DocHtmlDetails::parseSummary (DocNodeVariant * parent, HtmlAttribList & attribs)

Declaration at line 863 of file docnode.h, definition at line 1479 of file docnode.cpp.

References attribs, AUTO_TRACE, createDocNode, m_summary, DocNode::parent, DocNode::parser and summary.

Referenced by DocPara::handleHtmlStartTag.

summary()

const DocNodeVariant * DocHtmlDetails::summary ()
inline

Private Member Attributes

m_attribs

HtmlAttribList DocHtmlDetails::m_attribs

Definition at line 867 of file docnode.h.

Referenced by attribs and DocHtmlDetails.

m_summary

std::unique_ptr<DocNodeVariant> DocHtmlDetails::m_summary

Definition at line 868 of file docnode.h.

868 std::unique_ptr<DocNodeVariant> m_summary;

Referenced by parse, parseSummary and summary.


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


Generated via doxygen2docusaurus by Doxygen 1.14.0.