Package org.h2.mvstore.type
Class StringDataType
- java.lang.Object
-
- org.h2.mvstore.type.BasicDataType<java.lang.String>
-
- org.h2.mvstore.type.StringDataType
-
- All Implemented Interfaces:
java.util.Comparator<java.lang.String>,DataType<java.lang.String>
public class StringDataType extends BasicDataType<java.lang.String>
A string type.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String[]EMPTY_STRING_ARRstatic StringDataTypeINSTANCE
-
Constructor Summary
Constructors Constructor Description StringDataType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intbinarySearch(java.lang.String key, java.lang.Object storageObj, int size, int initialGuess)Perform binary search for the key within the storageintcompare(java.lang.String a, java.lang.String b)Compare two keys.java.lang.String[]createStorage(int size)Create storage object of array type to hold valuesintgetMemory(java.lang.String obj)Calculates the amount of used memory in bytes.java.lang.Stringread(java.nio.ByteBuffer buff)Read an object.voidwrite(WriteBuffer buff, java.lang.String s)Write an object.-
Methods inherited from class org.h2.mvstore.type.BasicDataType
cast, equals, hashCode, isMemoryEstimationAllowed, read, write
-
-
-
-
Field Detail
-
INSTANCE
public static final StringDataType INSTANCE
-
EMPTY_STRING_ARR
private static final java.lang.String[] EMPTY_STRING_ARR
-
-
Method Detail
-
createStorage
public java.lang.String[] createStorage(int size)
Description copied from interface:DataTypeCreate storage object of array type to hold values- Parameters:
size- number of values to hold- Returns:
- storage object
-
compare
public int compare(java.lang.String a, java.lang.String b)Description copied from interface:DataTypeCompare two keys.- Specified by:
comparein interfacejava.util.Comparator<java.lang.String>- Specified by:
comparein interfaceDataType<java.lang.String>- Overrides:
comparein classBasicDataType<java.lang.String>- Parameters:
a- the first keyb- the second key- Returns:
- -1 if the first key is smaller, 1 if larger, and 0 if equal
-
binarySearch
public int binarySearch(java.lang.String key, java.lang.Object storageObj, int size, int initialGuess)Description copied from interface:DataTypePerform binary search for the key within the storage- Specified by:
binarySearchin interfaceDataType<java.lang.String>- Overrides:
binarySearchin classBasicDataType<java.lang.String>- Parameters:
key- to search forstorageObj- to search within (an array of type T)size- number of data items in the storageinitialGuess- for key position- Returns:
- index of the key , if found, - index of the insertion point, if not
-
getMemory
public int getMemory(java.lang.String obj)
Description copied from interface:DataTypeCalculates the amount of used memory in bytes.- Specified by:
getMemoryin interfaceDataType<java.lang.String>- Specified by:
getMemoryin classBasicDataType<java.lang.String>- Parameters:
obj- the object- Returns:
- the used memory
-
read
public java.lang.String read(java.nio.ByteBuffer buff)
Description copied from interface:DataTypeRead an object.- Specified by:
readin interfaceDataType<java.lang.String>- Specified by:
readin classBasicDataType<java.lang.String>- Parameters:
buff- the source buffer- Returns:
- the object
-
write
public void write(WriteBuffer buff, java.lang.String s)
Description copied from interface:DataTypeWrite an object.- Specified by:
writein interfaceDataType<java.lang.String>- Specified by:
writein classBasicDataType<java.lang.String>- Parameters:
buff- the target buffers- the value
-
-