Coverage Report

Created: 2018-09-25 14:53

/work/obj-fuzz/dist/include/mozilla/dom/CSSFontFeatureValuesRule.h
Line
Count
Source (jump to first uncovered line)
1
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
3
/* This Source Code Form is subject to the terms of the Mozilla Public
4
 * License, v. 2.0. If a copy of the MPL was not distributed with this
5
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7
#ifndef mozilla_dom_CSSFontFeatureValuesRule_h
8
#define mozilla_dom_CSSFontFeatureValuesRule_h
9
10
#include "mozilla/css/Rule.h"
11
#include "mozilla/ServoBindingTypes.h"
12
13
#include "nsICSSDeclaration.h"
14
15
namespace mozilla {
16
namespace dom {
17
18
class CSSFontFeatureValuesRule final : public css::Rule
19
{
20
public:
21
  CSSFontFeatureValuesRule(RefPtr<RawServoFontFeatureValuesRule> aRawRule,
22
                           StyleSheet* aSheet,
23
                           css::Rule* aParentRule,
24
                           uint32_t aLine,
25
                           uint32_t aColumn)
26
    : css::Rule(aSheet, aParentRule, aLine, aColumn)
27
    , mRawRule(std::move(aRawRule))
28
0
  {
29
0
  }
30
31
  virtual bool IsCCLeaf() const override;
32
33
0
  RawServoFontFeatureValuesRule* Raw() const { return mRawRule; }
34
35
  // WebIDL interfaces
36
0
  uint16_t Type() const final { return CSSRule_Binding::FONT_FEATURE_VALUES_RULE; }
37
  void GetCssText(nsAString& aCssText) const override;
38
  void GetFontFamily(nsAString& aFamily);
39
  void SetFontFamily(const nsAString& aFamily, mozilla::ErrorResult& aRv);
40
  void GetValueText(nsAString& aValueText);
41
  void SetValueText(const nsAString& aValueText, mozilla::ErrorResult& aRv);
42
43
  size_t SizeOfIncludingThis(mozilla::MallocSizeOf aMallocSizeOf) const override;
44
45
#ifdef DEBUG
46
  void List(FILE* out = stdout, int32_t aIndent = 0) const final;
47
#endif
48
49
  JSObject*
50
  WrapObject(JSContext* aCx, JS::Handle<JSObject*> aGivenProto) override;
51
52
private:
53
0
  ~CSSFontFeatureValuesRule() = default;
54
55
  RefPtr<RawServoFontFeatureValuesRule> mRawRule;
56
};
57
58
} // namespace dom
59
} // namespace mozilla
60
61
#endif // mozilla_dom_CSSFontFeatureValuesRule_h