/guava/guava-gwt/src-super/com/google/common/collect/super/com/google/common/collect/ImmutableCollection.java
switch ( size ( ) ) { case 0: return ImmutableList.of ( ) ;
private transient @Nullable ImmutableList<E> asList; public ImmutableList<E> asList() { ImmutableList<E> list = asList; return (list == null) ? (asList = createAsList()) : list; } ImmutableList<E> createAsList() { <extra_id_0> case 1: return ImmutableList.of(iterator().next()); default: return new RegularImmutableAsList<E>(this, toArray()); } }