OSDN Git Service

1.105.3-SNAPSHOT版開発開始
[mikutoga/TogaGem.git] / src / main / java / jp / sourceforge / mikutoga / parser / LoopHandler.java
1 /*\r
2  * loop handler\r
3  *\r
4  * License : The MIT License\r
5  * Copyright(c) 2010 MikuToga Partners\r
6  */\r
7 \r
8 package jp.sourceforge.mikutoga.parser;\r
9 \r
10 /**\r
11  * ループ構造の通知用ハンドラ。\r
12  * ステージ指定により、多重ネストループをもサポートする。\r
13  */\r
14 public interface LoopHandler {\r
15 \r
16     /**\r
17      * ループ構造開始の通知を受け取る。\r
18      * 0回ループの場合も含め一度呼ばれる。\r
19      * @param stage ループ種別\r
20      * @param loops ループ回数。未知の場合は負の値。\r
21      * @throws MmdFormatException 不正フォーマットによる\r
22      * パース処理の中断をパーサに指示\r
23      */\r
24     void loopStart(ParseStage stage, int loops) throws MmdFormatException;\r
25 \r
26     /**\r
27      * ループ構造の1イテレーション終了の通知を受け取る。\r
28      * 1度しか回らないループでも呼ばれる。0回ループでは決して呼ばれない。\r
29      * @param stage ループ種別\r
30      * @throws MmdFormatException 不正フォーマットによる\r
31      * パース処理の中断をパーサに指示\r
32      */\r
33     void loopNext(ParseStage stage) throws MmdFormatException;\r
34 \r
35     /**\r
36      * ループ構造終了の通知を受け取る。\r
37      * 0回ループの場合も含め一度呼ばれる。\r
38      * @param stage ループ種別\r
39      * @throws MmdFormatException 不正フォーマットによる\r
40      * パース処理の中断をパーサに指示\r
41      */\r
42     void loopEnd(ParseStage stage) throws MmdFormatException;\r
43 \r
44 }\r