public static IEnumerable GetEnumerable(object enumerable)
{
if (null == enumerable)
throw new ApplicationException(StringResources.CantEnumerateNull);
var iterator = enumerable as IEnumerable;
if (null != iterator) return iterator;
var reader = enumerable as TextReader;
if (null != reader) return TextReaderEnumerator.lines(reader);
throw new ApplicationException(StringResources.ArgumentNotEnumerable);
}