Class ValueRef<T>
A reference type wrapper for value types. Using this wrapper can be especially useful when you need to manage atomic operations such as exchanging values in a thread-safe manner, or interlocked operations.
public class ValueRef<T> : IComparable<T>, IEquatable<T> where T : struct, IComparable<T>, IEquatable<T>
Type Parameters
TThe type of the value to wrap. This type must be a value type and implement IComparable<T> and IEquatable<T>.
- Inheritance
-
ValueRef<T>
- Implements
-
IComparable<T>IEquatable<T>
Constructors
- ValueRef(T)
Initializes a new instance of the ValueRef<T> class
Properties
- Value
The value being wrapped.
Methods
Operators
- operator ==(ValueRef<T>, ValueRef<T>)
Equality operator overload for ValueRef<T>.
- operator ==(ValueRef<T>, T)
Equality operator overload for ValueRef<T> and
T.
- operator ==(T, ValueRef<T>)
Equality operator overload for
Tand ValueRef<T>.
- operator >(ValueRef<T>, ValueRef<T>)
Greater than operator overload for ValueRef<T>.
- operator >(ValueRef<T>, T)
Greater than operator overload for ValueRef<T> and
T.
- operator >(T, ValueRef<T>)
Greater than operator overload for
Tand ValueRef<T>.
- operator >=(ValueRef<T>, ValueRef<T>)
Less than operator overload for ValueRef<T>.
- operator >=(ValueRef<T>, T)
Greater than or equal to operator overload for ValueRef<T> and
T.
- operator >=(T, ValueRef<T>)
Greater than or equal to operator overload for
Tand ValueRef<T>.
- implicit operator T(ValueRef<T>)
Implicit conversion operator to convert from ValueRef<T> to
T.
- implicit operator ValueRef<T>(in T)
Implicit conversion operator to convert from
Tto ValueRef<T>.
- operator !=(ValueRef<T>, ValueRef<T>)
Inequality operator overload for ValueRef<T>.
- operator !=(ValueRef<T>, T)
Inequality operator overload for ValueRef<T> and
T.
- operator !=(T, ValueRef<T>)
Inequality operator overload for
Tand ValueRef<T>.
- operator <(ValueRef<T>, ValueRef<T>)
Less than or equal to operator overload for ValueRef<T>.
- operator <(ValueRef<T>, T)
Less than operator overload for ValueRef<T> and
T.
- operator <(T, ValueRef<T>)
Less than operator overload for
Tand ValueRef<T>.
- operator <=(ValueRef<T>, ValueRef<T>)
Less than or equal to operator overload for ValueRef<T>.
- operator <=(ValueRef<T>, T)
Less than or equal to operator overload for ValueRef<T> and
T.
- operator <=(T, ValueRef<T>)
Less than or equal to operator overload for
Tand ValueRef<T>.