// automatically generated by the FlatBuffers compiler, do not modify import * as flatbuffers from 'flatbuffers'; import { Ability, AbilityT } from '../../my-game/example/ability'; import { Test, TestT } from '../../my-game/example/test'; export class StructOfStructs { bb: flatbuffers.ByteBuffer|null = null; bb_pos = 0; __init(i:number, bb:flatbuffers.ByteBuffer):StructOfStructs { this.bb_pos = i; this.bb = bb; return this; } a(obj?:Ability):Ability|null { return (obj || new Ability()).__init(this.bb_pos, this.bb!); } b(obj?:Test):Test|null { return (obj || new Test()).__init(this.bb_pos + 8, this.bb!); } c(obj?:Ability):Ability|null { return (obj || new Ability()).__init(this.bb_pos + 12, this.bb!); } static getFullyQualifiedName():string { return 'MyGame.Example.StructOfStructs'; } static sizeOf():number { return 20; } static createStructOfStructs(builder:flatbuffers.Builder, a_id: number, a_distance: number, b_a: number, b_b: number, c_id: number, c_distance: number):flatbuffers.Offset { builder.prep(4, 20); builder.prep(4, 8); builder.writeInt32(c_distance); builder.writeInt32(c_id); builder.prep(2, 4); builder.pad(1); builder.writeInt8(b_b); builder.writeInt16(b_a); builder.prep(4, 8); builder.writeInt32(a_distance); builder.writeInt32(a_id); return builder.offset(); } unpack(): StructOfStructsT { return new StructOfStructsT( (this.a() !== null ? this.a()!.unpack() : null), (this.b() !== null ? this.b()!.unpack() : null), (this.c() !== null ? this.c()!.unpack() : null) ); } unpackTo(_o: StructOfStructsT): void { _o.a = (this.a() !== null ? this.a()!.unpack() : null); _o.b = (this.b() !== null ? this.b()!.unpack() : null); _o.c = (this.c() !== null ? this.c()!.unpack() : null); } } export class StructOfStructsT { constructor( public a: AbilityT|null = null, public b: TestT|null = null, public c: AbilityT|null = null ){} pack(builder:flatbuffers.Builder): flatbuffers.Offset { return StructOfStructs.createStructOfStructs(builder, (this.a === null ? 0 : this.a.id!), (this.a === null ? 0 : this.a.distance!), (this.b === null ? 0 : this.b.a!), (this.b === null ? 0 : this.b.b!), (this.c === null ? 0 : this.c.id!), (this.c === null ? 0 : this.c.distance!) ); } }