1// automatically generated by the FlatBuffers compiler, do not modify 2 3/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */ 4 5import * as flatbuffers from 'flatbuffers'; 6 7import { OuterStruct, OuterStructT } from '../../my-game/example/outer-struct.js'; 8import { TestEnum } from '../../my-game/example/test-enum.js'; 9 10 11export class NestedStruct implements flatbuffers.IUnpackableObject<NestedStructT> { 12 bb: flatbuffers.ByteBuffer|null = null; 13 bb_pos = 0; 14 __init(i:number, bb:flatbuffers.ByteBuffer):NestedStruct { 15 this.bb_pos = i; 16 this.bb = bb; 17 return this; 18} 19 20a(index: number):number|null { 21 return this.bb!.readInt32(this.bb_pos + 0 + index * 4); 22} 23 24b():TestEnum { 25 return this.bb!.readInt8(this.bb_pos + 8); 26} 27 28cUnderscore(index: number):TestEnum|null { 29 return this.bb!.readInt8(this.bb_pos + 9 + index); 30} 31 32dOuter(index: number, obj?:OuterStruct):OuterStruct|null { 33 return (obj || new OuterStruct()).__init(this.bb_pos + 16 + index * 208, this.bb!); 34} 35 36e(index: number):bigint|null { 37 return this.bb!.readInt64(this.bb_pos + 1056 + index * 8); 38} 39 40static getFullyQualifiedName():string { 41 return 'MyGame.Example.NestedStruct'; 42} 43 44static sizeOf():number { 45 return 1072; 46} 47 48static createNestedStruct(builder:flatbuffers.Builder, a: number[]|null, b: TestEnum, c_underscore: number[]|null, d_outer: (any|OuterStructT)[]|null, e: bigint[]|null):flatbuffers.Offset { 49 builder.prep(8, 1072); 50 51 for (let i = 1; i >= 0; --i) { 52 builder.writeInt64(BigInt(e?.[i] ?? 0)); 53 } 54 55 56 for (let i = 4; i >= 0; --i) { 57 const item = d_outer?.[i]; 58 59 if (item instanceof OuterStructT) { 60 item.pack(builder); 61 continue; 62 } 63 64 OuterStruct.createOuterStruct(builder, 65 item?.a, 66 item?.b, 67 (item?.cUnderscore?.a ?? 0), 68 (item?.cUnderscore?.b ?? []), 69 (item?.cUnderscore?.c ?? 0), 70 (item?.cUnderscore?.dUnderscore ?? BigInt(0)), 71 item?.d, 72 (item?.e?.a ?? 0), 73 (item?.e?.b ?? []), 74 (item?.e?.c ?? 0), 75 (item?.e?.dUnderscore ?? BigInt(0)), 76 item?.f 77 ); 78 } 79 80 builder.pad(5); 81 82 for (let i = 1; i >= 0; --i) { 83 builder.writeInt8((c_underscore?.[i] ?? 0)); 84 85 } 86 87 builder.writeInt8(b); 88 89 for (let i = 1; i >= 0; --i) { 90 builder.writeInt32((a?.[i] ?? 0)); 91 92 } 93 94 return builder.offset(); 95} 96 97 98unpack(): NestedStructT { 99 return new NestedStructT( 100 this.bb!.createScalarList<number>(this.a.bind(this), 2), 101 this.b(), 102 this.bb!.createScalarList<TestEnum>(this.cUnderscore.bind(this), 2), 103 this.bb!.createObjList<OuterStruct, OuterStructT>(this.dOuter.bind(this), 5), 104 this.bb!.createScalarList<bigint>(this.e.bind(this), 2) 105 ); 106} 107 108 109unpackTo(_o: NestedStructT): void { 110 _o.a = this.bb!.createScalarList<number>(this.a.bind(this), 2); 111 _o.b = this.b(); 112 _o.cUnderscore = this.bb!.createScalarList<TestEnum>(this.cUnderscore.bind(this), 2); 113 _o.dOuter = this.bb!.createObjList<OuterStruct, OuterStructT>(this.dOuter.bind(this), 5); 114 _o.e = this.bb!.createScalarList<bigint>(this.e.bind(this), 2); 115} 116} 117 118export class NestedStructT implements flatbuffers.IGeneratedObject { 119constructor( 120 public a: (number)[] = [], 121 public b: TestEnum = TestEnum.A, 122 public cUnderscore: (TestEnum)[] = [TestEnum.A, TestEnum.A], 123 public dOuter: (OuterStructT)[] = [], 124 public e: (bigint)[] = [] 125){} 126 127 128pack(builder:flatbuffers.Builder): flatbuffers.Offset { 129 return NestedStruct.createNestedStruct(builder, 130 this.a, 131 this.b, 132 this.cUnderscore, 133 this.dOuter, 134 this.e 135 ); 136} 137} 138