/**
* 一般的な標準モーフに関する情報。
+ *
* <p>各モーフ情報はひとつ以上のプライマリ名(≒日本語名)と
* ゼロ個以上のグローバル名(≒英語名)を持つ。
+ *
* <p>選択基準は独断。
+ *
* <p>和英対訳はMMD Ver7.39の同梱モデルにほぼ準拠。
*/
public final class TypicalMorph extends I18nAlias {
private static final List<TypicalMorph> EMPTY = Collections.emptyList();
private static final Map<MorphType, List<TypicalMorph>> TYPED_MAP =
- new EnumMap<MorphType, List<TypicalMorph>>(MorphType.class);
+ new EnumMap<>(MorphType.class);
private static final AliasMap<TypicalMorph> MORPH_ALIAS_MAP =
- new AliasMap<TypicalMorph>();
+ new AliasMap<>();
static{
Element top;
try{
top = I18nAlias.loadXml(is);
- }catch(ParserConfigurationException e){
- throw new ExceptionInInitializerError(e);
- }catch(SAXException e){
- throw new ExceptionInInitializerError(e);
- }catch(IOException e){
+ }catch(ParserConfigurationException | SAXException | IOException e){
throw new ExceptionInInitializerError(e);
}
/**
* コンストラクタ。
+ *
* <p>各初期数が0以下の場合は、
* 状況に応じて伸長する連結リストが用意される。
+ *
* @param type モーフ種別
* @param primaryNum プライマリ名初期数。
* @param globalNum グローバル名初期数。
NodeList morphList = groupElem.getElementsByTagName(ELEM_MORPH);
int morphNo = morphList.getLength();
List<TypicalMorph> groupedList =
- new ArrayList<TypicalMorph>(morphNo);
+ new ArrayList<>(morphNo);
for(int idx = 0; idx < morphNo; idx++){
Element morphElem = (Element) morphList.item(idx);
/**
* 全モーフ情報に通し番号を付ける。
+ *
* <p>同一グループ内ではXMLでの定義順が反映される。
*/
private static void numbering(){