Doxygen XLinks
by
V: 2511R0
Website: doxygen
Loading...
Searching...
No Matches
dxl::Index::Node Struct Reference

Description:

The cursor type of the StringTree.

Definition at line 105 of file index.hpp.

#include <index.hpp>

Inheritance diagram for dxl::Index::Node:

Public Method Index:

 Node ()=default
 Defaulted default constructor. Creates an invalid node.
 Node (Cursor &&other)
 Node (Cursor &other)
CursorAsCursor ()
template<typename TGT, typename TCheck = alib::CHK>
const TGT * Cast () const
const alib::StringHTMLFile () const
Index & Index () const
bool IsA (Target::Kinds kind) const
Target::Kinds Kind () const
int LineNo () const
bool operator!= (const Node &other) const
bool operator== (const Node &other) const
Node Parent ()
Node Parent () const
alib::strings::TAString< cmTree::CharacterType, alib::lang::HeapAllocator > & Path (alib::strings::TAString< cmTree::CharacterType > &targetString, alib::lang::CurrentData targetData=alib::lang::CurrentData::Clear) const
alib::strings::TAString< cmTree::CharacterType, alib::lang::HeapAllocator > & Path (alib::strings::TAString< cmTree::CharacterType > &targetString, Node &parent) const
void ReplaceTarget (class Target *newTarget)
class Target * Target ()
const Target * Target () const

Constructor(s) / Destructor Details:

◆ Node() [1/2]

dxl::Index::Node::Node ( Cursor && other)
inline

Move constructor from underlying cursor type.

Parameters
otherThe cursor to move.

Definition at line 112 of file index.hpp.

◆ Node() [2/2]

dxl::Index::Node::Node ( Cursor & other)
inline

Copy constructor from underlying cursor type.

Parameters
otherThe cursor to copy.

Definition at line 116 of file index.hpp.

Method Details:

◆ AsCursor()

Cursor & dxl::Index::Node::AsCursor ( )
inline

Cast to to protected parent StringTree::Cursor.

Returns
The cast cursor.

Definition at line 223 of file index.hpp.

◆ Cast()

template<typename TGT, typename TCheck = alib::CHK>
const TGT * dxl::Index::Node::Cast ( ) const
inline

Shortcut to Cast(const Target*) passing this's value.

Template Parameters
TGTThe requested target type.
TCheckIf NC is given, no check whether the right kind is contained in this node is performed. Defaults to CHK.
Returns
The cast type or nullptr if the node's target is not of the requested type.

Definition at line 212 of file index.hpp.

◆ HTMLFile()

const alib::String & dxl::Index::Node::HTMLFile ( ) const
inline

The HTML file that this node links to (or into).

Returns
The HTML file name.

Definition at line 187 of file index.hpp.

◆ Index()

Index & dxl::Index::Node::Index ( ) const
inline

Returns the Index that this Node belongs to.

Returns
The index that this object refers to.

Definition at line 173 of file index.hpp.

◆ IsA()

bool dxl::Index::Node::IsA ( Target::Kinds kind) const
inline

Tests if this node holds a target is of a given aKind.

Parameters
kindThe kind to test this instance for.
Returns
The result of Target()->IsA.

Definition at line 197 of file index.hpp.

◆ Kind()

Target::Kinds dxl::Index::Node::Kind ( ) const
inline

Returns the kind of this target. The result may be used to cast a pointer to the corresponding descendant

Returns
The kind of this target.

Definition at line 192 of file index.hpp.

◆ LineNo()

int dxl::Index::Node::LineNo ( ) const
inline

Returns the line number in the tag-file that this node created.

Returns
The line number in the tag-file.

Definition at line 183 of file index.hpp.

◆ operator!=()

bool dxl::Index::Node::operator!= ( const Node & other) const
inline

Comparison operator.

Parameters
otherThe object to compare ourselves to.
Returns
false if this and the given cursor are equal, true otherwise.

Definition at line 138 of file index.hpp.

◆ operator==()

bool dxl::Index::Node::operator== ( const Node & other) const
inline

Comparison operator.

Parameters
otherThe object to compare ourselves to.
Returns
true if this and the given cursor are equal, false otherwise.

Definition at line 130 of file index.hpp.

◆ Parent() [1/2]

Node dxl::Index::Node::Parent ( )
inline

Gets the parent node by calling TCursor::Parent.

Returns
The parent node.

Definition at line 120 of file index.hpp.

◆ Parent() [2/2]

Node dxl::Index::Node::Parent ( ) const
inline

Gets the parent node by calling TCursor::Parent.

Returns
The parent node.

Definition at line 124 of file index.hpp.

◆ Path() [1/2]

alib::strings::TAString< cmTree::CharacterType, alib::lang::HeapAllocator > & dxl::Index::Node::Path ( alib::strings::TAString< cmTree::CharacterType > & targetString,
alib::lang::CurrentData targetData = alib::lang::CurrentData::Clear ) const
inline

Calls the parent method and then replaces the separator characters accordingly.

Parameters
targetStringThe string buffer to append the path to.
targetDataDenotes whether target should be cleared before appending the path. Defaults to CurrentData::Clear.
Returns
The given AString to allow concatenated operations.

Definition at line 146 of file index.hpp.

◆ Path() [2/2]

alib::strings::TAString< cmTree::CharacterType, alib::lang::HeapAllocator > & dxl::Index::Node::Path ( alib::strings::TAString< cmTree::CharacterType > & targetString,
Node & parent ) const
inline

Calls the parent method and then replaces the separator charachters accordingly.

Parameters
targetStringThe string buffer to append the path to.
parentDenotes the parent node to start a relative path from.
Returns
The given AString to allow concatenated operations.

Definition at line 162 of file index.hpp.

◆ ReplaceTarget()

void dxl::Index::Node::ReplaceTarget ( class Target * newTarget)
inline

While usually targets are never replaced, this method is only exclamatory used. For example, with the method DoxygenXLinks::tryResolveHTMLTargetFile.

Parameters
newTargetThe new target to set.

Definition at line 203 of file index.hpp.

◆ Target() [1/2]

class Target * dxl::Index::Node::Target ( )
inline
Returns
The target that this node refers to.

Definition at line 179 of file index.hpp.

◆ Target() [2/2]

const Target * dxl::Index::Node::Target ( ) const
inline
Returns
The target that this node refers to.

Definition at line 176 of file index.hpp.


The documentation for this struct was generated from the following file: