QtLingo 1
QtLingo is an Application to make Qt Computer Translations easier
base_node Struct Referenceabstract

base node. More...

#include <ts_model.h>

Inheritance diagram for base_node:
DTD_node document_node element_node TS_node

Public Types

enum  ENodeType { nt_Document = 0x10000000 , nt_DTD = 0x01000000 , nt_Element = 0x00001000 }
 
typedef std::shared_ptr< base_nodebase_node_ptr
 
typedef std::vector< base_node_ptrnodes_t
 

Public Member Functions

 base_node ()
 
virtual ENodeType kind () const =0
 
virtual void visit (const visitors::document_dump &visitor) const =0
 
virtual void visit (visitors::string_extractor_replacer &)
 
virtual void visit (visitors::back_string_replacer &visitor)=0
 
base_node_ptr add_child (base_node_ptr ptr)
 
base_node_ptr parent () const
 

Detailed Description

base node.

Definition at line 103 of file ts_model.h.

Member Typedef Documentation

◆ base_node_ptr

typedef std::shared_ptr<base_node> base_node::base_node_ptr

Definition at line 116 of file ts_model.h.

◆ nodes_t

typedef std::vector<base_node_ptr> base_node::nodes_t

Definition at line 117 of file ts_model.h.

Member Enumeration Documentation

◆ ENodeType

Enumerator
nt_Document 
nt_DTD 
nt_Element 

Definition at line 109 of file ts_model.h.

110 {
111 nt_Document = 0x10000000,
112 nt_DTD = 0x01000000,
113 nt_Element = 0x00001000
114 };
@ nt_Element
Definition: ts_model.h:113
@ nt_Document
Definition: ts_model.h:111

Constructor & Destructor Documentation

◆ base_node()

base_node::base_node ( )
inline

Definition at line 119 of file ts_model.h.

119: m_parent(nullptr) {}

Member Function Documentation

◆ add_child()

base_node_ptr base_node::add_child ( base_node_ptr  ptr)
inline

Definition at line 127 of file ts_model.h.

128 {
129 m_childs.push_back(ptr);
130 ptr->m_parent = shared_from_this();
131 return ptr;
132 }

◆ kind()

virtual ENodeType base_node::kind ( ) const
pure virtual

Implemented in document_node, DTD_node, and element_node.

◆ parent()

base_node_ptr base_node::parent ( ) const
inline

Definition at line 133 of file ts_model.h.

133{ return m_parent; }

◆ visit() [1/3]

virtual void base_node::visit ( const visitors::document_dump visitor) const
pure virtual

Implemented in document_node, DTD_node, and element_node.

◆ visit() [2/3]

virtual void base_node::visit ( visitors::back_string_replacer visitor)
pure virtual

Implemented in document_node, DTD_node, element_node, and TS_node.

◆ visit() [3/3]

virtual void base_node::visit ( visitors::string_extractor_replacer )
inlinevirtual

Reimplemented in document_node, DTD_node, and element_node.

Definition at line 124 of file ts_model.h.

124{}

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