Fork me on GitHub
  • API

    Show / Hide Table of Contents

    Class EliasFanoDecoder

    A decoder for an EliasFanoEncoder.

    Note

    This API is for internal purposes only and might change in incompatible ways in the next release.

    Inheritance
    object
    EliasFanoDecoder
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Lucene.Net.Util.Packed
    Assembly: Lucene.Net.dll
    Syntax
    public class EliasFanoDecoder

    Constructors

    EliasFanoDecoder(EliasFanoEncoder)

    Construct a decoder for a given EliasFanoEncoder. The decoding index is set to just before the first encoded value.

    Declaration
    public EliasFanoDecoder(EliasFanoEncoder efEncoder)
    Parameters
    Type Name Description
    EliasFanoEncoder efEncoder

    Fields

    NO_MORE_VALUES

    A decoder for an EliasFanoEncoder.

    Note

    This API is for internal purposes only and might change in incompatible ways in the next release.

    Declaration
    public const long NO_MORE_VALUES = -1
    Field Value
    Type Description
    long

    Properties

    EliasFanoEncoder

    A decoder for an EliasFanoEncoder.

    Note

    This API is for internal purposes only and might change in incompatible ways in the next release.

    Declaration
    public virtual EliasFanoEncoder EliasFanoEncoder { get; }
    Property Value
    Type Description
    EliasFanoEncoder

    The Elias-Fano encoder that is decoded.

    NumEncoded

    The number of values encoded by the encoder.

    Declaration
    public virtual long NumEncoded { get; }
    Property Value
    Type Description
    long

    The number of values encoded by the encoder.

    Methods

    AdvanceToIndex(long)

    Advance the decoding index to a given index. and return true iff it is available.

    See also CurrentValue().

    The current implementation does not use the index on the upper bit zero bit positions.

    Note: there is currently no implementation of BackToIndex().
    Declaration
    public virtual bool AdvanceToIndex(long index)
    Parameters
    Type Name Description
    long index
    Returns
    Type Description
    bool

    AdvanceToValue(long)

    Given a target value, advance the decoding index to the first bigger or equal value and return it if it is available. Otherwise return NO_MORE_VALUES.

    The current implementation uses the index on the upper zero bit positions.
    Declaration
    public virtual long AdvanceToValue(long target)
    Parameters
    Type Name Description
    long target
    Returns
    Type Description
    long

    BackToValue(long)

    Given a target value, go back to the first smaller or equal value and return it if it is available. Otherwise return NO_MORE_VALUES.

    The current implementation does not use the index on the upper zero bit positions.
    Declaration
    public virtual long BackToValue(long target)
    Parameters
    Type Name Description
    long target
    Returns
    Type Description
    long

    CurrentIndex()

    The current decoding index. The first value encoded by EncodeNext(long) has index 0. Only valid directly after NextValue(), AdvanceToValue(long), PreviousValue(), or BackToValue(long) returned another value than NO_MORE_VALUES, or AdvanceToIndex(long) returned true.

    Declaration
    public virtual long CurrentIndex()
    Returns
    Type Description
    long

    The decoding index of the last decoded value, or as last set by AdvanceToIndex(long).

    CurrentValue()

    The value at the current decoding index. Only valid when CurrentIndex() would return a valid result.

    This is only intended for use after AdvanceToIndex(long) returned true.
    Declaration
    public virtual long CurrentValue()
    Returns
    Type Description
    long

    The value encoded at CurrentIndex().

    NextValue()

    If another value is available after the current decoding index, return this value and and increase the decoding index by 1. Otherwise return NO_MORE_VALUES.

    Declaration
    public virtual long NextValue()
    Returns
    Type Description
    long

    PreviousValue()

    If another value is available before the current decoding index, return this value and decrease the decoding index by 1. Otherwise return NO_MORE_VALUES.

    Declaration
    public virtual long PreviousValue()
    Returns
    Type Description
    long

    ToAfterSequence()

    Set the decoding index to just after the last encoded value.

    Declaration
    public virtual void ToAfterSequence()

    ToBeforeSequence()

    Set the decoding index to just before the first encoded value.

    Declaration
    public virtual void ToBeforeSequence()
    Back to top Copyright © 2024 The Apache Software Foundation, Licensed under the Apache License, Version 2.0
    Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation.
    All other marks mentioned may be trademarks or registered trademarks of their respective owners.