using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Implab
{
public interface IPromise: ICancellable
{
///
/// Check whereather the promise has no more than one dependent promise.
///
bool IsExclusive
{
get;
}
///
/// The current state of the promise.
///
PromiseState State
{
get;
}
///
/// Registers handler for the case when the promise is cencelled. If the promise already cancelled the
/// handler will be invoked immediatelly.
///
/// The handler
void HandleCancelled(Action handler);
}
}