Bug 1550804 - Add color scheme simulation to the inspector. r=pbro
[gecko.git] / layout / style / FontFaceSetIterator.h
blob9e64cc1d01cd3e78c0695998f472d32bb3c4c1a0
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/. */
7 #ifndef mozilla_dom_FontFaceSetIterator_h
8 #define mozilla_dom_FontFaceSetIterator_h
10 #include "mozilla/dom/FontFaceSet.h"
11 #include "mozilla/dom/FontFaceSetBinding.h"
12 #include "mozilla/dom/NonRefcountedDOMObject.h"
14 namespace mozilla {
15 namespace dom {
17 class FontFaceSetIterator final {
18 public:
19 FontFaceSetIterator(mozilla::dom::FontFaceSet* aFontFaceSet,
20 bool aIsKeyAndValue);
22 NS_DECL_CYCLE_COLLECTION_NATIVE_CLASS(FontFaceSetIterator)
23 NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(FontFaceSetIterator)
25 bool WrapObject(JSContext* aCx, JS::Handle<JSObject*> aGivenProto,
26 JS::MutableHandle<JSObject*> aReflector);
28 // WebIDL
29 void Next(JSContext* aCx, FontFaceSetIteratorResult& aResult,
30 mozilla::ErrorResult& aRv);
32 private:
33 ~FontFaceSetIterator();
35 RefPtr<FontFaceSet> mFontFaceSet;
36 uint32_t mNextIndex;
37 bool mIsKeyAndValue;
40 } // namespace dom
41 } // namespace mozilla
43 #endif // !defined(mozilla_dom_FontFaceSetIterator_h)