// automatically generated by the FlatBuffers compiler, do not modify /* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */ import * as flatbuffers from 'flatbuffers'; import { NonZero } from './non-zero.js'; export class NonZeroVectorTable implements flatbuffers.IUnpackableObject { bb: flatbuffers.ByteBuffer|null = null; bb_pos: number = 0; __init(i:number, bb:flatbuffers.ByteBuffer):NonZeroVectorTable { this.bb_pos = i; this.bb = bb; return this; } static getRootAsNonZeroVectorTable(bb:flatbuffers.ByteBuffer, obj?:NonZeroVectorTable):NonZeroVectorTable { return (obj || new NonZeroVectorTable()).__init(bb.readInt32(bb.position()) + bb.position(), bb); } static getSizePrefixedRootAsNonZeroVectorTable(bb:flatbuffers.ByteBuffer, obj?:NonZeroVectorTable):NonZeroVectorTable { bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH); return (obj || new NonZeroVectorTable()).__init(bb.readInt32(bb.position()) + bb.position(), bb); } values(index: number):NonZero|null { const offset = this.bb!.__offset(this.bb_pos, 4); return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : null; } valuesLength():number { const offset = this.bb!.__offset(this.bb_pos, 4); return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; } valuesArray():Uint8Array|null { const offset = this.bb!.__offset(this.bb_pos, 4); return offset ? new Uint8Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null; } value():NonZero { const offset = this.bb!.__offset(this.bb_pos, 6); return offset ? this.bb!.readUint8(this.bb_pos + offset) : NonZero.VAL; } static startNonZeroVectorTable(builder:flatbuffers.Builder):void { builder.startObject(2); } static addValues(builder:flatbuffers.Builder, valuesOffset:flatbuffers.Offset):void { builder.addFieldOffset(0, valuesOffset, 0); } static createValuesVector(builder:flatbuffers.Builder, data:NonZero[]):flatbuffers.Offset { builder.startVector(1, data.length, 1); for (let i = data.length - 1; i >= 0; i--) { builder.addInt8(data[i]!); } return builder.endVector(); } static startValuesVector(builder:flatbuffers.Builder, numElems:number):void { builder.startVector(1, numElems, 1); } static addValue(builder:flatbuffers.Builder, value:NonZero):void { builder.addFieldInt8(1, value, NonZero.VAL); } static endNonZeroVectorTable(builder:flatbuffers.Builder):flatbuffers.Offset { const offset = builder.endObject(); return offset; } static createNonZeroVectorTable(builder:flatbuffers.Builder, valuesOffset:flatbuffers.Offset, value:NonZero):flatbuffers.Offset { NonZeroVectorTable.startNonZeroVectorTable(builder); NonZeroVectorTable.addValues(builder, valuesOffset); NonZeroVectorTable.addValue(builder, value); return NonZeroVectorTable.endNonZeroVectorTable(builder); } unpack(): NonZeroVectorTableT { return new NonZeroVectorTableT( this.bb!.createScalarList(this.values.bind(this), this.valuesLength()), this.value() ); } unpackTo(_o: NonZeroVectorTableT): void { _o.values = this.bb!.createScalarList(this.values.bind(this), this.valuesLength()); _o.value = this.value(); } } export class NonZeroVectorTableT implements flatbuffers.IGeneratedObject { constructor( public values: (NonZero)[] = [], public value: NonZero = NonZero.VAL ){} pack(builder:flatbuffers.Builder): flatbuffers.Offset { const values = NonZeroVectorTable.createValuesVector(builder, this.values); return NonZeroVectorTable.createNonZeroVectorTable(builder, values, this.value ); } }