Struct NumericReadingValue<T>
A reading value for a numeric value.
public readonly struct NumericReadingValue<T> : IReadingValue, IDataValue, IFormattable, IEquatable<NumericReadingValue<T>>, IConvertible where T : struct
Type Parameters
T
- Implements
- Inherited Members
- Extension Methods
Constructors
NumericReadingValue(T?, IReadingDescriptor)
Initializes a new instance of the NumericReadingValue<T> class.
public NumericReadingValue(T? value, IReadingDescriptor descriptor)
Parameters
valueT?The value.
descriptorIReadingDescriptorThe reading descriptor.
Exceptions
- ArgumentNullException
descriptoris null.
Properties
Descriptor
Gets the reading value descriptor.
public IReadingDescriptor Descriptor { get; }
Property Value
Inner
Gets the inner data value, or null if there is none.
public IDataValue Inner { get; }
Property Value
Remarks
This allows additional data to be added to data values, such as timestamps or validation results.
When this is set for a data value, Value and Descriptor must return the same values as those of Inner.
Value
Gets the data value.
public T? Value { get; }
Property Value
- T?
Methods
Equals(NumericReadingValue<T>)
Indicates whether the current object is equal to another object of the same type.
public bool Equals(NumericReadingValue<T> other)
Parameters
otherNumericReadingValue<T>An object to compare with this object.
Returns
Equals(object)
Indicates whether this instance and a specified object are equal.
public override bool Equals(object obj)
Parameters
objobjectThe object to compare with the current instance.
Returns
- bool
true if
objand this instance are the same type and represent the same value; otherwise, false.
GetHashCode()
Returns the hash code for this instance.
public override int GetHashCode()
Returns
- int
A 32-bit signed integer that is the hash code for this instance.
ToString()
Returns the fully qualified type name of this instance.
public override string ToString()
Returns
- string
The fully qualified type name.
ToString(string, IFormatProvider)
Formats the value of the current instance using the specified format.
public string ToString(string format, IFormatProvider formatProvider)
Parameters
formatstringThe format to use, or null to use the default format defined for the type of the IFormattable implementation.
formatProviderIFormatProviderThe provider to use to format the value, or null to obtain the numeric format information from the current locale setting of the operating system.
Returns
- string
The value of the current instance in the specified format.
Remarks
See Format(object, string, IFormatProvider) for a description of the supported formats.
Operators
operator ==(NumericReadingValue<T>, NumericReadingValue<T>)
Returns a value that indicates whether two specified NumericReadingValue<T> values are equal.
public static bool operator ==(NumericReadingValue<T> left, NumericReadingValue<T> right)
Parameters
leftNumericReadingValue<T>The first value to compare.
rightNumericReadingValue<T>The second value to compare.
Returns
implicit operator byte(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a byte.
public static implicit operator byte(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator decimal(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a decimal.
public static implicit operator decimal(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator double(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a double.
public static implicit operator double(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator short(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a short.
public static implicit operator short(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator int(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a int.
public static implicit operator int(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator long(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a long.
public static implicit operator long(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator sbyte(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a sbyte.
public static implicit operator sbyte(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator float(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a float.
public static implicit operator float(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator ushort(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a ushort.
public static implicit operator ushort(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator uint(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a uint.
public static implicit operator uint(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
implicit operator ulong(NumericReadingValue<T>)
Defines an implicit conversion of a NumericReadingValue<T> constant value to a ulong.
public static implicit operator ulong(NumericReadingValue<T> value)
Parameters
valueNumericReadingValue<T>The constant value.
Returns
operator !=(NumericReadingValue<T>, NumericReadingValue<T>)
Returns a value that indicates whether two specified NumericReadingValue<T> values are not equal.
public static bool operator !=(NumericReadingValue<T> left, NumericReadingValue<T> right)
Parameters
leftNumericReadingValue<T>The first value to compare.
rightNumericReadingValue<T>The second value to compare.