OSDN Git Service

d9786aec14955b2d5691e6953f923ce0b3853659
[mikutoga/TogaGem.git] / src / main / java / jp / sourceforge / mikutoga / pmd / parser / PmdEngHandler.java
1 /*
2  * PMD english information handler
3  *
4  * License : The MIT License
5  * Copyright(c) 2010 MikuToga Partners
6  */
7
8 package jp.sourceforge.mikutoga.pmd.parser;
9
10 import jp.sfjp.mikutoga.bin.parser.LoopHandler;
11 import jp.sfjp.mikutoga.bin.parser.MmdFormatException;
12 import jp.sfjp.mikutoga.bin.parser.ParseStage;
13
14 /**
15  * PMDモデルの英語情報の通知用ハンドラ。
16  */
17 public interface PmdEngHandler extends LoopHandler {
18
19     /** ボーン英語名抽出ループ。 */
20     ParseStage ENGBONE_LIST = new ParseStage();
21
22     /** モーフ英語名抽出ループ。 */
23     ParseStage ENGMORPH_LIST = new ParseStage();
24
25     /** ボーングループ英語名抽出ループ。 */
26     ParseStage ENGBONEGROUP_LIST = new ParseStage();
27
28     /**
29      * PMD英語情報の有無の通知を受け取る。
30      * @param hasEnglishInfo 英語情報が含まれればtrue
31      * @throws MmdFormatException 不正フォーマットによる
32      * パース処理の中断をパーサに指示
33      */
34     void pmdEngEnabled(boolean hasEnglishInfo) throws MmdFormatException;
35
36     /**
37      * PMD英語基本情報の通知を受け取る。
38      * @param modelName モデル名
39      * @param description モデルの説明文。改行CRLFは"\n"に変換される。
40      * @throws MmdFormatException 不正フォーマットによる
41      * パース処理の中断をパーサに指示
42      */
43     void pmdEngModelInfo(String modelName, String description)
44             throws MmdFormatException;
45
46     /**
47      * 英語ボーン名の通知を受け取る。
48      * <p>{@link #ENGBONE_LIST}ループの構成要素
49      * @param boneName 英語ボーン名
50      * @throws MmdFormatException 不正フォーマットによる
51      * パース処理の中断をパーサに指示
52      */
53     void pmdEngBoneInfo(String boneName) throws MmdFormatException;
54
55     /**
56      * 英語モーフ名の通知を受け取る。
57      * 特殊モーフ名「base」に対応する英語名は通知されない。
58      * <p>{@link #ENGMORPH_LIST}ループの構成要素
59      * @param morphName 英語モーフ名
60      * @throws MmdFormatException 不正フォーマットによる
61      * パース処理の中断をパーサに指示
62      */
63     void pmdEngMorphInfo(String morphName) throws MmdFormatException;
64
65     /**
66      * 英語ボーングループ名の通知を受け取る。
67      * <p>{@link #ENGBONEGROUP_LIST}ループの構成要素
68      * @param groupName 英語ボーングループ名
69      * @throws MmdFormatException 不正フォーマットによる
70      * パース処理の中断をパーサに指示
71      */
72     void pmdEngBoneGroupInfo(String groupName) throws MmdFormatException;
73
74 }