class FunctionEditorModel {

	public void removeParameters() {
		if (!canRemoveParameters()) {
			throw new AssertException("Attempted to remove parameters when not allowed.");
		}
		listener.tableRowsChanged();
		Arrays.sort(selectedFunctionRows);
		for (int i = selectedFunctionRows.length - 1; i >= 0; i--) {
			int index = selectedFunctionRows[i];
			parameters.remove(index - 1);
		}
		if (parameters.isEmpty()) {
			selectedFunctionRows = new int[0];
		}
		else {
			int selectRow = Math.min(selectedFunctionRows[0], parameters.size());
			selectedFunctionRows = new int[] { selectRow };
		}
		fixupOrdinals();
		updateParameterAndReturnStorage();
		notifyDataChanged();
	}

	public  FunctionEditorModel(DataTypeManagerService service, Function function);

}