libwordring
公開型 | 公開メンバ関数 | フレンド | 全メンバ一覧
wordring::html::simple_node< String > クラステンプレート

公開型

enum  type_name : std::uint32_t {
  Element = 1, Text = 3, ProcessingInstruction = 7, Comment = 8,
  Document = 9, DocumentType = 10, DocumentFragment = 11
}
 ノードの型名を示す列挙体 [詳解]
 
using string_type = std::remove_cv_t< String >
 
using element_type = simple_element< string_type >
 
using text_type = simple_text< string_type >
 
using processing_instruction_type = simple_processing_instruction< string_type >
 
using comment_type = simple_comment< string_type >
 
using document_type = simple_document< string_type >
 
using document_type_type = simple_document_type< string_type >
 
using document_fragment_type = simple_document_fragment< string_type >
 
using attribute_type = simple_attr< string_type >
 
using attribute_iterator = typename element_type::iterator
 
using const_attribute_iterator = typename element_type::const_iterator
 
using value_type = std::variant< element_type, text_type, processing_instruction_type, comment_type, document_type, document_type_type, document_fragment_type >
 HTML のノードに相当する共用体
 

公開メンバ関数

 simple_node (simple_node const &)=default
 
 simple_node (simple_node &&)=default
 
 simple_node (element_type const &val)
 
 simple_node (element_type &&val)
 
 simple_node (text_type const &val)
 
 simple_node (text_type &&val)
 
 simple_node (processing_instruction_type const &val)
 
 simple_node (processing_instruction_type &&val)
 
 simple_node (comment_type const &val)
 
 simple_node (comment_type &&val)
 
 simple_node (document_type const &val)
 
 simple_node (document_type &&val)
 
 simple_node (document_type_type const &val)
 
 simple_node (document_type_type &&val)
 
 simple_node (document_fragment_type const &val)
 
 simple_node (document_fragment_type &&val)
 
simple_nodeoperator= (simple_node const &rhs)=default
 
simple_nodeoperator= (simple_node &&rhs)=default
 
type_name type () const
 
bool is_element () const
 
bool is_text () const
 
bool is_processing_instruction () const
 
bool is_comment () const
 
bool is_document () const
 
bool is_document_type () const
 
ns_name namespace_uri_name () const
 要素の名前空間 URI を返す
 
string_type namespace_uri () const
 要素の名前空間を返す
 
tag_name local_name_name () const
 要素のローカル名を返す
 
string_type local_name () const
 要素のローカル名を返す
 
string_type qualified_name () const
 
attribute_iterator begin ()
 属性の開始を返す
 
const_attribute_iterator begin () const
 属性の開始を返す
 
attribute_iterator end ()
 属性の終端を返す
 
const_attribute_iterator end () const
 属性の終端を返す
 
const_attribute_iterator find (ns_name ns, string_type const &prefix, string_type const &name) const
 属性を検索する [詳解]
 
const_attribute_iterator find (string_type const &name) const
 属性を検索する [詳解]
 
const_attribute_iterator find (attribute_name name) const
 属性を検索する [詳解]
 
bool contains (ns_name ns, string_type const &prefix, string_type const &name)
 
void push_back (attribute_type &&attr)
 属性を追加する
 
wordring::html::document_type_name document_type_name () const
 
void document_type_name (wordring::html::document_type_name type)
 文書ノードに文書形式を設定する [詳解]
 
wordring::html::document_mode_name document_mode_name () const
 
void document_mode_name (wordring::html::document_mode_name mode)
 文書ノードに文書モードを設定する [詳解]
 
string_type const & data () const
 ノードの文字列データを参照する
 
string_type & data ()
 ノードの文字列データを参照する [詳解]
 
string_type const & target () const
 
string_type const & name () const
 

フレンド

template<typename String1 >
bool operator== (simple_node< String1 > const lhs, simple_node< String1 > const &rhs)
 
template<typename String1 >
bool operator!= (simple_node< String1 > const lhs, simple_node< String1 > const &rhs)
 

列挙型メンバ詳解

◆ type_name

template<typename String >
enum wordring::html::simple_node::type_name : std::uint32_t
strong

ノードの型名を示す列挙体

インデックスが規格の NodeType と一致するように並べてある。

type index
simple_element 1
simple_text 3
simple_processing_instruction 7
simple_comment 8
simple_document 9
simple_document_type 10
simple_document_fragment 11

関数詳解

◆ find() [1/3]

template<typename String >
const_attribute_iterator wordring::html::simple_node< String >::find ( ns_name  ns,
string_type const &  prefix,
string_type const &  name 
) const
inline

属性を検索する

引数
[in]ns名前空間
[in]prefix名前空間接頭辞
[in]name属性名
戻り値
属性を指すイテレータ

node に格納される要素から、名前空間、接頭辞、名前が一致する属性を検索し返す。

参照
simple_element::find()

◆ find() [2/3]

template<typename String >
const_attribute_iterator wordring::html::simple_node< String >::find ( string_type const &  name) const
inline

属性を検索する

引数
[in]name属性名
戻り値
属性を指すイテレータ

node に格納される要素から、名前空間、接頭辞が空で、名前が一致する属性を検索し返す。

参照
simple_element::find()

◆ find() [3/3]

template<typename String >
const_attribute_iterator wordring::html::simple_node< String >::find ( attribute_name  name) const
inline

属性を検索する

引数
[in]name属性名
戻り値
属性を指すイテレータ

node に格納される要素から、名前空間、接頭辞が空で、名前が一致する属性を検索し返す。

参照
simple_element::find()

◆ document_type_name()

template<typename String >
void wordring::html::simple_node< String >::document_type_name ( wordring::html::document_type_name  type)
inline

文書ノードに文書形式を設定する

引数
[in]type文書形式( html あるいは xml )

◆ document_mode_name()

template<typename String >
void wordring::html::simple_node< String >::document_mode_name ( wordring::html::document_mode_name  mode)
inline

文書ノードに文書モードを設定する

引数
[in]mode文書モード( no_quirks、quirks、あるいは limited_quirks )

◆ data()

template<typename String >
string_type& wordring::html::simple_node< String >::data ( )
inline

ノードの文字列データを参照する

文字列データを持つノードは

  • text_type
  • comment_type
  • processing_instruction_type

std::back_inserterを使うには、可変な文字列コンテナへの参照が必要になる。


このクラス詳解は次のファイルから抽出されました: