Class Variable.Global<X>

java.lang.Object
org.jscience.mathematics.function.Variable.Global<X>
All Implemented Interfaces:
javolution.lang.Reference<X>, Variable<X>
Enclosing interface:
Variable<X>

public static class Variable.Global<X> extends Object implements Variable<X>
This class represents a simple Variable implementation with context-local values. Instances of this class can be set independently by multiple-threads as long as each concurrent thread executes within a LocalContext. For example:[code] public abstract class Engine { public static final Variable.Global<Amount> RPM = new Variable.Global<Amount>("rpm"); public abstract Function<Amount, Amount> getTorque(); } ... LocalContext.enter(); try { RPM.set(rpm); Amount torque = myEngine.getTorque().evaluate(); } finally { LocalContext.exit(); }[/code] It should be noted that parameterized evaluations are performed within a local context. Therefore, the example above could also be rewritten:[code] Amount torque = myEngine.getTorque().evaluate(rpm); [/code]
  • Constructor Details

    • Global

      public Global(String symbol)
      Creates a new global variable with a unique symbol.
      Parameters:
      symbol - the variable symbol.
  • Method Details

    • getSymbol

      public String getSymbol()
      Description copied from interface: Variable
      Returns the symbol for this variable.
      Specified by:
      getSymbol in interface Variable<X>
      Returns:
      this variable's symbol.
    • get

      public X get()
      Specified by:
      get in interface javolution.lang.Reference<X>
    • set

      public void set(X arg0)
      Specified by:
      set in interface javolution.lang.Reference<X>