/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* vim: set ts=8 sts=2 et sw=2 tw=80: */ namespace mozilla { namespace _ipdltest2 { // (Opens protocols can have different semantics than the endpoints // that opened them) intr protocol PTestEndpointOpensOpened { child: async Hi(); intr HiRpc(); parent: async Hello(); sync HelloSync(); intr HelloRpc(); async __delete__(); state START: recv Hello goto HI; state HI: send Hi goto HELLO_SYNC; state HELLO_SYNC: recv HelloSync goto HELLO_RPC; state HELLO_RPC: answer HelloRpc goto HI_RPC; state HI_RPC: call HiRpc goto DEAD; state DEAD: recv __delete__; }; } // namespace mozilla } // namespace _ipdltest2