Nargchk.java

/*
 * $Id: Nargchk.java,v 1.8 2008/07/16 15:40:00 koga Exp $
 *
 * Copyright (C) 2004-2005 Koga Laboratory. All rights reserved.
 */

package org.mklab.tool.matrix;

/**
 * 関数の引数の個数をチェックするクラスです。
 * 
 * <p> Check number of input arguments
 * 
 * @author koga
 * @version $Revision: 1.8 $
 */
public class Nargchk {

  /**
   * 関数の引数の個数をチェックし、許容個数の範囲外ならばメッセージを返します。 引数の個数が許容個数の範囲内なら空文字列を返します。
   * 
   * @param argNumberMin 引数の数の最小値
   * @param argNumberMax 引数の数の最大値
   * @param argNumber 引数の数
   * @param functionName 関数の名前
   * @return 警告メッセージ
   */
  public static String nargchk(int argNumberMin, int argNumberMax, int argNumber, String functionName) {
    String message = ""; //$NON-NLS-1$

    if (argNumber < argNumberMin) {
      if (functionName != null && functionName.length() != 0) {
        message = functionName + Messages.getString("Nargchk.0"); //$NON-NLS-1$
      } else {
        message = Messages.getString("Nargchk.1"); //$NON-NLS-1$
      }
    } else if (argNumber > argNumberMax) {
      if (functionName != null && functionName.length() != 0) {
        message = functionName + Messages.getString("Nargchk.2"); //$NON-NLS-1$
      } else {
        message = Messages.getString("Nargchk.3"); //$NON-NLS-1$
      }
    }

    return message;
  }

  /**
   * 関数の引数の個数をチェックし、許容個数の範囲外ならばメッセージを返します。 引数の個数が許容個数の範囲内なら空文字列を返します。
   * 
   * @param argNumberMin 引数の数の最小値
   * @param argNumberMax 引数の数の最大値
   * @param argNumber 引数の数
   * @return 警告メッセージ
   */
  public static String nargchk(int argNumberMin, int argNumberMax, int argNumber) {
    return nargchk(argNumberMin, argNumberMax, argNumber, ""); //$NON-NLS-1$
  }

}