michael@0: namespace mozilla { michael@0: namespace _ipdltest { michael@0: michael@0: intr protocol PTestSyncWakeup { michael@0: both: michael@0: intr StackFrame(); michael@0: michael@0: child: michael@0: async Start(); michael@0: async Note1(); michael@0: async Note2(); michael@0: michael@0: parent: michael@0: sync Sync1(); michael@0: sync Sync2(); michael@0: async __delete__(); michael@0: michael@0: michael@0: state START: michael@0: send Start goto TEST1; michael@0: michael@0: state TEST1: michael@0: recv Sync1 goto TEST1_P2; michael@0: state TEST1_P2: michael@0: send Note1 goto TEST2; michael@0: michael@0: state TEST2: michael@0: answer StackFrame goto TEST2_P2; michael@0: state TEST2_P2: michael@0: call StackFrame goto TEST2_P3; michael@0: state TEST2_P3: michael@0: recv Sync2 goto TEST2_P4; michael@0: state TEST2_P4: michael@0: send Note2 goto DONE; michael@0: michael@0: state DONE: michael@0: recv __delete__; michael@0: }; michael@0: michael@0: } // namespace _ipdltest michael@0: } // namespace mozilla