MD::Document

Search for usage in LXR

MD::Document< Trait > Class Template Referencefinal

#include <doc.h>

Inheritance diagram for MD::Document< Trait >:

Public Types

using Footnotes = typename Trait::template Map<typename Trait::String, FootnoteSharedPointer>
 
using FootnoteSharedPointer = std::shared_ptr<Footnote<Trait>>
 
using HeadingSharedPointer = std::shared_ptr<Heading<Trait>>
 
using LabeledHeadings = typename Trait::template Map<typename Trait::String, HeadingSharedPointer>
 
using LabeledLinks = typename Trait::template Map<typename Trait::String, LinkSharedPointer>
 
using LinkSharedPointer = std::shared_ptr<Link<Trait>>
 
- Public Types inherited from MD::Block< Trait >
using Items = typename Trait::template Vector<ItemSharedPointer>
 
using ItemSharedPointer = std::shared_ptr<Item<Trait>>
 

Public Member Functions

 Document ()=default
 
 ~Document () override=default
 
std::shared_ptr< Item< Trait > > clone (Document< Trait > *doc=nullptr) const override
 
const FootnotesfootnotesMap () const
 
void insertFootnote (const typename Trait::String &id, FootnoteSharedPointer fn)
 
void insertLabeledHeading (const typename Trait::String &label, HeadingSharedPointer h)
 
void insertLabeledLink (const typename Trait::String &label, LinkSharedPointer lnk)
 
const LabeledHeadingslabeledHeadings () const
 
const LabeledLinkslabeledLinks () const
 
ItemType type () const override
 
- Public Member Functions inherited from MD::Block< Trait >
 ~Block () override=default
 
void appendItem (ItemSharedPointer i)
 
void applyBlock (const Block< Trait > &other, Document< Trait > *doc=nullptr)
 
ItemSharedPointer getItemAt (long long int idx) const
 
void insertItem (long long int idx, ItemSharedPointer i)
 
bool isEmpty () const
 
const Itemsitems () const
 
void removeItemAt (long long int idx)
 
- Public Member Functions inherited from MD::Item< Trait >
 ~Item () override=default
 
- Public Member Functions inherited from MD::WithPosition
 WithPosition ()=default
 
 WithPosition (long long int startColumn, long long int startLine, long long int endColumn, long long int endLine)
 
virtual ~WithPosition ()=default
 
void applyPositions (const WithPosition &other)
 
long long int endColumn () const
 
long long int endLine () const
 
void setEndColumn (long long int c)
 
void setEndLine (long long int l)
 
void setStartColumn (long long int c)
 
void setStartLine (long long int l)
 
long long int startColumn () const
 
long long int startLine () const
 

Additional Inherited Members

- Protected Member Functions inherited from MD::Block< Trait >
 Block ()=default
 
- Protected Member Functions inherited from MD::Item< Trait >
 Item ()=default
 

Detailed Description

template<class Trait>
class MD::Document< Trait >

Document.

Definition at line 1773 of file doc.h.

Member Typedef Documentation

◆ Footnotes

template<class Trait >
using MD::Document< Trait >::Footnotes = typename Trait::template Map<typename Trait::String, FootnoteSharedPointer>

Type of a map of footnotes.

Definition at line 1809 of file doc.h.

◆ FootnoteSharedPointer

template<class Trait >
using MD::Document< Trait >::FootnoteSharedPointer = std::shared_ptr<Footnote<Trait>>

Type of a smart pointer to footnote.

Definition at line 1807 of file doc.h.

◆ HeadingSharedPointer

template<class Trait >
using MD::Document< Trait >::HeadingSharedPointer = std::shared_ptr<Heading<Trait>>

Type of a smart pointer to heading.

Definition at line 1841 of file doc.h.

◆ LabeledHeadings

template<class Trait >
using MD::Document< Trait >::LabeledHeadings = typename Trait::template Map<typename Trait::String, HeadingSharedPointer>

Type of a map of headings.

Definition at line 1843 of file doc.h.

◆ LabeledLinks

template<class Trait >
using MD::Document< Trait >::LabeledLinks = typename Trait::template Map<typename Trait::String, LinkSharedPointer>

Type of a map of shortcut links.

Definition at line 1826 of file doc.h.

◆ LinkSharedPointer

template<class Trait >
using MD::Document< Trait >::LinkSharedPointer = std::shared_ptr<Link<Trait>>

Type of a smart pointer to link.

Definition at line 1824 of file doc.h.

Constructor & Destructor Documentation

◆ Document()

template<class Trait >
MD::Document< Trait >::Document ( )
default

◆ ~Document()

template<class Trait >
MD::Document< Trait >::~Document ( )
overridedefault

Member Function Documentation

◆ clone()

template<class Trait >
std::shared_ptr< Item< Trait > > MD::Document< Trait >::clone ( Document< Trait > * doc = nullptr) const
inlineoverridevirtual

Clone this document.

Implements MD::Item< Trait >.

Definition at line 1786 of file doc.h.

◆ footnotesMap()

template<class Trait >
const Footnotes & MD::Document< Trait >::footnotesMap ( ) const
inline
Returns
Map of footnotes.

Definition at line 1812 of file doc.h.

◆ insertFootnote()

template<class Trait >
void MD::Document< Trait >::insertFootnote ( const typename Trait::String & id,
FootnoteSharedPointer fn )
inline

Insert footnote with the give ID.

Definition at line 1818 of file doc.h.

◆ insertLabeledHeading()

template<class Trait >
void MD::Document< Trait >::insertLabeledHeading ( const typename Trait::String & label,
HeadingSharedPointer h )
inline

Insert heading with the given label.

Definition at line 1852 of file doc.h.

◆ insertLabeledLink()

template<class Trait >
void MD::Document< Trait >::insertLabeledLink ( const typename Trait::String & label,
LinkSharedPointer lnk )
inline

Insert shortcut link with the given label.

Definition at line 1835 of file doc.h.

◆ labeledHeadings()

template<class Trait >
const LabeledHeadings & MD::Document< Trait >::labeledHeadings ( ) const
inline
Returns
Map of headings.

Definition at line 1846 of file doc.h.

◆ labeledLinks()

template<class Trait >
const LabeledLinks & MD::Document< Trait >::labeledLinks ( ) const
inline
Returns
Map of shortcut links.

Definition at line 1829 of file doc.h.

◆ type()

template<class Trait >
ItemType MD::Document< Trait >::type ( ) const
inlineoverridevirtual
Returns
Type of the item.

Implements MD::Item< Trait >.

Definition at line 1780 of file doc.h.


The documentation for this class was generated from the following file:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Nov 29 2024 11:57:11 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.