IBinaryNumber<TSelf> Interface

Definition

Defines a number that is represented in a base-2 format.

generic <typename TSelf>
 where TSelf : IBinaryNumber<TSelf>public interface class IBinaryNumber : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, System::Numerics::IAdditionOperators<TSelf, TSelf, TSelf>, System::Numerics::IAdditiveIdentity<TSelf, TSelf>, System::Numerics::IBitwiseOperators<TSelf, TSelf, TSelf>, System::Numerics::IComparisonOperators<TSelf, TSelf, bool>, System::Numerics::IDecrementOperators<TSelf>, System::Numerics::IDivisionOperators<TSelf, TSelf, TSelf>, System::Numerics::IEqualityOperators<TSelf, TSelf, bool>, System::Numerics::IIncrementOperators<TSelf>, System::Numerics::IModulusOperators<TSelf, TSelf, TSelf>, System::Numerics::IMultiplicativeIdentity<TSelf, TSelf>, System::Numerics::IMultiplyOperators<TSelf, TSelf, TSelf>, System::Numerics::INumber<TSelf>, System::Numerics::INumberBase<TSelf>, System::Numerics::ISubtractionOperators<TSelf, TSelf, TSelf>, System::Numerics::IUnaryNegationOperators<TSelf, TSelf>, System::Numerics::IUnaryPlusOperators<TSelf, TSelf>
generic <typename TSelf>
 where TSelf : IBinaryNumber<TSelf>public interface class IBinaryNumber : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, IUtf8SpanParsable<TSelf>, System::Numerics::IAdditionOperators<TSelf, TSelf, TSelf>, System::Numerics::IAdditiveIdentity<TSelf, TSelf>, System::Numerics::IBitwiseOperators<TSelf, TSelf, TSelf>, System::Numerics::IComparisonOperators<TSelf, TSelf, bool>, System::Numerics::IDecrementOperators<TSelf>, System::Numerics::IDivisionOperators<TSelf, TSelf, TSelf>, System::Numerics::IEqualityOperators<TSelf, TSelf, bool>, System::Numerics::IIncrementOperators<TSelf>, System::Numerics::IModulusOperators<TSelf, TSelf, TSelf>, System::Numerics::IMultiplicativeIdentity<TSelf, TSelf>, System::Numerics::IMultiplyOperators<TSelf, TSelf, TSelf>, System::Numerics::INumber<TSelf>, System::Numerics::INumberBase<TSelf>, System::Numerics::ISubtractionOperators<TSelf, TSelf, TSelf>, System::Numerics::IUnaryNegationOperators<TSelf, TSelf>, System::Numerics::IUnaryPlusOperators<TSelf, TSelf>
