Copy as Markdown

Other Tools

/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/widget/nsIJumpListBuilder.idl
*/
#ifndef __gen_nsIJumpListBuilder_h__
#define __gen_nsIJumpListBuilder_h__
#include "nsISupports.h"
#include "nsTArray.h"
#include "js/Value.h"
#include "js/GCAnnotations.h"
/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIURI; /* forward declaration */
/* starting interface: nsIJumpListBuilder */
#define NS_IJUMPLISTBUILDER_IID_STR "5769f08d-0303-4e38-8fe6-86b5473022f6"
#define NS_IJUMPLISTBUILDER_IID \
{0x5769f08d, 0x0303, 0x4e38, \
{ 0x8f, 0xe6, 0x86, 0xb5, 0x47, 0x30, 0x22, 0xf6 }}
class NS_NO_VTABLE nsIJumpListBuilder : public nsISupports {
public:
NS_DECLARE_STATIC_IID_ACCESSOR(NS_IJUMPLISTBUILDER_IID)
/* Used by ToJSValue to check which scriptable interface is implemented. */
using ScriptableInterfaceType = nsIJumpListBuilder;
/* AString obtainAndCacheFavicon (in nsIURI faviconURL); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ObtainAndCacheFavicon(nsIURI *faviconURL, nsAString& _retval) = 0;
/* [implicit_jscontext] Promise isAvailable (); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD IsAvailable(JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [implicit_jscontext] Promise checkForRemovals (); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD CheckForRemovals(JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [implicit_jscontext] Promise populateJumpList (in Array<jsval> aTaskDescriptions, in AString aCustomTitle, in Array<jsval> aCustomDescriptions); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD PopulateJumpList(const nsTArray<JS::Value >& aTaskDescriptions, const nsAString& aCustomTitle, const nsTArray<JS::Value >& aCustomDescriptions, JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [implicit_jscontext] Promise clearJumpList (); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ClearJumpList(JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
};
NS_DEFINE_STATIC_IID_ACCESSOR(nsIJumpListBuilder, NS_IJUMPLISTBUILDER_IID)
/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIJUMPLISTBUILDER \
NS_IMETHOD ObtainAndCacheFavicon(nsIURI *faviconURL, nsAString& _retval) override; \
NS_IMETHOD IsAvailable(JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
NS_IMETHOD CheckForRemovals(JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
NS_IMETHOD PopulateJumpList(const nsTArray<JS::Value >& aTaskDescriptions, const nsAString& aCustomTitle, const nsTArray<JS::Value >& aCustomDescriptions, JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
NS_IMETHOD ClearJumpList(JSContext* cx, ::mozilla::dom::Promise * * _retval) override;
/* Use this macro when declaring the members of this interface when the
class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIJUMPLISTBUILDER \
nsresult ObtainAndCacheFavicon(nsIURI *faviconURL, nsAString& _retval); \
nsresult IsAvailable(JSContext* cx, ::mozilla::dom::Promise * * _retval); \
nsresult CheckForRemovals(JSContext* cx, ::mozilla::dom::Promise * * _retval); \
nsresult PopulateJumpList(const nsTArray<JS::Value >& aTaskDescriptions, const nsAString& aCustomTitle, const nsTArray<JS::Value >& aCustomDescriptions, JSContext* cx, ::mozilla::dom::Promise * * _retval); \
nsresult ClearJumpList(JSContext* cx, ::mozilla::dom::Promise * * _retval);
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIJUMPLISTBUILDER(_to) \
NS_IMETHOD ObtainAndCacheFavicon(nsIURI *faviconURL, nsAString& _retval) override { return _to ObtainAndCacheFavicon(faviconURL, _retval); } \
NS_IMETHOD IsAvailable(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to IsAvailable(cx, _retval); } \
NS_IMETHOD CheckForRemovals(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to CheckForRemovals(cx, _retval); } \
NS_IMETHOD PopulateJumpList(const nsTArray<JS::Value >& aTaskDescriptions, const nsAString& aCustomTitle, const nsTArray<JS::Value >& aCustomDescriptions, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to PopulateJumpList(aTaskDescriptions, aCustomTitle, aCustomDescriptions, cx, _retval); } \
NS_IMETHOD ClearJumpList(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to ClearJumpList(cx, _retval); }
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIJUMPLISTBUILDER(_to) \
NS_IMETHOD ObtainAndCacheFavicon(nsIURI *faviconURL, nsAString& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ObtainAndCacheFavicon(faviconURL, _retval); } \
NS_IMETHOD IsAvailable(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsAvailable(cx, _retval); } \
NS_IMETHOD CheckForRemovals(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckForRemovals(cx, _retval); } \
NS_IMETHOD PopulateJumpList(const nsTArray<JS::Value >& aTaskDescriptions, const nsAString& aCustomTitle, const nsTArray<JS::Value >& aCustomDescriptions, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->PopulateJumpList(aTaskDescriptions, aCustomTitle, aCustomDescriptions, cx, _retval); } \
NS_IMETHOD ClearJumpList(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearJumpList(cx, _retval); }
#endif /* __gen_nsIJumpListBuilder_h__ */