test_class.file: reactfx/src/test/java/org/reactfx/value/VarFromValTest.java
test_class.identifier: VarFromValTest
test_case.body: @Test
      public void test() {
          IntegerProperty src = new SimpleIntegerProperty(0);
          IntegerBinding twice = src.multiply(2);
          Var<Number> twiceVar = Var.fromVal(twice, n -> src.set(n.intValue() / 2));
  
          List<Number> values = new ArrayList<>();
          EventStreams.valuesOf(twiceVar).subscribe(values::add);
  
          src.set(1);
          twiceVar.setValue(4);
          twiceVar.setValue(5); // no effect
          twiceVar.setValue(7); // will become 6
  
          assertEquals(Arrays.asList(0, 2, 4, 6), values);
      }
test_case.class_method_signature: VarFromValTest.test()
test_case.full_signature: @Test public void test()
test_case.identifier: test
test_case.invocations: multiply fromVal set intValue subscribe valuesOf set setValue setValue setValue assertEquals asList
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void test()
focal_class.declarator: setter
focal_class.modifier: private final
focal_class.original_string: private final Consumer<T> setter;
focal_class.type: Consumer<T>
focal_class.var_name: setter
focal_class.declarator: binding = null
focal_class.modifier: private
focal_class.original_string: private Subscription binding = null;
focal_class.type: Subscription
focal_class.var_name: binding
focal_class.file: reactfx/src/main/java/org/reactfx/value/VarFromVal.java
focal_class.identifier: VarFromVal
focal_class.interfaces: implements Var<T>
focal_class.class_method_signature: VarFromVal.VarFromVal(Val<T> underlying, Consumer<T> setter)
focal_class.full_signature:   VarFromVal(Val<T> underlying, Consumer<T> setter)
focal_class.identifier: VarFromVal
focal_class.parameters: (Val<T> underlying, Consumer<T> setter)
focal_class.signature:  VarFromVal(Val<T> underlying, Consumer<T> setter)
focal_class.class_method_signature: VarFromVal.getValue()
focal_class.full_signature: @Override public T getValue()
focal_class.identifier: getValue
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: T
focal_class.signature: T getValue()
focal_class.class_method_signature: VarFromVal.adaptObserver(Consumer<? super T> observer)
focal_class.full_signature: @Override protected Consumer<? super T> adaptObserver(Consumer<? super T> observer)
focal_class.identifier: adaptObserver
focal_class.modifiers: @Override protected
focal_class.parameters: (Consumer<? super T> observer)
focal_class.return: Consumer<? super T>
focal_class.signature: Consumer<? super T> adaptObserver(Consumer<? super T> observer)
focal_class.class_method_signature: VarFromVal.bind(ObservableValue<? extends T> observable)
focal_class.full_signature: @Override public void bind(ObservableValue<? extends T> observable)
focal_class.identifier: bind
focal_class.modifiers: @Override public
focal_class.parameters: (ObservableValue<? extends T> observable)
focal_class.return: void
focal_class.signature: void bind(ObservableValue<? extends T> observable)
focal_class.class_method_signature: VarFromVal.unbind()
focal_class.full_signature: @Override public void unbind()
focal_class.identifier: unbind
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void unbind()
focal_class.class_method_signature: VarFromVal.isBound()
focal_class.full_signature: @Override public boolean isBound()
focal_class.identifier: isBound
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isBound()
focal_class.class_method_signature: VarFromVal.setValue(T value)
focal_class.full_signature: @Override public void setValue(T value)
focal_class.identifier: setValue
focal_class.modifiers: @Override public
focal_class.parameters: (T value)
focal_class.return: void
focal_class.signature: void setValue(T value)
focal_class.superclass: extends ProxyVal<T, T>
focal_method.body: @Override
      public void setValue(T value) {
          setter.accept(value);
      }
focal_method.class_method_signature: VarFromVal.setValue(T value)
focal_method.full_signature: @Override public void setValue(T value)
focal_method.identifier: setValue
focal_method.invocations: accept
focal_method.modifiers: @Override public
focal_method.parameters: (T value)
focal_method.return: void
focal_method.signature: void setValue(T value)