メソッド
- Siteswap.analyze()
- 入力文字列を解析してサイトスワップデータを返します。
- Siteswap.separate()
- サイトスワップデータを解析して道具ごとの投げ方データを返します。
サイトスワップ仕様
参考までに、サイトスワップとして受理するパターンの仕様を HABA 形式 で記しておきます。
Pattern ::= Async | Sync ;
Async ::= EachHand+ ;
EachHand ::= AsyncSimple | AsyncMulti ;
AsyncSimple ::= Even | Odd ;
Even ::= "[02468acegikmoqsuwy]" ;
Odd ::= "[13579bdfhjlnprtvz]" | 'x' ;
AsyncMulti ::= '[' AsyncSimple AsyncSimple+ ']' ;
Sync ::= BothHand+ '*'? ;
BothHand ::= '(' OneHand ',' OneHand ')' ;
OneHand ::= SyncSimple | SyncMulti ;
SyncSimple ::= Even 'x'? ;
SyncMulti ::= '[' SyncSimple SyncSimple+ ']' ;
Space ::= "\s+" ;