IOS で SCXML パーサーを作成する方法を知っている人はいますか?
私はこのhttp://www.w3.org/TR/scxml/を調べて、SCXML について考えました。
今、解析アーキテクチャを作成する必要があります。
誰かアイデアがあれば教えてください。
前もって感謝します。
IOS で SCXML パーサーを作成する方法を知っている人はいますか?
私はこのhttp://www.w3.org/TR/scxml/を調べて、SCXML について考えました。
今、解析アーキテクチャを作成する必要があります。
誰かアイデアがあれば教えてください。
前もって感謝します。
SCXMLは単なるXMLであるため、単にドキュメントを解析する場合は、XMLパーサーのみが必要です。この記事には、iOSで利用可能なさまざまなXMLパーサーの概要が記載されています:http ://www.raywenderlich.com/553/how-to-chose-the-best-xml-parser-for-your-iphone-project
一方、SCXMLドキュメントをステートマシンとして実行する必要がある場合は、SCXMLエンジンが必要です。UIWebView / PhoneGapを使用してiOSアプリを作成する場合、JavaScriptが実装されているため、 SCIONをSCXMLエンジンとして使用できる可能性があります。免責事項:私はこのライブラリの作者です。
iOS で実行できる SCXML インタープリターについてはわかりませんが、uSCXML は特定の SCXML ファイルに含まれる制御フローの ANSI-C を生成でき、データモデル固有の式のコールバックを提供するだけで済みます。
$ uscxml-transform -tc -i your.machine.scxml -o your.machine.c
すべての IRP テストに合格する、生成されたマシンの足場がここに示されています。本質的に、あなたは単に
#include
生成されたC ファイルサンプルのスキャフォールディングは、uSCXML のすべてのデータ モデルで動作し、複数の呼び出された SCXML インタープリターをサポートするため、やや精巧です。ステート チャートが 1 つだけ必要な場合は、上記の 3 つの手順で十分です。生成されたソース コードにはコメントが付けられており、(従来のブランチからの) 簡略化された例はこちらから入手できます(新しいマスター ブランチではインライン SCXML はまだサポートされていません)。
私たちのアプローチで microstep(T) のパフォーマンスを評価しましたが、主に を事前計算しているため、途方もなく高速conflicts(T_1, T_2)
です。推奨事項の付録 D のアルゴリズムをベースラインとして使用すると、IRP テストで 10 ~ 20 倍の高速化を達成しました (いずれ公開される予定です)。
このアプローチが適しているように見えても問題が発生する場合は、気軽に github に問題を投稿してください。喜んでさらに情報を追加します。
免責事項:私は uSCXML のメンテナーです。