43 lines
748 B
Text
43 lines
748 B
Text
include protocol PTestJSONHandle;
|
|
|
|
using struct mozilla::void_t from "mozilla/ipc/IPCCore.h";
|
|
using struct mozilla::null_t from "mozilla/ipc/IPCCore.h";
|
|
|
|
namespace mozilla {
|
|
namespace _ipdltest {
|
|
|
|
[Comparable]
|
|
struct KeyValue {
|
|
nsString key;
|
|
JSONVariant value;
|
|
};
|
|
|
|
[Comparable]
|
|
union JSONVariant {
|
|
void_t;
|
|
null_t;
|
|
bool;
|
|
int;
|
|
double;
|
|
nsString;
|
|
PTestJSONHandle;
|
|
KeyValue[];
|
|
JSONVariant[];
|
|
};
|
|
|
|
[ChildProc=any, ChildImpl=virtual, ParentImpl=virtual]
|
|
sync protocol PTestJSON {
|
|
manages PTestJSONHandle;
|
|
|
|
child:
|
|
async Start();
|
|
|
|
parent:
|
|
async PTestJSONHandle();
|
|
sync Test(JSONVariant i)
|
|
returns (JSONVariant o);
|
|
async __delete__();
|
|
};
|
|
|
|
} // namespace mozilla
|
|
} // namespace _ipdltest
|