Skip to content

Commit

Permalink
jcabi#37 - Limitation: Encapsulated objects with exposed mutators can…
Browse files Browse the repository at this point in the history
… mutate their state
  • Loading branch information
pluresideas committed Aug 16, 2020
1 parent a5bca38 commit bd478b4
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 0 deletions.
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ More details are here: [immutable.jcabi.com](http://immutable.jcabi.com/index.ht
This module contains truly immutable collections of objects, including
`Array`, `ArraySet`, and `ArrayMap`.

## Limitation

Encapsulated objects with exposed mutators can mutate their state.

## Questions?

If you have any questions about the framework, or something doesn't work as expected,
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/jcabi/immutable/Array.java
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,8 @@
* <p>This class is truly immutable. This means that it never changes
* its encapsulated values and is annotated with {@code @Immutable}
* annotation.
* <p>
* Limitation: Encapsulated objects with exposed mutators can mutate their state.
*
* @param <T> Value key type
* @author Yegor Bugayenko (yegor@tpc2.com)
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/jcabi/immutable/ArrayMap.java
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@
* <p>This class is truly immutable. This means that it never changes
* its encapsulated values and is annotated with {@code @Immutable}
* annotation.
* <p>
* Limitation: Encapsulated objects with exposed mutators can mutate their state.
*
* @param <K> Map key type
* @param <V> Value key type
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/jcabi/immutable/ArraySet.java
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,8 @@
* <p>This class is truly immutable. This means that it never changes
* its encapsulated values and is annotated with {@code @Immutable}
* annotation.
* <p>
* Limitation: Encapsulated objects with exposed mutators can mutate their state.
*
* @param <T> Value key type
* @author Yegor Bugayenko (yegor@tpc2.com)
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/jcabi/immutable/ArraySortedSet.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@
* <p>This class is truly immutable. This means that it never changes
* its encapsulated values and is annotated with {@code @Immutable}
* annotation.
* <p>
* Limitation: Encapsulated objects with exposed mutators can mutate their state.
*
* @param <T> Value key type
* @author Yegor Bugayenko (yegor@tpc2.com)
Expand Down
4 changes: 4 additions & 0 deletions src/site/apt/index.apt.vm
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,10 @@ Immutable Collections
</dependency>
+--

Limitation

Encapsulated objects with exposed mutators can mutate their state.

* Cutting Edge Version

If you want to use current version of the product, you can do it with
Expand Down

0 comments on commit bd478b4

Please sign in to comment.