Line data Source code
1 : /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /* vim: set ts=8 sts=4 et sw=4 tw=99: */
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 : // If you include this file you must also include xpc_make_class.h at the top
8 : // of the file doing the including.
9 :
10 : #ifndef XPC_MAP_CLASSNAME
11 : #error "Must #define XPC_MAP_CLASSNAME before #including xpc_map_end.h"
12 : #endif
13 :
14 : #ifndef XPC_MAP_QUOTED_CLASSNAME
15 : #error "Must #define XPC_MAP_QUOTED_CLASSNAME before #including xpc_map_end.h"
16 : #endif
17 :
18 : #ifndef XPC_MAP_FLAGS
19 : #error "Must #define XPC_MAP_FLAGS before #including xpc_map_end.h"
20 : #endif
21 :
22 : #include "js/Id.h"
23 :
24 : /**************************************************************/
25 :
26 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::GetClassName(char * *aClassName)
27 : {
28 : static const char sName[] = XPC_MAP_QUOTED_CLASSNAME;
29 0 : *aClassName = (char*) nsMemory::Clone(sName, sizeof(sName));
30 0 : return NS_OK;
31 : }
32 :
33 : /**************************************************************/
34 :
35 : // virtual
36 : uint32_t
37 64200 : XPC_MAP_CLASSNAME::GetScriptableFlags()
38 : {
39 64200 : return (XPC_MAP_FLAGS);
40 : }
41 :
42 : // virtual
43 : const js::Class*
44 2683 : XPC_MAP_CLASSNAME::GetClass()
45 : {
46 : static const js::ClassOps classOps =
47 2683 : XPC_MAKE_CLASS_OPS(GetScriptableFlags());
48 : static const js::Class klass =
49 2683 : XPC_MAKE_CLASS(XPC_MAP_QUOTED_CLASSNAME, GetScriptableFlags(),
50 : &classOps);
51 2683 : return &klass;
52 : }
53 :
54 : // virtual
55 : const JSClass*
56 2683 : XPC_MAP_CLASSNAME::GetJSClass()
57 : {
58 2683 : return Jsvalify(GetClass());
59 : }
60 :
61 : /**************************************************************/
62 :
63 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_PRECREATE)
64 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::PreCreate(nsISupports* nativeObj, JSContext * cx, JSObject * globalObj, JSObject * *parentObj)
65 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
66 : #endif
67 :
68 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_GETPROPERTY)
69 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::GetProperty(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, jsid id, JS::Value * vp, bool* _retval)
70 0 : {NS_WARNING("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
71 : #endif
72 :
73 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_SETPROPERTY)
74 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::SetProperty(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, jsid id, JS::Value * vp, bool* _retval)
75 0 : {NS_WARNING("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
76 : #endif
77 :
78 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_NEWENUMERATE)
79 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::NewEnumerate(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, JS::AutoIdVector& properties, bool* _retval)
80 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
81 : #endif
82 :
83 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_ENUMERATE)
84 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::Enumerate(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, bool* _retval)
85 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
86 : #endif
87 :
88 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_RESOLVE)
89 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::Resolve(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, jsid id, bool* resolvedp, bool* _retval)
90 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
91 : #endif
92 :
93 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_FINALIZE)
94 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::Finalize(nsIXPConnectWrappedNative* wrapper, JSFreeOp * fop, JSObject * obj)
95 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
96 : #endif
97 :
98 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_CALL)
99 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::Call(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, const JS::CallArgs& args, bool* _retval)
100 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
101 : #endif
102 :
103 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_CONSTRUCT)
104 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::Construct(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, const JS::CallArgs& args, bool* _retval)
105 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
106 : #endif
107 :
108 : #if !((XPC_MAP_FLAGS) & XPC_SCRIPTABLE_WANT_HASINSTANCE)
109 0 : NS_IMETHODIMP XPC_MAP_CLASSNAME::HasInstance(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, JS::HandleValue val, bool* bp, bool* _retval)
110 0 : {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
111 : #endif
112 :
113 455 : NS_IMETHODIMP XPC_MAP_CLASSNAME::PostCreatePrototype(JSContext* cx, JSObject* proto)
114 455 : {return NS_OK;}
115 :
116 : /**************************************************************/
117 :
118 : #undef XPC_MAP_CLASSNAME
119 : #undef XPC_MAP_QUOTED_CLASSNAME
120 : #undef XPC_MAP_FLAGS
|