class FunctionArgument {
  private final int index;
  private final String expression;

  public FunctionArgument(final int index, final String name) {
    super();
    this.index = index;
    this.expression = name;
  }

  /**
   * Returns the parameter index in function,starts from zero.
   *
   * @return
   */
  public int getIndex() {
    return this.index;
  }

  /**
   * Returns the parameter expression.
   *
   * @return
   */
  public String getExpression() {
    return this.expression;
  }

  @Override
  public String toString() {<FILL_FUNCTION_BODY>}

  public static FunctionArgument from(final int index, final String name) {
    return new FunctionArgument(index, name);
  }
}

    return "FunctionArgument [index=" + this.index + ", expression=" + this.expression + "]";
  
<no_super_class>