4 * License : The MIT License
5 * Copyright(c) 2010 MikuToga Partners
8 package jp.sfjp.mikutoga.bin.parser;
11 * バイナリファイル中ループ構造の通知用ハンドラ。
13 * <p>ステージ指定により、多重ネストループをもサポートする。
15 public interface LoopHandler {
20 * <p>0回ループの場合も含め一度呼ばれる。
23 * @param loops ループ予定回数。未知の場合は負の値。
24 * @throws MmdFormatException
25 * 不正フォーマットによるパース処理の中断をパーサに指示
27 public abstract void loopStart(ParseStage stage, int loops)
28 throws MmdFormatException;
31 * ループ構造の1イテレーション終了の通知を受け取る。
33 * <p>1度しか回らないループでも呼ばれる。
37 * @throws MmdFormatException
38 * 不正フォーマットによるパース処理の中断をパーサに指示
40 public abstract void loopNext(ParseStage stage)
41 throws MmdFormatException;
46 * <p>0回ループの場合も含め一度呼ばれる。
49 * @throws MmdFormatException
50 * 不正フォーマットによるパース処理の中断をパーサに指示
52 public abstract void loopEnd(ParseStage stage)
53 throws MmdFormatException;