Show / Hide Table of Contents

    Class BitUtil

    A variety of high efficiency bit twiddling routines.

    This is a Lucene.NET INTERNAL API, use at your own risk
    Inheritance
    System.Object
    BitUtil
    Namespace: Lucene.Net.Util
    Assembly: Lucene.Net.dll
    Syntax
    public sealed class BitUtil : object

    Methods

    | Improve this Doc View Source

    BitCount(Byte)

    Return the number of bits sets in b.

    Declaration
    public static int BitCount(byte b)
    Parameters
    Type Name Description
    System.Byte b
    Returns
    Type Description
    System.Int32
    | Improve this Doc View Source

    BitList(Byte)

    Return the list of bits which are set in b encoded as followed:

    (i >>> (4 * n)) & 0x0F
    is the offset of the n-th set bit of

    the given byte plus one, or 0 if there are n or less bits set in the given byte. For example

    bitList(12)
    returns 0x43:
    • 0x43 & 0x0F
      is 3, meaning the the first bit set is at offset 3-1 = 2,
    • (0x43 >>> 4) & 0x0F
      is 4, meaning there is a second bit set at offset 4-1=3,
    • (0x43 >>> 8) & 0x0F
      is 0, meaning there is no more bit set in this byte.

    Declaration
    public static int BitList(byte b)
    Parameters
    Type Name Description
    System.Byte b
    Returns
    Type Description
    System.Int32
    | Improve this Doc View Source

    NextHighestPowerOfTwo(Int32)

    Returns the next highest power of two, or the current value if it's already a power of two or zero

    Declaration
    public static int NextHighestPowerOfTwo(int v)
    Parameters
    Type Name Description
    System.Int32 v
    Returns
    Type Description
    System.Int32
    | Improve this Doc View Source

    NextHighestPowerOfTwo(Int64)

    Returns the next highest power of two, or the current value if it's already a power of two or zero

    Declaration
    public static long NextHighestPowerOfTwo(long v)
    Parameters
    Type Name Description
    System.Int64 v
    Returns
    Type Description
    System.Int64
    | Improve this Doc View Source

    Pop_AndNot(Int64[], Int64[], Int32, Int32)

    Returns the popcount or cardinality of A & ~B. Neither array is modified.

    Declaration
    public static long Pop_AndNot(long[] arr1, long[] arr2, int wordOffset, int numWords)
    Parameters
    Type Name Description
    System.Int64[] arr1
    System.Int64[] arr2
    System.Int32 wordOffset
    System.Int32 numWords
    Returns
    Type Description
    System.Int64
    | Improve this Doc View Source

    Pop_Array(Int64[], Int32, Int32)

    Returns the number of set bits in an array of s.

    Declaration
    public static long Pop_Array(long[] arr, int wordOffset, int numWords)
    Parameters
    Type Name Description
    System.Int64[] arr
    System.Int32 wordOffset
    System.Int32 numWords
    Returns
    Type Description
    System.Int64
    | Improve this Doc View Source

    Pop_Intersect(Int64[], Int64[], Int32, Int32)

    Returns the popcount or cardinality of the two sets after an intersection. Neither array is modified.

    Declaration
    public static long Pop_Intersect(long[] arr1, long[] arr2, int wordOffset, int numWords)
    Parameters
    Type Name Description
    System.Int64[] arr1
    System.Int64[] arr2
    System.Int32 wordOffset
    System.Int32 numWords
    Returns
    Type Description
    System.Int64
    | Improve this Doc View Source

    Pop_Union(Int64[], Int64[], Int32, Int32)

    Returns the popcount or cardinality of the union of two sets. Neither array is modified.

    Declaration
    public static long Pop_Union(long[] arr1, long[] arr2, int wordOffset, int numWords)
    Parameters
    Type Name Description
    System.Int64[] arr1
    System.Int64[] arr2
    System.Int32 wordOffset
    System.Int32 numWords
    Returns
    Type Description
    System.Int64
    | Improve this Doc View Source

    Pop_Xor(Int64[], Int64[], Int32, Int32)

    Returns the popcount or cardinality of A ^ B Neither array is modified.

    Declaration
    public static long Pop_Xor(long[] arr1, long[] arr2, int wordOffset, int numWords)
    Parameters
    Type Name Description
    System.Int64[] arr1
    System.Int64[] arr2
    System.Int32 wordOffset
    System.Int32 numWords
    Returns
    Type Description
    System.Int64
    • Improve this Doc
    • View Source
    Back to top Copyright © 2020 Licensed to the Apache Software Foundation (ASF)