Bug 1852740: add tests for the `fetchpriority` attribute in Link headers. r=necko...
[gecko.git] / dom / base / PlacesEvent.h
blob4df74f52c733305016e45d76cc8fa3beff7d714f
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 file,
5 * You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #ifndef mozilla_dom_PlacesEvent_h
8 #define mozilla_dom_PlacesEvent_h
10 #include "mozilla/dom/PlacesEventBinding.h"
11 #include "nsWrapperCache.h"
13 namespace mozilla {
14 class ErrorResult;
16 namespace dom {
18 class PlacesEvent : public nsWrapperCache {
19 public:
20 explicit PlacesEvent(PlacesEventType aType) : mType(aType) {}
22 static already_AddRefed<PlacesEvent> Constructor(const GlobalObject& aGlobal,
23 PlacesEventType aType,
24 ErrorResult& aRv);
26 NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(PlacesEvent)
27 NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(PlacesEvent)
29 nsISupports* GetParentObject() const;
31 JSObject* WrapObject(JSContext* aCx,
32 JS::Handle<JSObject*> aGivenProto) override;
34 PlacesEventType Type() const { return mType; }
36 virtual const PlacesVisit* AsPlacesVisit() const { return nullptr; }
37 virtual const PlacesBookmark* AsPlacesBookmark() const { return nullptr; }
38 virtual const PlacesBookmarkAddition* AsPlacesBookmarkAddition() const {
39 return nullptr;
41 virtual const PlacesBookmarkRemoved* AsPlacesBookmarkRemoved() const {
42 return nullptr;
44 virtual const PlacesBookmarkMoved* AsPlacesBookmarkMoved() const {
45 return nullptr;
47 virtual const PlacesBookmarkGuid* AsPlacesBookmarkGuid() const {
48 return nullptr;
50 virtual const PlacesBookmarkKeyword* AsPlacesBookmarkKeyword() const {
51 return nullptr;
53 virtual const PlacesBookmarkTags* AsPlacesBookmarkTags() const {
54 return nullptr;
56 virtual const PlacesBookmarkTime* AsPlacesBookmarkTime() const {
57 return nullptr;
59 virtual const PlacesBookmarkTitle* AsPlacesBookmarkTitle() const {
60 return nullptr;
62 virtual const PlacesBookmarkUrl* AsPlacesBookmarkUrl() const {
63 return nullptr;
65 virtual const PlacesFavicon* AsPlacesFavicon() const { return nullptr; }
66 virtual const PlacesVisitTitle* AsPlacesVisitTitle() const { return nullptr; }
67 virtual const PlacesHistoryCleared* AsPlacesHistoryCleared() const {
68 return nullptr;
70 virtual const PlacesRanking* AsPlacesRanking() const { return nullptr; }
71 virtual const PlacesVisitRemoved* AsPlacesVisitRemoved() const {
72 return nullptr;
74 virtual const PlacesPurgeCaches* AsPlacesPurgeCaches() const {
75 return nullptr;
78 protected:
79 virtual ~PlacesEvent() = default;
80 PlacesEventType mType;
83 } // namespace dom
84 } // namespace mozilla
86 #endif // mozilla_dom_PlacesEvent_h