2011-12-03 13:50:16 -08:00
|
|
|
/* -*- Mode: IDL; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2012-05-21 04:12:37 -07:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
2007-03-22 10:30:00 -07:00
|
|
|
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
|
2008-01-11 20:30:42 -08:00
|
|
|
[ptr] native const_nsID_ptr(const nsID);
|
|
|
|
|
2014-01-14 18:49:28 -08:00
|
|
|
[builtinclass, scriptable, uuid(62883d14-4146-4039-94f5-a5e1e1a51a15)]
|
2007-03-22 10:30:00 -07:00
|
|
|
interface nsIJSID : nsISupports
|
|
|
|
{
|
2008-01-11 20:30:42 -08:00
|
|
|
readonly attribute string name;
|
|
|
|
readonly attribute string number;
|
|
|
|
readonly attribute boolean valid;
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2007-09-07 18:43:13 -07:00
|
|
|
boolean equals(in nsIJSID other);
|
2007-03-22 10:30:00 -07:00
|
|
|
string toString();
|
2008-01-11 20:30:42 -08:00
|
|
|
|
2014-01-14 18:49:28 -08:00
|
|
|
[noscript] void initialize(in string idString);
|
|
|
|
|
2008-01-11 20:30:42 -08:00
|
|
|
// returns a pointer to the internal nsID. this pointer is only valid
|
|
|
|
// while the nsIJSID object remains alive!
|
|
|
|
[notxpcom] const_nsID_ptr getID();
|
2007-03-22 10:30:00 -07:00
|
|
|
};
|
|
|
|
|
2012-04-06 17:44:50 -07:00
|
|
|
[builtinclass, scriptable, uuid(e76ec564-a080-4705-8609-384c755ec91e)]
|
2007-03-22 10:30:00 -07:00
|
|
|
interface nsIJSIID : nsIJSID
|
|
|
|
{
|
|
|
|
};
|
|
|
|
|
2012-04-06 17:44:50 -07:00
|
|
|
[builtinclass, scriptable, uuid(bf5eb086-9eaa-4694-aec3-fe4aac6119bd)]
|
2007-03-22 10:30:00 -07:00
|
|
|
interface nsIJSCID : nsIJSID
|
|
|
|
{
|
2011-12-03 13:50:16 -08:00
|
|
|
[implicit_jscontext,optional_argc] jsval createInstance([optional] in jsval iid);
|
|
|
|
[implicit_jscontext,optional_argc] jsval getService([optional] in jsval iid);
|
2007-03-22 10:30:00 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
/* this goes into the C++ header verbatim. */
|
|
|
|
%{ C++
|
|
|
|
/********************************************************/
|
|
|
|
// {F24A14F0-4FA1-11d3-9894-006008962422}
|
|
|
|
#define NS_JS_ID_CID \
|
|
|
|
{ 0xf24a14f0, 0x4fa1, 0x11d3, \
|
|
|
|
{ 0x98, 0x94, 0x0, 0x60, 0x8, 0x96, 0x24, 0x22 } }
|
|
|
|
%}
|
|
|
|
|