OSDN Git Service

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