libwordring
|
CSS の構文解析に使われるコンテキスト [詳解]
#include <css_defs.hpp>
公開変数類 | |
std::map< std::u32string, std::u32string > | m_namespace_uris |
名前空間接頭辞 : 名前空間 URI のマップ | |
CSS の構文解析に使われるコンテキスト
構文規則を表現する複数のクラスを横断して情報を引き継ぐ必要が有るため、コンテキスト・クラスを作った。 例えば、 @namespace によって定義される名前空間は、後続の構文規則内で使われる。 CSS は CFG でないため、構文解析中に意味解析を必要とする場合がある。
名前空間のようなノードとの照合に使われるフィールドは照合時に引数の match_context へコピーする必要が有る。
構文解析の時点で文書形式に依存させないために、 match_context と別のクラスを設けた。 つまり、一つのセレクタで HTML と XHTML の両方に対応できることを明確に示す。