You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Henri Yandell (JIRA)" <ji...@apache.org> on 2013/10/24 22:02:02 UTC

[jira] [Created] (LANG-927) Create Iterable APIs

Henri Yandell created LANG-927:
----------------------------------

             Summary: Create Iterable APIs
                 Key: LANG-927
                 URL: https://issues.apache.org/jira/browse/LANG-927
             Project: Commons Lang
          Issue Type: Improvement
          Components: lang.*
            Reporter: Henri Yandell
             Fix For: Discussion


LANG-848 suggests having Iterable APIs in addition to CharSequence... (or potentially other vararg methods).

Currently we have 10 Iterable APIs:

ClassUtils.hierarchy(final Class<?> type) {
ClassUtils.hierarchy(final Class<?> type, Interfaces interfacesBehavior) {
EnumUtils.generateBitVector(final Class<E> enumClass, final Iterable<E> values) {
EnumUtils.generateBitVectors(final Class<E> enumClass, final Iterable<E> values) {
StringUtils.join(final Iterable<?> iterable, final char separator) {
StringUtils.join(final Iterable<?> iterable, final String separator) {
StrBuilder.java.StrBuilder appendAll(final Iterable<?> iterable) {
StrBuilder.appendWithSeparators(final Iterable<?> iterable, String separator) {
Validate.noNullElements(final T iterable, final String message, final Object... values) {
Validate.noNullElements(final T iterable) {

There are many other methods that could have such, but continuing to add Iterable wherever we see varargs is going to bloat the API.

Perhaps adding a method to ArrayUtils (or IteratorUtils) can suffice:

public static E[] iteratorToArray(Iterator<E> iterator);




--
This message was sent by Atlassian JIRA
(v6.1#6144)