Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -39,13 +39,11 @@
* <p>
* An implementation of {@code ObservableValue} may support lazy evaluation,
* which means that the value is not immediately recomputed after changes, but
* lazily the next time the value is requested. All bindings and properties in
* this library support lazy evaluation.
* lazily the next time the value is requested (see note 1 in "Implementation Requirements").
* <p>
* An {@code ObservableValue} generates two types of events: change events and
* invalidation events. A change event indicates that the value has changed.
* Current implementing classes in JavaFX check for a change using reference
* equality (and not object equality, {@code Object#equals(Object)}) of the value. An
* invalidation events. A change event indicates that the value has changed
* (see note 2 in "Implementation Requirements"). An
* invalidation event is generated if the current value is not valid anymore.
* This distinction becomes important if the {@code ObservableValue} supports
* lazy evaluation, because for a lazily evaluated value one does not know if an
Expand All @@ -70,6 +68,12 @@
* @param <T>
* The type of the wrapped value.
*
* @implSpec <ol>
* <li> All bindings and properties in the JavaFX library support lazy evaluation.</li>
* <li> All implementing classes in the JavaFX library check for a change using reference
* equality (and not object equality, {@code Object#equals(Object)}) of the value.</li>
* </ol>
*
* @see ObservableBooleanValue
* @see ObservableDoubleValue
* @see ObservableFloatValue
Expand Down