Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8252546: Move ObservableValue's equality check and lazy evaluation descriptions to @implSpec #292

Closed
Changes from 1 commit
Commits
File filter
Filter file types
Jump to
Jump to file
Failed to load files.

Always

Just for now

@@ -39,11 +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 (see note 1 in {@code implSpec}).
* lazily the next time the value is requested (see note 1 in the "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
* (see note 2 in {@code implSpec}). An invalidation event is generated if the current value is not valid anymore.
* (see note 2 in "Implementation Requirements"). An invalidation event is generated if the current value is not valid anymore.
This conversation was marked as resolved by kevinrushforth

This comment has been minimized.

@kevinrushforth

kevinrushforth Sep 12, 2020
Member

Minor: either add the before "Implementation Requirements" here or remove the from the earlier line for consistency.

Minor: as long as you are here, can you break this line between An and invalidation? In addition to wrapping a long line, it will reduce the diffs, which seems good given that there will be an associated CSR.

* This distinction becomes important if the {@code ObservableValue} supports
* lazy evaluation, because for a lazily evaluated value one does not know if an
* invalid value really has changed until it is recomputed. For this reason,
@@ -68,8 +68,8 @@
* The type of the wrapped value.
*
* @implSpec <ol>
* <li> All bindings and properties in this library support lazy evaluation.
* <li> Current implementing classes in JavaFX check for a change using reference
* <li> All bindings and properties in the JavaFX library support lazy evaluation.
* <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.
This conversation was marked as resolved by kevinrushforth

This comment has been minimized.

@kevinrushforth

kevinrushforth Sep 11, 2020
Member

Now that they are right next to each other, it would be good to unify the language of these two requirements, making it clear that both apply to all JavaFX classes that implement this interface. Perhaps something like:

  1. All bindings and properties in the JavaFX library support lazy...
  2. All implementing classes in the JavaFX library check for a change...
* </ol>
*
ProTip! Use n and p to navigate between commits in a pull request.