public JavaSourceParameter[] getParameters() { if (_parameters == null) { IJavaASTNode parametersNode = _methodNode.getChildOfTypes(JavaASTConstants.formalParameters); if (parametersNode == null) { _parameters = new JavaSourceParameter[0]; } else { List<IJavaASTNode> parameterNodes = parametersNode.getChildrenOfTypes( JavaASTConstants.normalParameterDecl, JavaASTConstants.ellipsisParameterDecl); _parameters = new JavaSourceParameter[parameterNodes.size()]; for (int i = 0; i < _parameters.length; i++) { _parameters[i] = new JavaSourceParameter(this, parameterNodes.get(i)); } } } return _parameters; }