include protocol PTestDataStructuresSub; include PTestDataStructuresCommon; include "mozilla/GfxMessageUtils.h"; namespace mozilla { namespace _ipdltest { sync protocol PTestDataStructures { manages PTestDataStructuresSub; child: async PTestDataStructuresSub(int i); async Start(); parent: async __delete__(); sync Test1(int[] i1) returns (int[] o1); sync Test2(PTestDataStructuresSub[] i1) returns (PTestDataStructuresSub[] o1); sync Test3(IntDouble i1, IntDouble i2) returns (IntDouble o1, IntDouble o2); sync Test4(IntDouble[] i1) returns (IntDouble[] o1); sync Test5(IntDoubleArrays i1, IntDoubleArrays i2, IntDoubleArrays i3) returns (IntDoubleArrays o1, IntDoubleArrays o2, IntDoubleArrays o3); sync Test6(IntDoubleArrays[] i1) returns (IntDoubleArrays[] o1); sync Test7_0(ActorWrapper a1) returns (ActorWrapper o1); sync Test7(Actors i1, Actors i2, Actors i3) returns (Actors o1, Actors o2, Actors o3); sync Test8(Actors[] i1) returns (Actors[] o1); sync Test9(Unions i1, Unions i2, Unions i3, Unions i4) returns (Unions o1, Unions o2, Unions o3, Unions o4); sync Test10(Unions[] i1) returns (Unions[] o1); sync Test11(SIntDouble i) returns (SIntDouble o); sync Test12(SIntDoubleArrays i) returns (SIntDoubleArrays o); sync Test13(SActors i) returns (SActors o); sync Test14(Structs i) returns (Structs o); sync Test15(WithStructs i1, WithStructs i2, WithStructs i3, WithStructs i4, WithStructs i5) returns (WithStructs o1, WithStructs o2, WithStructs o3, WithStructs o4, WithStructs o5); sync Test16(WithUnions i) returns (WithUnions o); sync Test17(Op[] ops); // test that the ParamTraits::Read() workaround for // nsTArray's incorrect memmove() semantics works properly // (nsIntRegion isn't memmove()able) sync Test18(nsIntRegion[] ops); sync Dummy(ShmemUnion su) returns (ShmemUnion rsu); state CONSTRUCTING: send PTestDataStructuresSub goto CONSTRUCTING; send Start goto TEST1; state TEST1: recv Test1 goto TEST2; state TEST2: recv Test2 goto TEST3; state TEST3: recv Test3 goto TEST4; state TEST4: recv Test4 goto TEST5; state TEST5: recv Test5 goto TEST6; state TEST6: recv Test6 goto TEST7; state TEST7: recv Test7 goto TEST8; state TEST8: recv Test8 goto TEST9; state TEST9: recv Test9 goto TEST10; state TEST10: recv Test10 goto TEST11; state TEST11: recv Test11 goto TEST12; state TEST12: recv Test12 goto TEST13; state TEST13: recv Test13 goto TEST14; state TEST14: recv Test14 goto TEST15; state TEST15: recv Test15 goto TEST16; state TEST16: recv Test16 goto TEST17; state TEST17: recv Test17 goto TEST18; state TEST18: recv Test18 goto DEAD; state DEAD: recv __delete__; }; } // namespace _ipdltest } // namespace mozilla