xref: /aosp_15_r20/external/flatbuffers/tests/DictionaryLookup/LongFloatEntry.java (revision 890232f25432b36107d06881e0a25aaa6b473652)
1*890232f2SAndroid Build Coastguard Worker // automatically generated by the FlatBuffers compiler, do not modify
2*890232f2SAndroid Build Coastguard Worker 
3*890232f2SAndroid Build Coastguard Worker package DictionaryLookup;
4*890232f2SAndroid Build Coastguard Worker 
5*890232f2SAndroid Build Coastguard Worker import java.nio.*;
6*890232f2SAndroid Build Coastguard Worker import java.lang.*;
7*890232f2SAndroid Build Coastguard Worker import java.util.*;
8*890232f2SAndroid Build Coastguard Worker import com.google.flatbuffers.*;
9*890232f2SAndroid Build Coastguard Worker 
10*890232f2SAndroid Build Coastguard Worker @SuppressWarnings("unused")
11*890232f2SAndroid Build Coastguard Worker public final class LongFloatEntry extends Table {
ValidateVersion()12*890232f2SAndroid Build Coastguard Worker   public static void ValidateVersion() { Constants.FLATBUFFERS_2_0_0(); }
getRootAsLongFloatEntry(ByteBuffer _bb)13*890232f2SAndroid Build Coastguard Worker   public static LongFloatEntry getRootAsLongFloatEntry(ByteBuffer _bb) { return getRootAsLongFloatEntry(_bb, new LongFloatEntry()); }
getRootAsLongFloatEntry(ByteBuffer _bb, LongFloatEntry obj)14*890232f2SAndroid Build Coastguard Worker   public static LongFloatEntry getRootAsLongFloatEntry(ByteBuffer _bb, LongFloatEntry obj) { _bb.order(ByteOrder.LITTLE_ENDIAN); return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)); }
__init(int _i, ByteBuffer _bb)15*890232f2SAndroid Build Coastguard Worker   public void __init(int _i, ByteBuffer _bb) { __reset(_i, _bb); }
__assign(int _i, ByteBuffer _bb)16*890232f2SAndroid Build Coastguard Worker   public LongFloatEntry __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; }
17*890232f2SAndroid Build Coastguard Worker 
key()18*890232f2SAndroid Build Coastguard Worker   public long key() { int o = __offset(4); return o != 0 ? bb.getLong(o + bb_pos) : 0L; }
value()19*890232f2SAndroid Build Coastguard Worker   public float value() { int o = __offset(6); return o != 0 ? bb.getFloat(o + bb_pos) : 0.0f; }
20*890232f2SAndroid Build Coastguard Worker 
createLongFloatEntry(FlatBufferBuilder builder, long key, float value)21*890232f2SAndroid Build Coastguard Worker   public static int createLongFloatEntry(FlatBufferBuilder builder,
22*890232f2SAndroid Build Coastguard Worker       long key,
23*890232f2SAndroid Build Coastguard Worker       float value) {
24*890232f2SAndroid Build Coastguard Worker     builder.startTable(2);
25*890232f2SAndroid Build Coastguard Worker     LongFloatEntry.addKey(builder, key);
26*890232f2SAndroid Build Coastguard Worker     LongFloatEntry.addValue(builder, value);
27*890232f2SAndroid Build Coastguard Worker     return LongFloatEntry.endLongFloatEntry(builder);
28*890232f2SAndroid Build Coastguard Worker   }
29*890232f2SAndroid Build Coastguard Worker 
startLongFloatEntry(FlatBufferBuilder builder)30*890232f2SAndroid Build Coastguard Worker   public static void startLongFloatEntry(FlatBufferBuilder builder) { builder.startTable(2); }
addKey(FlatBufferBuilder builder, long key)31*890232f2SAndroid Build Coastguard Worker   public static void addKey(FlatBufferBuilder builder, long key) { builder.addLong(key); builder.slot(0); }
addValue(FlatBufferBuilder builder, float value)32*890232f2SAndroid Build Coastguard Worker   public static void addValue(FlatBufferBuilder builder, float value) { builder.addFloat(1, value, 0.0f); }
endLongFloatEntry(FlatBufferBuilder builder)33*890232f2SAndroid Build Coastguard Worker   public static int endLongFloatEntry(FlatBufferBuilder builder) {
34*890232f2SAndroid Build Coastguard Worker     int o = builder.endTable();
35*890232f2SAndroid Build Coastguard Worker     return o;
36*890232f2SAndroid Build Coastguard Worker   }
37*890232f2SAndroid Build Coastguard Worker 
38*890232f2SAndroid Build Coastguard Worker   @Override
keysCompare(Integer o1, Integer o2, ByteBuffer _bb)39*890232f2SAndroid Build Coastguard Worker   protected int keysCompare(Integer o1, Integer o2, ByteBuffer _bb) {
40*890232f2SAndroid Build Coastguard Worker     long val_1 = _bb.getLong(__offset(4, o1, _bb));
41*890232f2SAndroid Build Coastguard Worker     long val_2 = _bb.getLong(__offset(4, o2, _bb));
42*890232f2SAndroid Build Coastguard Worker     return val_1 > val_2 ? 1 : val_1 < val_2 ? -1 : 0;
43*890232f2SAndroid Build Coastguard Worker   }
44*890232f2SAndroid Build Coastguard Worker 
__lookup_by_key(LongFloatEntry obj, int vectorLocation, long key, ByteBuffer bb)45*890232f2SAndroid Build Coastguard Worker   public static LongFloatEntry __lookup_by_key(LongFloatEntry obj, int vectorLocation, long key, ByteBuffer bb) {
46*890232f2SAndroid Build Coastguard Worker     int span = bb.getInt(vectorLocation - 4);
47*890232f2SAndroid Build Coastguard Worker     int start = 0;
48*890232f2SAndroid Build Coastguard Worker     while (span != 0) {
49*890232f2SAndroid Build Coastguard Worker       int middle = span / 2;
50*890232f2SAndroid Build Coastguard Worker       int tableOffset = __indirect(vectorLocation + 4 * (start + middle), bb);
51*890232f2SAndroid Build Coastguard Worker       long val = bb.getLong(__offset(4, bb.capacity() - tableOffset, bb));
52*890232f2SAndroid Build Coastguard Worker       int comp = val > key ? 1 : val < key ? -1 : 0;
53*890232f2SAndroid Build Coastguard Worker       if (comp > 0) {
54*890232f2SAndroid Build Coastguard Worker         span = middle;
55*890232f2SAndroid Build Coastguard Worker       } else if (comp < 0) {
56*890232f2SAndroid Build Coastguard Worker         middle++;
57*890232f2SAndroid Build Coastguard Worker         start += middle;
58*890232f2SAndroid Build Coastguard Worker         span -= middle;
59*890232f2SAndroid Build Coastguard Worker       } else {
60*890232f2SAndroid Build Coastguard Worker         return (obj == null ? new LongFloatEntry() : obj).__assign(tableOffset, bb);
61*890232f2SAndroid Build Coastguard Worker       }
62*890232f2SAndroid Build Coastguard Worker     }
63*890232f2SAndroid Build Coastguard Worker     return null;
64*890232f2SAndroid Build Coastguard Worker   }
65*890232f2SAndroid Build Coastguard Worker 
66*890232f2SAndroid Build Coastguard Worker   public static final class Vector extends BaseVector {
__assign(int _vector, int _element_size, ByteBuffer _bb)67*890232f2SAndroid Build Coastguard Worker     public Vector __assign(int _vector, int _element_size, ByteBuffer _bb) { __reset(_vector, _element_size, _bb); return this; }
68*890232f2SAndroid Build Coastguard Worker 
get(int j)69*890232f2SAndroid Build Coastguard Worker     public LongFloatEntry get(int j) { return get(new LongFloatEntry(), j); }
get(LongFloatEntry obj, int j)70*890232f2SAndroid Build Coastguard Worker     public LongFloatEntry get(LongFloatEntry obj, int j) {  return obj.__assign(__indirect(__element(j), bb), bb); }
getByKey(long key)71*890232f2SAndroid Build Coastguard Worker     public LongFloatEntry getByKey(long key) {  return __lookup_by_key(null, __vector(), key, bb); }
getByKey(LongFloatEntry obj, long key)72*890232f2SAndroid Build Coastguard Worker     public LongFloatEntry getByKey(LongFloatEntry obj, long key) {  return __lookup_by_key(obj, __vector(), key, bb); }
73*890232f2SAndroid Build Coastguard Worker   }
74*890232f2SAndroid Build Coastguard Worker }
75*890232f2SAndroid Build Coastguard Worker 
76