singrdk/base/Contracts/PingPong.Contracts/PongContract.sg

27 lines
697 B
Plaintext

///////////////////////////////////////////////////////////////////////////////
//
// Microsoft Research Singularity
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// File: PongContract.sg
// Note: Contract definition for the ChildPong process
//
using System;
using Microsoft.Singularity.Extending;
namespace Microsoft.Singularity.PingPong.Contracts
{
public contract PongContract : ExtensionContract
{
in message Ping(int data);
out message Pong(int data);
out message PongReady();
override state Start : PongReady! -> ReadyState;
state ReadyState : Ping? -> Pong! -> ReadyState;
}
}