Bug 560643 - Add a special jsval type to XPIDL. Part 2, manual IDL cleanup. r+sr=jst.
authorJason Orendorff <jorendorff@mozilla.com>
Wed, 12 May 2010 08:19:22 -0500
changeset 42676 ccf4b3b2317cf0ef0e126efdaa0e835a33bc14de
parent 42675 bff36a551ab7ef270abeaab81bcf690c2d08cf94
child 42677 defea9871746d46d12ac01bd5186b47e55f2c50f
push idunknown
push userunknown
push dateunknown
bugs560643
milestone1.9.3a5pre
Bug 560643 - Add a special jsval type to XPIDL. Part 2, manual IDL cleanup. r+sr=jst.
dom/interfaces/json/nsIJSON.idl
embedding/components/windowwatcher/public/nsPIWindowWatcher.idl
js/jsd/idl/jsdIDebuggerService.idl
js/src/xpconnect/idl/nsIXPCSecurityManager.idl
xpcom/base/nsrootidl.idl
xpcom/ds/nsIVariant.idl
--- a/dom/interfaces/json/nsIJSON.idl
+++ b/dom/interfaces/json/nsIJSON.idl
@@ -41,17 +41,16 @@
 interface nsIInputStream;
 interface nsIOutputStream;
 interface nsIScriptGlobalObject;
 
 %{ C++
 #include "jspubtd.h"
 %}
 
-      native jsval(jsval);
 [ptr] native JSValPtr(jsval);
 [ptr] native JSContext(JSContext);
 
 /**
  * Encode and decode JSON text.
  */
 [scriptable, uuid(6fcf09ee-87d0-42ec-a72a-8d60114e974f)]
 interface nsIJSON : nsISupports
--- a/embedding/components/windowwatcher/public/nsPIWindowWatcher.idl
+++ b/embedding/components/windowwatcher/public/nsPIWindowWatcher.idl
@@ -47,18 +47,16 @@ interface nsISimpleEnumerator;
 interface nsIWebBrowserChrome;
 interface nsIDocShellTreeItem;
 interface nsIArray;
 
 %{C++
 #include "jspubtd.h"
 %}
 
-[ptr] native jsvalptr(jsval);
-
 [uuid(8624594a-28d7-4bc3-8d12-b1c2b9eefd90)]
 
 interface nsPIWindowWatcher : nsISupports
 {
   /** A window has been created. Add it to our list.
       @param aWindow the window to add
       @param aChrome the corresponding chrome window. The DOM window
                      and chrome will be mapped together, and the corresponding
--- a/js/jsd/idl/jsdIDebuggerService.idl
+++ b/js/jsd/idl/jsdIDebuggerService.idl
@@ -48,17 +48,16 @@
 [ptr] native JSDObject(JSDObject);
 [ptr] native JSDProperty(JSDProperty);
 [ptr] native JSDScript(JSDScript);
 [ptr] native JSDStackFrameInfo(JSDStackFrameInfo);
 [ptr] native JSDThreadState(JSDThreadState);
 [ptr] native JSDValue(JSDValue);
 [ptr] native JSRuntime(JSRuntime);
 [ptr] native JSContext(JSContext);
-native jsval(jsval);
 
 /* interfaces we declare in this file */
 interface jsdIDebuggerService;
 interface jsdIFilter;
 interface jsdINestCallback;
 interface jsdIFilterEnumerator;
 interface jsdIContextEnumerator;
 interface jsdIScriptEnumerator;
--- a/js/src/xpconnect/idl/nsIXPCSecurityManager.idl
+++ b/js/src/xpconnect/idl/nsIXPCSecurityManager.idl
@@ -47,17 +47,16 @@
 
 class nsAXPCNativeCallContext;
 %}
 
 interface nsIClassInfo;
 
 [ptr] native JSContextPtr(JSContext);
 [ptr] native JSObjectPtr(JSObject);
-      native jsval(jsval);
 [ptr] native JSStackFramePtr(JSStackFrame);
 
 [uuid(31431440-f1ce-11d2-985a-006008962422)]
 interface nsIXPCSecurityManager : nsISupports
 {
     /**
     * These flags are used when calling nsIXPConnect::SetSecurityManager
     */
--- a/xpcom/base/nsrootidl.idl
+++ b/xpcom/base/nsrootidl.idl
@@ -115,14 +115,16 @@ typedef unsigned long       size_t;
 [ref, cstring] native ACString(ignored);
 [ref, cstring] native ACStringRef(ignored);
 [ptr, cstring] native ACStringPtr(ignored);
 
 [ref, astring] native AString(ignored);
 [ref, astring] native AStringRef(ignored);
 [ptr, astring] native AStringPtr(ignored);
 
+native jsval(jsval);
+
 %{C++
 /* 
  * End commenting out the C++ versions of the above in the output header
  */
 #endif
 %}
--- a/xpcom/ds/nsIVariant.idl
+++ b/xpcom/ds/nsIVariant.idl
@@ -76,18 +76,16 @@ interface nsIDataType : nsISupports
     const PRUint16 VTYPE_EMPTY_ARRAY         = 254;
     const PRUint16 VTYPE_EMPTY               = 255;
 };
 
 %{ C++
 #include "jspubtd.h"
 %}
 
-native jsval(jsval);
-
 /**
  * XPConnect has magic to transparently convert between nsIVariant and JS types.
  * We mark the interface [scriptable] so that JS can use methods
  * that refer to this interface. But we mark all the methods and attributes
  * [noscript] since any nsIVariant object will be automatically converted to a
  * JS type anyway.
  */