libwordring
公開型 | 公開メンバ関数 | 静的公開メンバ関数 | 全メンバ一覧
wordring::wwwc::css::compound_selector クラス

<compound-selector> [詳解]

#include <grammar.hpp>

wordring::wwwc::css::compound_selector の継承関係図
wordring::wwwc::css::selector_grammar

公開型

using const_iterator = syntax_primitive_stream::const_iterator
 
using value_type = std::variant< type_selector, subclass_selector, pseudo_element_selector, pseudo_class_selector >
 
- 基底クラス wordring::wwwc::css::selector_grammar に属する継承公開型
using const_iterator = syntax_primitive_stream::const_iterator
 
using document_type_name = wordring::html::document_type_name
 
using document_mode_name = wordring::html::document_mode_name
 

公開メンバ関数

 compound_selector (const_iterator first, const_iterator last, std::vector< value_type > &&value)
 
std::vector< value_type > const & value () const
 
template<typename NodePointer >
bool match (NodePointer const &np, match_context< NodePointer > const &ctx) const
 ノードにマッチするか検査する [詳解]
 
- 基底クラス wordring::wwwc::css::selector_grammar に属する継承公開メンバ関数
 selector_grammar (selector_grammar const &)=default
 
 selector_grammar (selector_grammar &&)=default
 
 selector_grammar (const_iterator first, const_iterator last)
 
selector_grammaroperator= (selector_grammar const &)=default
 
selector_grammaroperator= (selector_grammar &&)=default
 
 operator bool () const
 
bool operator! () const
 
const_iterator begin () const
 
const_iterator end () const
 

静的公開メンバ関数

static compound_selector consume (syntax_primitive_stream in, parse_context &ctx)
 

その他の継承メンバ

- 基底クラス wordring::wwwc::css::selector_grammar に属する継承限定公開変数類
const_iterator m_first
 構文解析時に部分セレクタが消費した入力の先頭
 
const_iterator m_last
 構文解析時に部分セレクタが消費した入力の終端
 

詳解

<compound-selector>

<compound-selector> = [ <type-selector>? <subclass-selector>*
[ <pseudo-element-selector> <pseudo-class-selector>* ]* ]!

Compound セレクタは、すべての単体セレクタとマッチするとき、全体とマッチする。 したがって、順番のような単体セレクタ同士の関係性が無いので、構造を保存せず、単体セレクタのリストとして値を保持することとした。

参照
selector_list
https://drafts.csswg.org/selectors-4/#typedef-compound-selector
https://triple-underscore.github.io/selectors4-ja.html#typedef-compound-selector

関数詳解

◆ match()

template<typename NodePointer >
bool wordring::wwwc::css::compound_selector::match ( NodePointer const &  np,
match_context< NodePointer > const &  ctx 
) const
inline

ノードにマッチするか検査する

参照
id_selector::match()

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