Skip to content

immutables/immutables-vavr

develop
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

immutables-vavr

Maven Central Maven Central (snapshot) Codacy Badge

A set of Immutables encodings for Vavr.

Note: Prior to a 1.0.0 release, the encodings are still in the experimental phase and therefore should not be relied upon to provide a stable API.

JVM Platform Status
OpenJDK LTS Linux Build (OpenJDK LTS, Linux)
OpenJDK Current Linux Build (OpenJDK Current, Linux)
OpenJDK Current Windows Build (OpenJDK Current, Windows)

Ten Second Tutorial

Include the encodings in your project:

<dependency>
  <groupId>org.immutables.vavr</groupId>
  <artifactId>vavr-encodings</artifactId>
  <version><!-- Insert latest version here --></version>
  <scope>provided</scope>
</dependency>

Annotate your types with @VavrEncodingEnabled. Alternatively, you can annotate a @Style annotation with @VavrEncodingEnabled and have it apply to any types that are using that style. See Styles.

Now, any use of Vavr collections in your abstract value types will magically result in the generated Builder types being augmented with methods to build immutable collections element-by-element. Use of Vavr's Option type will receive the same special treatment as the standard Java Optional type.