// automatically generated by the FlatBuffers compiler, do not modify import { OuterStruct, OuterStructT } from '../../my-game/example/outer-struct.js'; import { TestEnum } from '../../my-game/example/test-enum.js'; export class NestedStruct { constructor() { this.bb = null; this.bb_pos = 0; } __init(i, bb) { this.bb_pos = i; this.bb = bb; return this; } a(index) { return this.bb.readInt32(this.bb_pos + 0 + index * 4); } b() { return this.bb.readInt8(this.bb_pos + 8); } cUnderscore(index) { return this.bb.readInt8(this.bb_pos + 9 + index); } dOuter(index, obj) { return (obj || new OuterStruct()).__init(this.bb_pos + 16 + index * 208, this.bb); } e(index) { return this.bb.readInt64(this.bb_pos + 1056 + index * 8); } static getFullyQualifiedName() { return 'MyGame.Example.NestedStruct'; } static sizeOf() { return 1072; } static createNestedStruct(builder, a, b, c_underscore, d_outer, e) { builder.prep(8, 1072); for (let i = 1; i >= 0; --i) { builder.writeInt64(BigInt(e?.[i] ?? 0)); } for (let i = 4; i >= 0; --i) { const item = d_outer?.[i]; if (item instanceof OuterStructT) { item.pack(builder); continue; } OuterStruct.createOuterStruct(builder, item?.a, item?.b, (item?.cUnderscore?.a ?? 0), (item?.cUnderscore?.b ?? []), (item?.cUnderscore?.c ?? 0), (item?.cUnderscore?.dUnderscore ?? BigInt(0)), item?.d, (item?.e?.a ?? 0), (item?.e?.b ?? []), (item?.e?.c ?? 0), (item?.e?.dUnderscore ?? BigInt(0)), item?.f); } builder.pad(5); for (let i = 1; i >= 0; --i) { builder.writeInt8((c_underscore?.[i] ?? 0)); } builder.writeInt8(b); for (let i = 1; i >= 0; --i) { builder.writeInt32((a?.[i] ?? 0)); } return builder.offset(); } unpack() { return new NestedStructT(this.bb.createScalarList(this.a.bind(this), 2), this.b(), this.bb.createScalarList(this.cUnderscore.bind(this), 2), this.bb.createObjList(this.dOuter.bind(this), 5), this.bb.createScalarList(this.e.bind(this), 2)); } unpackTo(_o) { _o.a = this.bb.createScalarList(this.a.bind(this), 2); _o.b = this.b(); _o.cUnderscore = this.bb.createScalarList(this.cUnderscore.bind(this), 2); _o.dOuter = this.bb.createObjList(this.dOuter.bind(this), 5); _o.e = this.bb.createScalarList(this.e.bind(this), 2); } } export class NestedStructT { constructor(a = [], b = TestEnum.A, cUnderscore = [TestEnum.A, TestEnum.A], dOuter = [], e = []) { this.a = a; this.b = b; this.cUnderscore = cUnderscore; this.dOuter = dOuter; this.e = e; } pack(builder) { return NestedStruct.createNestedStruct(builder, this.a, this.b, this.cUnderscore, this.dOuter, this.e); } }