OSDN Git Service

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