前回のSwiftで有限オートマトン(ステートマシン)を作る - Qiitaの続きです。 ステートマシン(SwiftState)を実際に使うにあたり、何か分かりやすいサンプルを作った方が良いと思い、今回、JavaScriptでおなじみのPromiseクラスを再発明してみました。 Promiseについて Promiseについては、こちらの記事が参考になります。 JavaScript Promiseの本 JavaScript Promises: There and back again - HTML5 Rocks 一般的なPromiseライブラリの状態遷移は、Pending => Fulfilled or Rejectedの2パターンがあります。 が、機能としてややシンプルすぎる&n番煎じ感が否めないので、新たにProgress、Pause、Cancelといったインターフェースを追加して、複雑な