code: public Node newOptionalParameterFromNode(Node n) {
      Node newParam = newParameterFromNode(n);
      if (!newParam.isVarArgs() && !newParam.isOptionalArg()) {
        newParam.setOptionalArg(true);
      }
      return newParam;
    }
docs: Copies the parameter specification from the given node,
  but makes sure it's optional.