// automatically generated by the FlatBuffers compiler, do not modify import * as flatbuffers from 'flatbuffers'; import { DictionaryEncoding } from './dictionary-encoding.js'; import { KeyValue } from './key-value.js'; import { Type } from './type.js'; /** * ---------------------------------------------------------------------- * A field represents a named column in a record / row batch or child of a * nested type. */ export class Field { bb: flatbuffers.ByteBuffer|null = null; bb_pos = 0; __init(i:number, bb:flatbuffers.ByteBuffer):Field { this.bb_pos = i; this.bb = bb; return this; } static getRootAsField(bb:flatbuffers.ByteBuffer, obj?:Field):Field { return (obj || new Field()).__init(bb.readInt32(bb.position()) + bb.position(), bb); } static getSizePrefixedRootAsField(bb:flatbuffers.ByteBuffer, obj?:Field):Field { bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH); return (obj || new Field()).__init(bb.readInt32(bb.position()) + bb.position(), bb); } /** * Name is not required, in i.e. a List */ name():string|null name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null name(optionalEncoding?:any):string|Uint8Array|null { const offset = this.bb!.__offset(this.bb_pos, 4); return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null; } /** * Whether or not this field can contain nulls. Should be true in general. */ nullable():boolean { const offset = this.bb!.__offset(this.bb_pos, 6); return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false; } typeType():Type { const offset = this.bb!.__offset(this.bb_pos, 8); return offset ? this.bb!.readUint8(this.bb_pos + offset) : Type.NONE; } /** * This is the type of the decoded value if the field is dictionary encoded. */ // @ts-ignore type(obj:any):any|null { const offset = this.bb!.__offset(this.bb_pos, 10); return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null; } /** * Present only if the field is dictionary encoded. */ dictionary(obj?:DictionaryEncoding):DictionaryEncoding|null { const offset = this.bb!.__offset(this.bb_pos, 12); return offset ? (obj || new DictionaryEncoding()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null; } /** * children apply only to nested data types like Struct, List and Union. For * primitive types children will have length 0. */ children(index: number, obj?:Field):Field|null { const offset = this.bb!.__offset(this.bb_pos, 14); return offset ? (obj || new Field()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null; } childrenLength():number { const offset = this.bb!.__offset(this.bb_pos, 14); return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; } /** * User-defined metadata */ customMetadata(index: number, obj?:KeyValue):KeyValue|null { const offset = this.bb!.__offset(this.bb_pos, 16); return offset ? (obj || new KeyValue()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null; } customMetadataLength():number { const offset = this.bb!.__offset(this.bb_pos, 16); return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; } static startField(builder:flatbuffers.Builder) { builder.startObject(7); } static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) { builder.addFieldOffset(0, nameOffset, 0); } static addNullable(builder:flatbuffers.Builder, nullable:boolean) { builder.addFieldInt8(1, +nullable, +false); } static addTypeType(builder:flatbuffers.Builder, typeType:Type) { builder.addFieldInt8(2, typeType, Type.NONE); } static addType(builder:flatbuffers.Builder, typeOffset:flatbuffers.Offset) { builder.addFieldOffset(3, typeOffset, 0); } static addDictionary(builder:flatbuffers.Builder, dictionaryOffset:flatbuffers.Offset) { builder.addFieldOffset(4, dictionaryOffset, 0); } static addChildren(builder:flatbuffers.Builder, childrenOffset:flatbuffers.Offset) { builder.addFieldOffset(5, childrenOffset, 0); } static createChildrenVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset { builder.startVector(4, data.length, 4); for (let i = data.length - 1; i >= 0; i--) { builder.addOffset(data[i]!); } return builder.endVector(); } static startChildrenVector(builder:flatbuffers.Builder, numElems:number) { builder.startVector(4, numElems, 4); } static addCustomMetadata(builder:flatbuffers.Builder, customMetadataOffset:flatbuffers.Offset) { builder.addFieldOffset(6, customMetadataOffset, 0); } static createCustomMetadataVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset { builder.startVector(4, data.length, 4); for (let i = data.length - 1; i >= 0; i--) { builder.addOffset(data[i]!); } return builder.endVector(); } static startCustomMetadataVector(builder:flatbuffers.Builder, numElems:number) { builder.startVector(4, numElems, 4); } static endField(builder:flatbuffers.Builder):flatbuffers.Offset { const offset = builder.endObject(); return offset; } }