Package com.googlecode.javaewah
Class NonEmptyVirtualStorage
java.lang.Object
com.googlecode.javaewah.NonEmptyVirtualStorage
- All Implemented Interfaces:
BitmapStorage
This is a BitmapStorage that can be used to determine quickly if the result
of an operation is non-trivial... that is, whether there will be at least on
set bit.
- Since:
- 0.4.2
- Author:
- Daniel Lemire and Veronika Zenz
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addLiteralWord(long newData)
If the word to be added is non-zero, a NonEmptyException exception is thrown.void
addStreamOfEmptyWords(boolean v, long number)
If the boolean value is true and number is greater than 0, then it throws a NonEmptyException exception, otherwise, nothing happens.void
addStreamOfLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)
throws a NonEmptyException exception when number is greater than 0void
addStreamOfNegatedLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)
throws a NonEmptyException exception when number is greater than 0void
addWord(long newData)
If the word to be added is non-zero, a NonEmptyException exception is thrown.void
clear()
Empties the container.void
setSizeInBitsWithinLastWord(int bits)
Does nothing.
-
Constructor Details
-
NonEmptyVirtualStorage
public NonEmptyVirtualStorage()
-
-
Method Details
-
addWord
public void addWord(long newData)If the word to be added is non-zero, a NonEmptyException exception is thrown.- Specified by:
addWord
in interfaceBitmapStorage
- Parameters:
newData
- the word- See Also:
BitmapStorage.addWord(long)
-
addLiteralWord
public void addLiteralWord(long newData)If the word to be added is non-zero, a NonEmptyException exception is thrown.- Specified by:
addLiteralWord
in interfaceBitmapStorage
- Parameters:
newData
- the word- See Also:
BitmapStorage.addWord(long)
-
addStreamOfLiteralWords
public void addStreamOfLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)throws a NonEmptyException exception when number is greater than 0- Specified by:
addStreamOfLiteralWords
in interfaceBitmapStorage
- Parameters:
buffer
- the buffer wrapping the literal wordsstart
- the starting point in the arraynumber
- the number of literal words to add
-
addStreamOfEmptyWords
public void addStreamOfEmptyWords(boolean v, long number)If the boolean value is true and number is greater than 0, then it throws a NonEmptyException exception, otherwise, nothing happens.- Specified by:
addStreamOfEmptyWords
in interfaceBitmapStorage
- Parameters:
v
- zeros or onesnumber
- how many to words add- See Also:
BitmapStorage.addStreamOfEmptyWords(boolean, long)
-
addStreamOfNegatedLiteralWords
public void addStreamOfNegatedLiteralWords(com.googlecode.javaewah.Buffer buffer, int start, int number)throws a NonEmptyException exception when number is greater than 0- Specified by:
addStreamOfNegatedLiteralWords
in interfaceBitmapStorage
- Parameters:
buffer
- the buffer wrapping the literal wordsstart
- the starting point in the arraynumber
- the number of literal words to add
-
clear
public void clear()Description copied from interface:BitmapStorage
Empties the container.- Specified by:
clear
in interfaceBitmapStorage
-
setSizeInBitsWithinLastWord
public void setSizeInBitsWithinLastWord(int bits)Does nothing.- Specified by:
setSizeInBitsWithinLastWord
in interfaceBitmapStorage
- Parameters:
bits
- the size in bits- See Also:
BitmapStorage.setSizeInBitsWithinLastWord(int)
-