getObjectBoxModel function
ModelDefinition
getObjectBoxModel()
Returns the ObjectBox model definition for this project for use with obx.Store.new.
Implementation
obx_int.ModelDefinition getObjectBoxModel() {
final model = obx_int.ModelInfo(
entities: _entities,
lastEntityId: const obx_int.IdUid(1, 1718053728221939704),
lastIndexId: const obx_int.IdUid(2, 7396986783401268781),
lastRelationId: const obx_int.IdUid(0, 0),
lastSequenceId: const obx_int.IdUid(0, 0),
retiredEntityUids: const [],
retiredIndexUids: const [],
retiredPropertyUids: const [],
retiredRelationUids: const [],
modelVersion: 5,
modelVersionParserMinimum: 5,
version: 1,
);
final bindings = <Type, obx_int.EntityDefinition>{
ObxVectorDoc: obx_int.EntityDefinition<ObxVectorDoc>(
model: _entities[0],
toOneRelations: (ObxVectorDoc object) => [],
toManyRelations: (ObxVectorDoc object) => {},
getId: (ObxVectorDoc object) => object.id,
setId: (ObxVectorDoc object, int id) {
object.id = id;
},
objectToFB: (ObxVectorDoc object, fb.Builder fbb) {
final docKeyOffset = fbb.writeString(object.docKey);
final contentOffset =
object.content == null ? null : fbb.writeString(object.content!);
final vectorOffset =
object.vector == null ? null : fbb.writeListFloat32(object.vector!);
fbb.startTable(5);
fbb.addInt64(0, object.id);
fbb.addOffset(1, docKeyOffset);
fbb.addOffset(2, contentOffset);
fbb.addOffset(3, vectorOffset);
fbb.finish(fbb.endTable());
return object.id;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final docKeyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final contentParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 8);
final vectorParam = const fb.ListReader<double>(
fb.Float32Reader(),
lazy: false,
).vTableGetNullable(buffer, rootOffset, 10);
final object = ObxVectorDoc(
docKey: docKeyParam,
content: contentParam,
vector: vectorParam,
)..id = const fb.Int64Reader().vTableGet(buffer, rootOffset, 4, 0);
return object;
},
),
};
return obx_int.ModelDefinition(model, bindings);
}