package net.zero918nobita.Xemime.parser;

import net.zero918nobita.Xemime.ast.Node;
import net.zero918nobita.Xemime.lexer.Lexer;
import net.zero918nobita.Xemime.lexer.TokenType;
import net.zero918nobita.Xemime.resolver.Resolver;

import java.util.ArrayList;

/**
 * 引数リストの構文解析を行います。
 * @author Kodai Matsumoto
 */

class Args extends ParseUnit {
    Args(Lexer lexer, Resolver resolver) {
        super(lexer, resolver);
    }

    @Override
    protected Node parse() throws Exception {
        // Fatal Error - 呼び出し禁止メソッドの呼び出しが行われた
        throw new FatalError(lexer.getLocation(), 3);
    }

    ArrayList<Node> arguments() throws Exception {
        ArrayList<Node> list = null;
        if (lexer.tokenType() != TokenType.RP) {
            list = new ArrayList<>();
            list.add(new LogicalExpr(lexer, resolver).parse());
            while (lexer.tokenType() != TokenType.RP) {
                if (lexer.tokenType() != TokenType.COMMA) throw new Exception("文法エラーです");
                getToken();
                list.add(new LogicalExpr(lexer, resolver).parse());
            }
        }
        return list;
    }
}

@@ -417,24 +417,150 @@
 er);%0A    %7D%0A%0A
+    /**%0A     * %E7%B5%90%E6%9E%9C%E3%81%8C ArrayList&lt;Node&gt; %E3%81%A8%E3%81%AA%E3%82%8B%E6%A7%8B%E6%96%87%E8%A7%A3%E6%9E%90%E3%82%92%E8%A1%8C%E3%81%86%E3%81%AE%E3%81%A7%E3%80%81 Node %E3%82%92%E8%BF%94%E3%81%99%E3%81%93%E3%81%AE%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%AE%E4%BD%BF%E7%94%A8%E3%82%92%E7%A6%81%E6%AD%A2%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%0A     * @throws FatalError %E5%B8%B8%E3%81%AB%E7%99%BA%E7%94%9F%E3%81%95%E3%81%9B%E3%81%BE%E3%81%99%E3%80%82%0A     */%0A
     @Overrid
@@ -591,33 +591,34 @@
 se() throws 
-Exception
+FatalError
  %7B%0A        /

Update javadoc