public interface IBinaryNumber<TSelf> : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, System.Numerics.IAdditionOperators<TSelf,TSelf,TSelf>, System.Numerics.IAdditiveIdentity<TSelf,TSelf>, System.Numerics.IBitwiseOperators<TSelf,TSelf,TSelf>, System.Numerics.IComparisonOperators<TSelf,TSelf,bool>, System.Numerics.IDecrementOperators<TSelf>, System.Numerics.IDivisionOperators<TSelf,TSelf,TSelf>, System.Numerics.IEqualityOperators<TSelf,TSelf,bool>, System.Numerics.IIncrementOperators<TSelf>, System.Numerics.IModulusOperators<TSelf,TSelf,TSelf>, System.Numerics.IMultiplicativeIdentity<TSelf,TSelf>, System.Numerics.IMultiplyOperators<TSelf,TSelf,TSelf>, System.Numerics.INumber<TSelf>, System.Numerics.INumberBase<TSelf>, System.Numerics.ISubtractionOperators<TSelf,TSelf,TSelf>, System.Numerics.IUnaryNegationOperators<TSelf,TSelf>, System.Numerics.IUnaryPlusOperators<TSelf,TSelf> where TSelf : IBinaryNumber<TSelf>
public interface IBinaryNumber<TSelf> : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, IUtf8SpanParsable<TSelf>, System.Numerics.IAdditionOperators<TSelf,TSelf,TSelf>, System.Numerics.IAdditiveIdentity<TSelf,TSelf>, System.Numerics.IBitwiseOperators<TSelf,TSelf,TSelf>, System.Numerics.IComparisonOperators<TSelf,TSelf,bool>, System.Numerics.IDecrementOperators<TSelf>, System.Numerics.IDivisionOperators<TSelf,TSelf,TSelf>, System.Numerics.IEqualityOperators<TSelf,TSelf,bool>, System.Numerics.IIncrementOperators<TSelf>, System.Numerics.IModulusOperators<TSelf,TSelf,TSelf>, System.Numerics.IMultiplicativeIdentity<TSelf,TSelf>, System.Numerics.IMultiplyOperators<TSelf,TSelf,TSelf>, System.Numerics.INumber<TSelf>, System.Numerics.INumberBase<TSelf>, System.Numerics.ISubtractionOperators<TSelf,TSelf,TSelf>, System.Numerics.IUnaryNegationOperators<TSelf,TSelf>, System.Numerics.IUnaryPlusOperators<TSelf,TSelf> where TSelf : IBinaryNumber<TSelf>
type IBinaryNumber<'Self (requires 'Self :> IBinaryNumber<'Self>)> = interface
    interface IComparable
    interface IComparable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IEquatable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IFormattable
    interface IParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface ISpanFormattable
    interface ISpanParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IAdditionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IAdditiveIdentity<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IBitwiseOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IComparisonOperators<'Self, 'Self, bool (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IEqualityOperators<'Self, 'Self, bool (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IDecrementOperators<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IDivisionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IIncrementOperators<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IModulusOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IMultiplicativeIdentity<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IMultiplyOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface INumber<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface INumberBase<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface ISubtractionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IUnaryNegationOperators<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IUnaryPlusOperators<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
type IBinaryNumber<'Self (requires 'Self :> IBinaryNumber<'Self>)> = interface
    interface IComparable
    interface IComparable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IEquatable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IFormattable
    interface IParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface ISpanFormattable
    interface ISpanParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IAdditionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IAdditiveIdentity<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IBitwiseOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IComparisonOperators<'Self, 'Self, bool (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IEqualityOperators<'Self, 'Self, bool (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IDecrementOperators<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IDivisionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IIncrementOperators<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IModulusOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IMultiplicativeIdentity<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IMultiplyOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface INumber<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface INumberBase<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface ISubtractionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IUnaryNegationOperators<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IUnaryPlusOperators<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IUtf8SpanFormattable
    interface IUtf8SpanParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
type IBinaryNumber<'Self (requires 'Self :> IBinaryNumber<'Self>)> = interface
    interface IComparable
    interface IComparable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IEquatable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IFormattable
    interface IParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface ISpanFormattable
    interface ISpanParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IAdditionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IAdditiveIdentity<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IBitwiseOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IComparisonOperators<'Self, 'Self, bool (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IEqualityOperators<'Self, 'Self, bool (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IDecrementOperators<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IDivisionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IIncrementOperators<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IModulusOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IMultiplicativeIdentity<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IMultiplyOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface INumber<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface INumberBase<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface IUtf8SpanFormattable
    interface IUtf8SpanParsable<'Self (requires 'Self :> IBinaryNumber<'Self>)>
    interface ISubtractionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IUnaryNegationOperators<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
    interface IUnaryPlusOperators<'Self, 'Self (requires 'Self :> IBinaryNumber<'Self> and 'Self :> IBinaryNumber<'Self>)>
Public Interface IBinaryNumber(Of TSelf)
Implements IAdditionOperators(Of TSelf, TSelf, TSelf), IAdditiveIdentity(Of TSelf, TSelf), IBitwiseOperators(Of TSelf, TSelf, TSelf), IComparable(Of TSelf), IComparisonOperators(Of TSelf, TSelf, Boolean), IDecrementOperators(Of TSelf), IDivisionOperators(Of TSelf, TSelf, TSelf), IEqualityOperators(Of TSelf, TSelf, Boolean), IEquatable(Of TSelf), IIncrementOperators(Of TSelf), IModulusOperators(Of TSelf, TSelf, TSelf), IMultiplicativeIdentity(Of TSelf, TSelf), IMultiplyOperators(Of TSelf, TSelf, TSelf), INumber(Of TSelf), INumberBase(Of TSelf), IParsable(Of TSelf), ISpanParsable(Of TSelf), ISubtractionOperators(Of TSelf, TSelf, TSelf), IUnaryNegationOperators(Of TSelf, TSelf), IUnaryPlusOperators(Of TSelf, TSelf)
Public Interface IBinaryNumber(Of TSelf)
Implements IAdditionOperators(Of TSelf, TSelf, TSelf), IAdditiveIdentity(Of TSelf, TSelf), IBitwiseOperators(Of TSelf, TSelf, TSelf), IComparable(Of TSelf), IComparisonOperators(Of TSelf, TSelf, Boolean), IDecrementOperators(Of TSelf), IDivisionOperators(Of TSelf, TSelf, TSelf), IEqualityOperators(Of TSelf, TSelf, Boolean), IEquatable(Of TSelf), IIncrementOperators(Of TSelf), IModulusOperators(Of TSelf, TSelf, TSelf), IMultiplicativeIdentity(Of TSelf, TSelf), IMultiplyOperators(Of TSelf, TSelf, TSelf), INumber(Of TSelf), INumberBase(Of TSelf), IParsable(Of TSelf), ISpanParsable(Of TSelf), ISubtractionOperators(Of TSelf, TSelf, TSelf), IUnaryNegationOperators(Of TSelf, TSelf), IUnaryPlusOperators(Of TSelf, TSelf), IUtf8SpanParsable(Of TSelf)

Type Parameters

TSelf

The type that implements the interface.

Derived
Implements

Properties

AllBitsSet

Gets an instance of the binary type in which all bits are set.

Methods

CompareTo(Object)

Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.

(Inherited from IComparable)
CompareTo(T)

Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.

(Inherited from IComparable<T>)
Equals(T)

Indicates whether the current object is equal to another object of the same type.

(Inherited from IEquatable<T>)
IsPow2(TSelf)

Determines if a value is a power of two.

Log2(TSelf)

Computes the log2 of a value.

ToString(String, IFormatProvider)

Formats the value of the current instance using the specified format.

(Inherited from IFormattable)
TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Tries to format the value of the current instance as UTF-8 into the provided span of bytes.

(Inherited from IUtf8SpanFormattable)
TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Tries to format the value of the current instance into the provided span of characters.

(Inherited from ISpanFormattable)

Explicit Interface Implementations

IUtf8SpanFormattable.TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider) (Inherited from INumberBase<TSelf>)
IUtf8SpanParsable<TSelf>.Parse(ReadOnlySpan<Byte>, IFormatProvider)

Parses a span of UTF-8 characters into a value.

(Inherited from INumberBase<TSelf>)
IUtf8SpanParsable<TSelf>.TryParse(ReadOnlySpan<Byte>, IFormatProvider, TSelf)

Tries to parse a span of UTF-8 characters into a value.

(Inherited from INumberBase<TSelf>)

Applies to