1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. 2 // This source code is licensed under both the GPLv2 (found in the 3 // COPYING file in the root directory) and Apache 2.0 License 4 // (found in the LICENSE.Apache file in the root directory). 5 6 package org.rocksdb; 7 8 /** 9 * IndexType used in conjunction with BlockBasedTable. 10 */ 11 public enum IndexType { 12 /** 13 * A space efficient index block that is optimized for 14 * binary-search-based index. 15 */ 16 kBinarySearch((byte) 0), 17 /** 18 * The hash index, if enabled, will do the hash lookup when 19 * {@code Options.prefix_extractor} is provided. 20 */ 21 kHashSearch((byte) 1), 22 /** 23 * A two-level index implementation. Both levels are binary search indexes. 24 */ 25 kTwoLevelIndexSearch((byte) 2); 26 27 /** 28 * Returns the byte value of the enumerations value 29 * 30 * @return byte representation 31 */ getValue()32 public byte getValue() { 33 return value_; 34 } 35 IndexType(byte value)36 IndexType(byte value) { 37 value_ = value; 38 } 39 40 private final byte value_; 41 } 42