@throws nullpointerexception if either of the provided iterables is null
@return a new iterable, combining the provided iterables
@param e <> the element type
@param c the third iterable, may not be null
@param b the second iterable, may not be null
@param a the first iterable, may not be null
file : https_github_com_apache_commons-collections_git/src/main/java/org/apache/commons/collections4/IterableUtils.java