Backport of Java 9 java.util.stream API for Android Studio 3.0 desugar toolchain, forked from https://github.com/stefan-zobel/streamsupport
Java
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
art added images Jul 12, 2017
docs update Javadoc May 14, 2018
src fix javadoc formatting Jun 7, 2018
.gitignore update .gitignore Apr 1, 2018
LICENSE add license file Jul 12, 2017
README.md update Readme May 14, 2018
pom.xml Starting out 1.7.0 May 19, 2018

README.md

Maven Central javadoc.io Download

android-retrostreams

android-retrostreams is a fork of the streamsupport library targeted at Android developers who want to take advantage of Android Studio 3.0 desugar toolchain's capability to use interface default & static methods across Jar file boundaries.

Utilizing this feature of desugar, the streamsupport API can be even more aligned with the original Java 8 / 9 API exposed in the java.util.function and java.util.stream packages. That allows for Android app's code to be much more in accordance with the standard Java 8 / 9 usage than it is now possible with the original streamsupport API (which is bound by the restrictions of supporting Java 6).

With respect to static / default interface methods the android-retrostreams public API should now be identical to the Java 9 API wherever this is possible (i.e. for all interfaces that have first been introduced in Java 8).

Supplemental helper classes, public static methods and so on that served as a replacement for the default / static interfaces methods in the original streamsupport API are now mostly gone. E.g., no j8.u.s.RefStreams class anymore - all these methods are now in the j9.u.s.Stream interface.

The online Javadoc gives a picture of the API changes.

The current stable release is android-retrostreams-1.6.3.

Please give feedback here if you experience any problems.

build.gradle:

dependencies {
    compile 'net.sourceforge.streamsupport:android-retrostreams:1.6.3'
}

Sibling projects

You might also have a use for one of retrostreams' sibling projects:

LICENSE

GNU General Public License, version 2, with the Classpath Exception