IBinaryInteger<TSelf> Interface

Definition

Defines an integer type that is represented in a base-2 format.

generic <typename TSelf>
 where TSelf : IBinaryInteger<TSelf>public interface class IBinaryInteger : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, System::Numerics::IAdditionOperators<TSelf, TSelf, TSelf>, System::Numerics::IAdditiveIdentity<TSelf, TSelf>, System::Numerics::IBinaryNumber<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::IShiftOperators<TSelf, int, TSelf>, System::Numerics::ISubtractionOperators<TSelf, TSelf, TSelf>, System::Numerics::IUnaryNegationOperators<TSelf, TSelf>, System::Numerics::IUnaryPlusOperators<TSelf, TSelf>
public interface IBinaryInteger<TSelf> : IComparable<TSelf>, IEquatable<TSelf>, IParsable<TSelf>, ISpanParsable<TSelf>, System.Numerics.IAdditionOperators<TSelf,TSelf,TSelf>, System.Numerics.IAdditiveIdentity<TSelf,TSelf>, System.Numerics.IBinaryNumber<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.IShiftOperators<TSelf,int,TSelf>, System.Numerics.ISubtractionOperators<TSelf,TSelf,TSelf>, System.Numerics.IUnaryNegationOperators<TSelf,TSelf>, System.Numerics.IUnaryPlusOperators<TSelf,TSelf> where TSelf : IBinaryInteger<TSelf>
type IBinaryInteger<'Self (requires 'Self :> IBinaryInteger<'Self>)> = interface
    interface IComparable
    interface IComparable<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface IEquatable<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface IFormattable
    interface IParsable<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface ISpanFormattable
    interface ISpanParsable<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface IAdditionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IAdditiveIdentity<'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IBinaryNumber<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface IBitwiseOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IComparisonOperators<'Self, 'Self, bool (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IEqualityOperators<'Self, 'Self, bool (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IDecrementOperators<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface IDivisionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IIncrementOperators<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface IModulusOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IMultiplicativeIdentity<'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IMultiplyOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface INumber<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface INumberBase<'Self (requires 'Self :> IBinaryInteger<'Self>)>
    interface ISubtractionOperators<'Self, 'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IUnaryNegationOperators<'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IUnaryPlusOperators<'Self, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
    interface IShiftOperators<'Self, int, 'Self (requires 'Self :> IBinaryInteger<'Self> and 'Self :> IBinaryInteger<'Self>)>
Public Interface IBinaryInteger(Of TSelf)
Implements IAdditionOperators(Of TSelf, TSelf, TSelf), IAdditiveIdentity(Of TSelf, TSelf), IBinaryNumber(Of 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), IShiftOperators(Of TSelf, Integer, TSelf), ISpanParsable(Of TSelf), ISubtractionOperators(Of TSelf, TSelf, TSelf), IUnaryNegationOperators(Of TSelf, TSelf), IUnaryPlusOperators(Of TSelf, TSelf)

Type Parameters

TSelf

The type that implements the interface.

Derived
Implements

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>)
DivRem(TSelf, TSelf)

Computes the quotient and remainder of two values.

Equals(T)

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

(Inherited from IEquatable<T>)
GetByteCount()

Gets the number of bytes that will be written as part of TryWriteLittleEndian(Span<Byte>, Int32).

GetShortestBitLength()

Gets the length, in bits, of the shortest two's complement representation of the current value.

LeadingZeroCount(TSelf)

Computes the number of leading zeros in a value.

PopCount(TSelf)

Computes the number of bits that are set in a value.

RotateLeft(TSelf, Int32)

Rotates a value left by a given amount.

RotateRight(TSelf, Int32)

Rotates a value right by a given amount.

ToString(String, IFormatProvider)

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

(Inherited from IFormattable)
TrailingZeroCount(TSelf)

Computes the number of trailing zeros in a value.

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)
TryWriteBigEndian(Span<Byte>, Int32)

Tries to write the current value, in big-endian format, to a given span.

TryWriteLittleEndian(Span<Byte>, Int32)

Tries to write the current value, in little-endian format, to a given span.

WriteBigEndian(Byte[])

Writes the current value, in big-endian format, to a given array.

WriteBigEndian(Byte[], Int32)

Writes the current value, in big-endian format, to a given array.

WriteBigEndian(Span<Byte>)

Writes the current value, in big-endian format, to a given span.

WriteLittleEndian(Byte[])

Writes the current value, in little-endian format, to a given array.

WriteLittleEndian(Byte[], Int32)

Writes the current value, in little-endian format, to a specified array starting at a specified index.

WriteLittleEndian(Span<Byte>)

Writes the current value, in little-endian format, to a given span.

Applies to