1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/ipc/ipdl/test/cxx/PTestActorPunning.ipdl Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,39 @@ 1.4 + 1.5 +include protocol PTestActorPunningPunned; 1.6 +include protocol PTestActorPunningSub; 1.7 +include "mozilla/_ipdltest/IPDLUnitTestUtils.h"; 1.8 + 1.9 +using struct mozilla::_ipdltest::Bad from "mozilla/_ipdltest/IPDLUnitTestUtils.h"; 1.10 + 1.11 +namespace mozilla { 1.12 +namespace _ipdltest { 1.13 + 1.14 +protocol PTestActorPunning { 1.15 + manages PTestActorPunningPunned; 1.16 + manages PTestActorPunningSub; 1.17 + 1.18 +child: 1.19 + Start(); 1.20 + 1.21 +parent: 1.22 + PTestActorPunningPunned(); 1.23 + PTestActorPunningSub(); 1.24 + Pun(PTestActorPunningSub a, Bad bad); 1.25 + __delete__(); 1.26 + 1.27 + 1.28 +state PING: 1.29 + send Start goto CONSTRUCTING; 1.30 + 1.31 +state CONSTRUCTING: 1.32 + recv PTestActorPunningPunned goto CONSTRUCTING; 1.33 + recv PTestActorPunningSub goto CONSTRUCTING; 1.34 + recv Pun goto DEAD; 1.35 + // We never make it past this transition, --> error. 1.36 + 1.37 +state DEAD: 1.38 + recv __delete__; 1.39 +}; 1.40 + 1.41 +} // namespace mozilla 1.42 +} // namespace _ipdltest