Package it.unimi.dsi.sux4j.mph.codec
Class Codec.Binary.Coder
java.lang.Object
it.unimi.dsi.sux4j.mph.codec.Codec.Binary.Coder
- All Implemented Interfaces:
Codec.Coder
- Enclosing class:
- Codec.Binary
-
Nested Class Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
codewordLength
(long symbol) Returns the length of the codeword associated with the given symbol.long
encode
(long next) Returns the codeword associated with a symbol, or −1 if the provided symbol should be escaped.Return a decoder associated with this coder.int
Returns the maximum length of a codeword (including escaped symbols).Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface it.unimi.dsi.sux4j.mph.codec.Codec.Coder
escape, escapedSymbolLength
-
Constructor Details
-
Coder
public Coder(int codewordLength)
-
-
Method Details
-
encode
public long encode(long next) Description copied from interface:Codec.Coder
Returns the codeword associated with a symbol, or −1 if the provided symbol should be escaped.If a symbol needs to be escaped, it must be encoded using the escape codeword followed by the symbol written in a field of
Codec.Coder.escapedSymbolLength()
bits.- Specified by:
encode
in interfaceCodec.Coder
- Parameters:
next
- a symbol.- Returns:
- the associated codeword.
-
codewordLength
public int codewordLength(long symbol) Description copied from interface:Codec.Coder
Returns the length of the codeword associated with the given symbol.For escaped symbols, the returned values is the length of the escape codeword plus
Codec.Coder.escapedSymbolLength()
.- Specified by:
codewordLength
in interfaceCodec.Coder
- Parameters:
symbol
- a symbol provided at construction time.- Returns:
- the length of the codeword associated with the given symbol.
-
maxCodewordLength
public int maxCodewordLength()Description copied from interface:Codec.Coder
Returns the maximum length of a codeword (including escaped symbols).- Specified by:
maxCodewordLength
in interfaceCodec.Coder
- Returns:
- the maximum length of a codeword (including escaped symbols).
-
getDecoder
Description copied from interface:Codec.Coder
Return a decoder associated with this coder.- Specified by:
getDecoder
in interfaceCodec.Coder
- Returns:
- a decoder associated with this coder.
-