001package arez.spy;
002
003/**
004 * Changing the value of an ObservableValue.
005 *
006 * @param <T> The type of the ObservableValue value.
007 */
008@FunctionalInterface
009public interface PropertyMutator<T>
010{
011  /**
012   * Change the value of an ObservableValue to specified value.
013   *
014   * @param value the value of an ObservableValue.
015   * @throws Throwable if unable to set value.
016   */
017  void set( T value )
018    throws Throwable;
019}