A TRef is a purely functional description of a mutable reference that can be modified as part of a transactional effect. The fundamental operations of a TRef are set and get. set transactionally sets the reference to a new value. get gets the current value of the reference.
NOTE: While TRef provides the transactional equivalent of a mutable reference, the value inside the TRef should be immutable. For performance reasons TRef is implemented in terms of compare and swap operations rather than synchronization. These operations are not safe for mutable values that do not support concurrent access.
Attributes
Members list
Value members
Concrete methods
Sets the value of the TRef and returns the old value.
Sets the value of the TRef and returns the old value.
Attributes
Updates the value of the variable and returns the old value.
Updates the value of the variable and returns the old value.
Attributes
Updates some values of the variable but leaves others alone, returning the old value.
Updates some values of the variable but leaves others alone, returning the old value.
Attributes
Calculates a hash code value for the object.
Calculates a hash code value for the object.
The default hashing algorithm is platform dependent.
Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)) yet not be equal (o1.equals(o2) returns false). A degenerate implementation could always return 0. However, it is required that if two objects are equal (o1.equals(o2) returns true) that they have identical hash codes (o1.hashCode.equals(o2.hashCode)). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the equals method.
Attributes
- Returns
-
the hash code value for this object.
- Definition Classes
-
Any
Updates the value of the variable, returning a function of the specified value.
Updates the value of the variable, returning a function of the specified value.
Attributes
Updates the value of the variable, returning a function of the specified value.
Updates the value of the variable, returning a function of the specified value.
Attributes
Returns a string representation of the object.
Returns a string representation of the object.
The default representation is platform dependent.
Attributes
- Returns
-
a string representation of the object.
- Definition Classes
-
Any
Updates the value of the variable.
Updates the value of the variable.
Attributes
Updates the value of the variable and returns the new value.
Updates the value of the variable and returns the new value.
Attributes
Updates some values of the variable but leaves others alone.
Updates some values of the variable but leaves others alone.
Attributes
Updates some values of the variable but leaves others alone, returning the new value.
Updates some values of the variable but leaves others alone, returning the new value.