libwordring
css_defs.hpp
1 #pragma once
2 
3 #include <wordring/html/html_defs.hpp>
4 
5 #include <map>
6 #include <optional>
7 #include <string>
8 #include <vector>
9 
10 namespace wordring::wwwc::css
11 {
24  {
27  std::map<std::u32string, std::u32string> m_namespace_uris;
28  };
29 
32  template <typename NodePointer>
34  {
35  using document_type_name = wordring::html::document_type_name;
37 
38  using node_pointer = NodePointer;
39  using traits = typename wordring::html::node_traits<node_pointer>;
40 
46  document_type_name m_type_name = static_cast<document_type_name>(0);
47 
54 
59  std::map<std::u32string, std::u32string> m_namespace_uris;
60 
69  node_pointer m_scoping_root = traits::pointer();
70 
76  std::vector<node_pointer> m_scope_elements;
77  };
78 
79 }
wordring::wwwc::css::match_context::m_namespace_uris
std::map< std::u32string, std::u32string > m_namespace_uris
名前空間接頭辞 : 名前空間 URI のマップ
Definition: css_defs.hpp:59
wordring::wwwc::css::match_context::m_mode_name
document_mode_name m_mode_name
文書モード
Definition: css_defs.hpp:53
wordring::html::node_traits
HTMLノードへの操作を仲介するアダプタ
Definition: html/html_defs.hpp:29
wordring::wwwc::css::parse_context::m_namespace_uris
std::map< std::u32string, std::u32string > m_namespace_uris
名前空間接頭辞 : 名前空間 URI のマップ
Definition: css_defs.hpp:27
wordring::wwwc::css::match_context::m_scope_elements
std::vector< node_pointer > m_scope_elements
scope 要素
Definition: css_defs.hpp:76
wordring::wwwc::css::match_context::m_type_name
document_type_name m_type_name
文書型
Definition: css_defs.hpp:46
wordring::wwwc::css
wordring::wwwc::css::match_context::m_scoping_root
node_pointer m_scoping_root
root 要素
Definition: css_defs.hpp:69
wordring::wwwc::css::match_context
CSS セレクタとノードの照合に使われるコンテキスト
Definition: css_defs.hpp:33
wordring::wwwc::css::parse_context
CSS の構文解析に使われるコンテキスト
Definition: css_defs.hpp:23
wordring::whatwg::html::document_mode_name
document_mode_name
Definition: whatwg/html/html_defs.hpp:28