OSDN Git Service

86297ec7a0e03b6eea7f98bbdbe93654a8ea2687
[mikutoga/TogaGem.git] / src / main / java / jp / sfjp / 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.sfjp.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      *
49      * <p>{@link #ENGBONE_LIST}ループの構成要素
50      *
51      * @param boneName 英語ボーン名
52      * @throws MmdFormatException 不正フォーマットによる
53      * パース処理の中断をパーサに指示
54      */
55     void pmdEngBoneInfo(String boneName) throws MmdFormatException;
56
57     /**
58      * 英語モーフ名の通知を受け取る。
59      * 特殊モーフ名「base」に対応する英語名は通知されない。
60      *
61      * <p>{@link #ENGMORPH_LIST}ループの構成要素
62      *
63      * @param morphName 英語モーフ名
64      * @throws MmdFormatException 不正フォーマットによる
65      * パース処理の中断をパーサに指示
66      */
67     void pmdEngMorphInfo(String morphName) throws MmdFormatException;
68
69     /**
70      * 英語ボーングループ名の通知を受け取る。
71      *
72      * <p>{@link #ENGBONEGROUP_LIST}ループの構成要素
73      *
74      * @param groupName 英語ボーングループ名
75      * @throws MmdFormatException 不正フォーマットによる
76      * パース処理の中断をパーサに指示
77      */
78     void pmdEngBoneGroupInfo(String groupName) throws MmdFormatException;
79
80 }