StyleRule.h 723 B

123456789101112131415161718192021222324
  1. #pragma once
  2. #include <AK/NonnullRefPtrVector.h>
  3. #include <LibHTML/CSS/Selector.h>
  4. #include <LibHTML/CSS/StyleDeclaration.h>
  5. class StyleRule : public RefCounted<StyleRule> {
  6. public:
  7. static NonnullRefPtr<StyleRule> create(Vector<Selector>&& selectors, NonnullRefPtr<StyleDeclaration>&& declaration)
  8. {
  9. return adopt(*new StyleRule(move(selectors), move(declaration)));
  10. }
  11. ~StyleRule();
  12. const Vector<Selector>& selectors() const { return m_selectors; }
  13. const StyleDeclaration& declaration() const { return m_declaration; }
  14. private:
  15. StyleRule(Vector<Selector>&&, NonnullRefPtr<StyleDeclaration>&&);
  16. Vector<Selector> m_selectors;
  17. NonnullRefPtr<StyleDeclaration> m_declaration;
  18. };