summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorKamil Rojewski <kamil.rojewski@gmail.com>2021-03-04 21:12:44 +0100
committerGitHub <noreply@github.com>2021-03-04 12:12:44 -0800
commit4033ff5892ed6a5e083811fa13c7f9094d46d5db (patch)
tree4882504f91d878ebf3eca2b68a8bcb5561f3298f /tests
parenta08357251226eb58e3d0e71f6f5de78b2082a043 (diff)
downloadflatbuffers-4033ff5892ed6a5e083811fa13c7f9094d46d5db.tar.gz
flatbuffers-4033ff5892ed6a5e083811fa13c7f9094d46d5db.tar.bz2
flatbuffers-4033ff5892ed6a5e083811fa13c7f9094d46d5db.zip
fixed invalid TS call and added test files (#6495)
e581013e3d42af13d2fe37b0ac46a3fd43f3638c broke TS generation - please don't use "replace" to refactor function names :)
Diffstat (limited to 'tests')
-rw-r--r--tests/monster_test_generated.ts4007
-rw-r--r--tests/monster_test_grpc.d.ts93
-rw-r--r--tests/my-game/example/ability.ts73
-rw-r--r--tests/my-game/example/any-ambiguous-aliases.ts39
-rw-r--r--tests/my-game/example/any-unique-aliases.ts41
-rw-r--r--tests/my-game/example/any.ts41
-rw-r--r--tests/my-game/example/color.ts20
-rw-r--r--tests/my-game/example/monster.ts1366
-rw-r--r--tests/my-game/example/race.ts9
-rw-r--r--tests/my-game/example/referrable.ts91
-rw-r--r--tests/my-game/example/stat.ts134
-rw-r--r--tests/my-game/example/test-simple-table-with-enum.ts92
-rw-r--r--tests/my-game/example/test.ts74
-rw-r--r--tests/my-game/example/type-aliases.ts401
-rw-r--r--tests/my-game/example/vec3.ts133
-rw-r--r--tests/my-game/example2/monster.ts62
-rw-r--r--tests/my-game/in-parent-namespace.ts62
-rw-r--r--tests/namespace_test/namespace-a/namespace-b/enum-in-nested-n-s.ts8
-rw-r--r--tests/namespace_test/namespace-a/namespace-b/struct-in-nested-n-s.ts77
-rw-r--r--tests/namespace_test/namespace-a/namespace-b/table-in-nested-n-s.ts87
-rw-r--r--tests/namespace_test/namespace-a/namespace-b/union-in-nested-n-s.ts33
-rw-r--r--tests/namespace_test/namespace-a/second-table-in-a.ts77
-rw-r--r--tests/namespace_test/namespace-a/table-in-first-n-s.ts149
-rw-r--r--tests/namespace_test/namespace-c/table-in-c.ts87
-rw-r--r--tests/optional_scalars/optional-byte.ts8
-rw-r--r--tests/optional_scalars/scalar-stuff.ts423
-rw-r--r--tests/ts/movie.ts4
-rw-r--r--tests/ts/my-game/example/monster.ts34
-rw-r--r--tests/ts/my-game/example/type-aliases.ts4
-rw-r--r--tests/union_vector/attacker.ts87
-rw-r--r--tests/union_vector/book-reader.ts63
-rw-r--r--tests/union_vector/character.ts50
-rw-r--r--tests/union_vector/movie.ts211
-rw-r--r--tests/union_vector/rapunzel.ts63
34 files changed, 4175 insertions, 4028 deletions
diff --git a/tests/monster_test_generated.ts b/tests/monster_test_generated.ts
deleted file mode 100644
index 039c3c5e..00000000
--- a/tests/monster_test_generated.ts
+++ /dev/null
@@ -1,4007 +0,0 @@
-// automatically generated by the FlatBuffers compiler, do not modify
-
-/**
- * Composite components of Monster color.
- *
- * @enum {number}
- */
-export namespace MyGame.Example{
-export enum Color{
- Red= 1,
-
- /**
- * \brief color Green
- * Green is bit_flag with value (1u << 1)
- */
- Green= 2,
-
- /**
- * \brief color Blue (1u << 3)
- */
- Blue= 8
-};
-}
-
-/**
- * @enum {number}
- */
-export namespace MyGame.Example{
-export enum Race{
- None= -1,
- Human= 0,
- Dwarf= 1,
- Elf= 2
-};
-}
-
-/**
- * @enum {number}
- */
-export namespace MyGame.Example{
-export enum Any{
- NONE= 0,
- Monster= 1,
- TestSimpleTableWithEnum= 2,
- MyGame_Example2_Monster= 3
-};
-
-export function unionToAny(
- type: Any,
- accessor: (obj:MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster) => MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null
-): MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null {
- switch(MyGame.Example.Any[type]) {
- case 'NONE': return null;
- case 'Monster': return accessor(new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'TestSimpleTableWithEnum': return accessor(new MyGame.Example.TestSimpleTableWithEnum())! as MyGame.Example.TestSimpleTableWithEnum;
- case 'MyGame_Example2_Monster': return accessor(new MyGame.Example2.Monster())! as MyGame.Example2.Monster;
- default: return null;
- }
-}
-
-export function unionListToAny(
- type: Any,
- accessor: (index: number, obj:MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster) => MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null,
- index: number
-): MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null {
- switch(MyGame.Example.Any[type]) {
- case 'NONE': return null;
- case 'Monster': return accessor(index, new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'TestSimpleTableWithEnum': return accessor(index, new MyGame.Example.TestSimpleTableWithEnum())! as MyGame.Example.TestSimpleTableWithEnum;
- case 'MyGame_Example2_Monster': return accessor(index, new MyGame.Example2.Monster())! as MyGame.Example2.Monster;
- default: return null;
- }
-}
-}
-
-/**
- * @enum {number}
- */
-export namespace MyGame.Example{
-export enum AnyUniqueAliases{
- NONE= 0,
- M= 1,
- TS= 2,
- M2= 3
-};
-
-export function unionToAnyUniqueAliases(
- type: AnyUniqueAliases,
- accessor: (obj:MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster) => MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null
-): MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null {
- switch(MyGame.Example.AnyUniqueAliases[type]) {
- case 'NONE': return null;
- case 'M': return accessor(new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'TS': return accessor(new MyGame.Example.TestSimpleTableWithEnum())! as MyGame.Example.TestSimpleTableWithEnum;
- case 'M2': return accessor(new MyGame.Example2.Monster())! as MyGame.Example2.Monster;
- default: return null;
- }
-}
-
-export function unionListToAnyUniqueAliases(
- type: AnyUniqueAliases,
- accessor: (index: number, obj:MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster) => MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null,
- index: number
-): MyGame.Example.Monster|MyGame.Example.TestSimpleTableWithEnum|MyGame.Example2.Monster|null {
- switch(MyGame.Example.AnyUniqueAliases[type]) {
- case 'NONE': return null;
- case 'M': return accessor(index, new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'TS': return accessor(index, new MyGame.Example.TestSimpleTableWithEnum())! as MyGame.Example.TestSimpleTableWithEnum;
- case 'M2': return accessor(index, new MyGame.Example2.Monster())! as MyGame.Example2.Monster;
- default: return null;
- }
-}
-}
-
-/**
- * @enum {number}
- */
-export namespace MyGame.Example{
-export enum AnyAmbiguousAliases{
- NONE= 0,
- M1= 1,
- M2= 2,
- M3= 3
-};
-
-export function unionToAnyAmbiguousAliases(
- type: AnyAmbiguousAliases,
- accessor: (obj:MyGame.Example.Monster) => MyGame.Example.Monster|null
-): MyGame.Example.Monster|null {
- switch(MyGame.Example.AnyAmbiguousAliases[type]) {
- case 'NONE': return null;
- case 'M1': return accessor(new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'M2': return accessor(new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'M3': return accessor(new MyGame.Example.Monster())! as MyGame.Example.Monster;
- default: return null;
- }
-}
-
-export function unionListToAnyAmbiguousAliases(
- type: AnyAmbiguousAliases,
- accessor: (index: number, obj:MyGame.Example.Monster) => MyGame.Example.Monster|null,
- index: number
-): MyGame.Example.Monster|null {
- switch(MyGame.Example.AnyAmbiguousAliases[type]) {
- case 'NONE': return null;
- case 'M1': return accessor(index, new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'M2': return accessor(index, new MyGame.Example.Monster())! as MyGame.Example.Monster;
- case 'M3': return accessor(index, new MyGame.Example.Monster())! as MyGame.Example.Monster;
- default: return null;
- }
-}
-}
-
-/**
- * @constructor
- */
-export namespace MyGame{
-export class InParentNamespace {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns InParentNamespace
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):InParentNamespace {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param InParentNamespace= obj
- * @returns InParentNamespace
- */
-static getRootAsInParentNamespace(bb:flatbuffers.ByteBuffer, obj?:InParentNamespace):InParentNamespace {
- return (obj || new InParentNamespace()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param InParentNamespace= obj
- * @returns InParentNamespace
- */
-static getSizePrefixedRootAsInParentNamespace(bb:flatbuffers.ByteBuffer, obj?:InParentNamespace):InParentNamespace {
- bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
- return (obj || new InParentNamespace()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.Builder builder
- */
-static startInParentNamespace(builder:flatbuffers.Builder) {
- builder.startObject(0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-static endInParentNamespace(builder:flatbuffers.Builder):flatbuffers.Offset {
- var offset = builder.endObject();
- return offset;
-};
-
-static createInParentNamespace(builder:flatbuffers.Builder):flatbuffers.Offset {
- InParentNamespace.startInParentNamespace(builder);
- return InParentNamespace.endInParentNamespace(builder);
-}
-
-serialize():Uint8Array {
- return this.bb!.bytes();
-}
-
-static deserialize(buffer: Uint8Array):InParentNamespace {
- return InParentNamespace.getRootAsInParentNamespace(new flatbuffers.ByteBuffer(buffer))
-}
-
-/**
- * @returns InParentNamespaceT
- */
-unpack(): InParentNamespaceT {
- return new InParentNamespaceT();
-};
-
-/**
- * @param InParentNamespaceT _o
- */
-unpackTo(_o: InParentNamespaceT): void {};
-}
-
-export class InParentNamespaceT {
-/**
- * @constructor
- */
-constructor(){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- return MyGame.InParentNamespace.createInParentNamespace(builder);
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example2{
-export class Monster {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns Monster
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):Monster {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Monster= obj
- * @returns Monster
- */
-static getRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
- return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Monster= obj
- * @returns Monster
- */
-static getSizePrefixedRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
- bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
- return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.Builder builder
- */
-static startMonster(builder:flatbuffers.Builder) {
- builder.startObject(0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-static endMonster(builder:flatbuffers.Builder):flatbuffers.Offset {
- var offset = builder.endObject();
- return offset;
-};
-
-static createMonster(builder:flatbuffers.Builder):flatbuffers.Offset {
- Monster.startMonster(builder);
- return Monster.endMonster(builder);
-}
-
-serialize():Uint8Array {
- return this.bb!.bytes();
-}
-
-static deserialize(buffer: Uint8Array):Monster {
- return Monster.getRootAsMonster(new flatbuffers.ByteBuffer(buffer))
-}
-
-/**
- * @returns MonsterT
- */
-unpack(): MonsterT {
- return new MonsterT();
-};
-
-/**
- * @param MonsterT _o
- */
-unpackTo(_o: MonsterT): void {};
-}
-
-export class MonsterT {
-/**
- * @constructor
- */
-constructor(){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- return MyGame.Example2.Monster.createMonster(builder);
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example{
-export class Test {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns Test
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):Test {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @returns number
- */
-a():number {
- return this.bb!.readInt16(this.bb_pos);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_a(value:number):boolean {
- this.bb!.writeInt16(this.bb_pos + 0, value);
- return true;
-};
-
-/**
- * @returns number
- */
-b():number {
- return this.bb!.readInt8(this.bb_pos + 2);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_b(value:number):boolean {
- this.bb!.writeInt8(this.bb_pos + 2, value);
- return true;
-};
-
-/**
- * @returns number
- */
-static sizeOf():number {
- return 4;
-}
-
-/**
- * @param flatbuffers.Builder builder
- * @param number a
- * @param number b
- * @returns flatbuffers.Offset
- */
-static createTest(builder:flatbuffers.Builder, a: number, b: number):flatbuffers.Offset {
- builder.prep(2, 4);
- builder.pad(1);
- builder.writeInt8(b);
- builder.writeInt16(a);
- return builder.offset();
-};
-
-
-/**
- * @returns TestT
- */
-unpack(): TestT {
- return new TestT(
- this.a(),
- this.b()
- );
-};
-
-/**
- * @param TestT _o
- */
-unpackTo(_o: TestT): void {
- _o.a = this.a();
- _o.b = this.b();
-};
-}
-
-export class TestT {
-/**
- * @constructor
- * @param number a
- * @param number b
- */
-constructor(
- public a: number = 0,
- public b: number = 0
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- return MyGame.Example.Test.createTest(builder,
- this.a,
- this.b
- );
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example{
-export class TestSimpleTableWithEnum {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns TestSimpleTableWithEnum
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):TestSimpleTableWithEnum {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param TestSimpleTableWithEnum= obj
- * @returns TestSimpleTableWithEnum
- */
-static getRootAsTestSimpleTableWithEnum(bb:flatbuffers.ByteBuffer, obj?:TestSimpleTableWithEnum):TestSimpleTableWithEnum {
- return (obj || new TestSimpleTableWithEnum()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param TestSimpleTableWithEnum= obj
- * @returns TestSimpleTableWithEnum
- */
-static getSizePrefixedRootAsTestSimpleTableWithEnum(bb:flatbuffers.ByteBuffer, obj?:TestSimpleTableWithEnum):TestSimpleTableWithEnum {
- bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
- return (obj || new TestSimpleTableWithEnum()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @returns MyGame.Example.Color
- */
-color():MyGame.Example.Color {
- var offset = this.bb!.__offset(this.bb_pos, 4);
- return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : MyGame.Example.Color.Green;
-};
-
-/**
- * @param MyGame.Example.Color value
- * @returns boolean
- */
-mutate_color(value:MyGame.Example.Color):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 4);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint8(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param flatbuffers.Builder builder
- */
-static startTestSimpleTableWithEnum(builder:flatbuffers.Builder) {
- builder.startObject(1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param MyGame.Example.Color color
- */
-static addColor(builder:flatbuffers.Builder, color:MyGame.Example.Color) {
- builder.addFieldInt8(0, color, MyGame.Example.Color.Green);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-static endTestSimpleTableWithEnum(builder:flatbuffers.Builder):flatbuffers.Offset {
- var offset = builder.endObject();
- return offset;
-};
-
-static createTestSimpleTableWithEnum(builder:flatbuffers.Builder, color:MyGame.Example.Color):flatbuffers.Offset {
- TestSimpleTableWithEnum.startTestSimpleTableWithEnum(builder);
- TestSimpleTableWithEnum.addColor(builder, color);
- return TestSimpleTableWithEnum.endTestSimpleTableWithEnum(builder);
-}
-
-serialize():Uint8Array {
- return this.bb!.bytes();
-}
-
-static deserialize(buffer: Uint8Array):TestSimpleTableWithEnum {
- return TestSimpleTableWithEnum.getRootAsTestSimpleTableWithEnum(new flatbuffers.ByteBuffer(buffer))
-}
-
-/**
- * @returns TestSimpleTableWithEnumT
- */
-unpack(): TestSimpleTableWithEnumT {
- return new TestSimpleTableWithEnumT(
- this.color()
- );
-};
-
-/**
- * @param TestSimpleTableWithEnumT _o
- */
-unpackTo(_o: TestSimpleTableWithEnumT): void {
- _o.color = this.color();
-};
-}
-
-export class TestSimpleTableWithEnumT {
-/**
- * @constructor
- * @param MyGame.Example.Color color
- */
-constructor(
- public color: MyGame.Example.Color = MyGame.Example.Color.Green
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- return MyGame.Example.TestSimpleTableWithEnum.createTestSimpleTableWithEnum(builder,
- this.color
- );
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example{
-export class Vec3 {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns Vec3
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):Vec3 {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @returns number
- */
-x():number {
- return this.bb!.readFloat32(this.bb_pos);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_x(value:number):boolean {
- this.bb!.writeFloat32(this.bb_pos + 0, value);
- return true;
-};
-
-/**
- * @returns number
- */
-y():number {
- return this.bb!.readFloat32(this.bb_pos + 4);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_y(value:number):boolean {
- this.bb!.writeFloat32(this.bb_pos + 4, value);
- return true;
-};
-
-/**
- * @returns number
- */
-z():number {
- return this.bb!.readFloat32(this.bb_pos + 8);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_z(value:number):boolean {
- this.bb!.writeFloat32(this.bb_pos + 8, value);
- return true;
-};
-
-/**
- * @returns number
- */
-test1():number {
- return this.bb!.readFloat64(this.bb_pos + 16);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_test1(value:number):boolean {
- this.bb!.writeFloat64(this.bb_pos + 16, value);
- return true;
-};
-
-/**
- * @returns MyGame.Example.Color
- */
-test2():MyGame.Example.Color {
- return /** */ (this.bb!.readUint8(this.bb_pos + 24));
-};
-
-/**
- * @param MyGame.Example.Color value
- * @returns boolean
- */
-mutate_test2(value:MyGame.Example.Color):boolean {
- this.bb!.writeUint8(this.bb_pos + 24, value);
- return true;
-};
-
-/**
- * @param MyGame.Example.Test= obj
- * @returns MyGame.Example.Test|null
- */
-test3(obj?:MyGame.Example.Test):MyGame.Example.Test|null {
- return (obj || new MyGame.Example.Test()).__init(this.bb_pos + 26, this.bb!);
-};
-
-/**
- * @returns number
- */
-static sizeOf():number {
- return 32;
-}
-
-/**
- * @param flatbuffers.Builder builder
- * @param number x
- * @param number y
- * @param number z
- * @param number test1
- * @param MyGame.Example.Color test2
- * @param number test3_a
- * @param number test3_b
- * @returns flatbuffers.Offset
- */
-static createVec3(builder:flatbuffers.Builder, x: number, y: number, z: number, test1: number, test2: MyGame.Example.Color, test3_a: number, test3_b: number):flatbuffers.Offset {
- builder.prep(8, 32);
- builder.pad(2);
- builder.prep(2, 4);
- builder.pad(1);
- builder.writeInt8(test3_b);
- builder.writeInt16(test3_a);
- builder.pad(1);
- builder.writeInt8(test2);
- builder.writeFloat64(test1);
- builder.pad(4);
- builder.writeFloat32(z);
- builder.writeFloat32(y);
- builder.writeFloat32(x);
- return builder.offset();
-};
-
-
-/**
- * @returns Vec3T
- */
-unpack(): Vec3T {
- return new Vec3T(
- this.x(),
- this.y(),
- this.z(),
- this.test1(),
- this.test2(),
- (this.test3() !== null ? this.test3()!.unpack() : null)
- );
-};
-
-/**
- * @param Vec3T _o
- */
-unpackTo(_o: Vec3T): void {
- _o.x = this.x();
- _o.y = this.y();
- _o.z = this.z();
- _o.test1 = this.test1();
- _o.test2 = this.test2();
- _o.test3 = (this.test3() !== null ? this.test3()!.unpack() : null);
-};
-}
-
-export class Vec3T {
-/**
- * @constructor
- * @param number x
- * @param number y
- * @param number z
- * @param number test1
- * @param MyGame.Example.Color test2
- * @param MyGame.Example.TestT|null test3
- */
-constructor(
- public x: number = 0.0,
- public y: number = 0.0,
- public z: number = 0.0,
- public test1: number = 0.0,
- public test2: MyGame.Example.Color = /** } */ (0),
- public test3: MyGame.Example.TestT|null = null
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- return MyGame.Example.Vec3.createVec3(builder,
- this.x,
- this.y,
- this.z,
- this.test1,
- this.test2,
- (this.test3 === null ? 0 : this.test3.a!),
- (this.test3 === null ? 0 : this.test3.b!)
- );
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example{
-export class Ability {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns Ability
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):Ability {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @returns number
- */
-id():number {
- return this.bb!.readUint32(this.bb_pos);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_id(value:number):boolean {
- this.bb!.writeUint32(this.bb_pos + 0, value);
- return true;
-};
-
-/**
- * @returns number
- */
-distance():number {
- return this.bb!.readUint32(this.bb_pos + 4);
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_distance(value:number):boolean {
- this.bb!.writeUint32(this.bb_pos + 4, value);
- return true;
-};
-
-/**
- * @returns number
- */
-static sizeOf():number {
- return 8;
-}
-
-/**
- * @param flatbuffers.Builder builder
- * @param number id
- * @param number distance
- * @returns flatbuffers.Offset
- */
-static createAbility(builder:flatbuffers.Builder, id: number, distance: number):flatbuffers.Offset {
- builder.prep(4, 8);
- builder.writeInt32(distance);
- builder.writeInt32(id);
- return builder.offset();
-};
-
-
-/**
- * @returns AbilityT
- */
-unpack(): AbilityT {
- return new AbilityT(
- this.id(),
- this.distance()
- );
-};
-
-/**
- * @param AbilityT _o
- */
-unpackTo(_o: AbilityT): void {
- _o.id = this.id();
- _o.distance = this.distance();
-};
-}
-
-export class AbilityT {
-/**
- * @constructor
- * @param number id
- * @param number distance
- */
-constructor(
- public id: number = 0,
- public distance: number = 0
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- return MyGame.Example.Ability.createAbility(builder,
- this.id,
- this.distance
- );
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example{
-export class Stat {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns Stat
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):Stat {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Stat= obj
- * @returns Stat
- */
-static getRootAsStat(bb:flatbuffers.ByteBuffer, obj?:Stat):Stat {
- return (obj || new Stat()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Stat= obj
- * @returns Stat
- */
-static getSizePrefixedRootAsStat(bb:flatbuffers.ByteBuffer, obj?:Stat):Stat {
- bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
- return (obj || new Stat()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.Encoding= optionalEncoding
- * @returns string|Uint8Array|null
- */
-id():string|null
-id(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
-id(optionalEncoding?:any):string|Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 4);
- return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-val():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 6);
- return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_val(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 6);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-count():number {
- var offset = this.bb!.__offset(this.bb_pos, 8);
- return offset ? this.bb!.readUint16(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_count(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 8);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint16(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param flatbuffers.Builder builder
- */
-static startStat(builder:flatbuffers.Builder) {
- builder.startObject(3);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset idOffset
- */
-static addId(builder:flatbuffers.Builder, idOffset:flatbuffers.Offset) {
- builder.addFieldOffset(0, idOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long val
- */
-static addVal(builder:flatbuffers.Builder, val:flatbuffers.Long) {
- builder.addFieldInt64(1, val, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number count
- */
-static addCount(builder:flatbuffers.Builder, count:number) {
- builder.addFieldInt16(2, count, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-static endStat(builder:flatbuffers.Builder):flatbuffers.Offset {
- var offset = builder.endObject();
- return offset;
-};
-
-static createStat(builder:flatbuffers.Builder, idOffset:flatbuffers.Offset, val:flatbuffers.Long, count:number):flatbuffers.Offset {
- Stat.startStat(builder);
- Stat.addId(builder, idOffset);
- Stat.addVal(builder, val);
- Stat.addCount(builder, count);
- return Stat.endStat(builder);
-}
-
-serialize():Uint8Array {
- return this.bb!.bytes();
-}
-
-static deserialize(buffer: Uint8Array):Stat {
- return Stat.getRootAsStat(new flatbuffers.ByteBuffer(buffer))
-}
-
-/**
- * @returns StatT
- */
-unpack(): StatT {
- return new StatT(
- this.id(),
- this.val(),
- this.count()
- );
-};
-
-/**
- * @param StatT _o
- */
-unpackTo(_o: StatT): void {
- _o.id = this.id();
- _o.val = this.val();
- _o.count = this.count();
-};
-}
-
-export class StatT {
-/**
- * @constructor
- * @param string|Uint8Array|null id
- * @param flatbuffers.Long val
- * @param number count
- */
-constructor(
- public id: string|Uint8Array|null = null,
- public val: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public count: number = 0
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- const id = (this.id !== null ? builder.createString(this.id!) : 0);
-
- return MyGame.Example.Stat.createStat(builder,
- id,
- this.val,
- this.count
- );
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example{
-export class Referrable {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns Referrable
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):Referrable {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Referrable= obj
- * @returns Referrable
- */
-static getRootAsReferrable(bb:flatbuffers.ByteBuffer, obj?:Referrable):Referrable {
- return (obj || new Referrable()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Referrable= obj
- * @returns Referrable
- */
-static getSizePrefixedRootAsReferrable(bb:flatbuffers.ByteBuffer, obj?:Referrable):Referrable {
- bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
- return (obj || new Referrable()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @returns flatbuffers.Long
- */
-id():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 4);
- return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_id(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 4);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param flatbuffers.Builder builder
- */
-static startReferrable(builder:flatbuffers.Builder) {
- builder.startObject(1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long id
- */
-static addId(builder:flatbuffers.Builder, id:flatbuffers.Long) {
- builder.addFieldInt64(0, id, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-static endReferrable(builder:flatbuffers.Builder):flatbuffers.Offset {
- var offset = builder.endObject();
- return offset;
-};
-
-static createReferrable(builder:flatbuffers.Builder, id:flatbuffers.Long):flatbuffers.Offset {
- Referrable.startReferrable(builder);
- Referrable.addId(builder, id);
- return Referrable.endReferrable(builder);
-}
-
-serialize():Uint8Array {
- return this.bb!.bytes();
-}
-
-static deserialize(buffer: Uint8Array):Referrable {
- return Referrable.getRootAsReferrable(new flatbuffers.ByteBuffer(buffer))
-}
-
-/**
- * @returns ReferrableT
- */
-unpack(): ReferrableT {
- return new ReferrableT(
- this.id()
- );
-};
-
-/**
- * @param ReferrableT _o
- */
-unpackTo(_o: ReferrableT): void {
- _o.id = this.id();
-};
-}
-
-export class ReferrableT {
-/**
- * @constructor
- * @param flatbuffers.Long id
- */
-constructor(
- public id: flatbuffers.Long = flatbuffers.createLong(0, 0)
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- return MyGame.Example.Referrable.createReferrable(builder,
- this.id
- );
-};
-}
-}
-/**
- * an example documentation comment: "monster object"
- *
- * @constructor
- */
-export namespace MyGame.Example{
-export class Monster {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns Monster
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):Monster {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Monster= obj
- * @returns Monster
- */
-static getRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
- return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param Monster= obj
- * @returns Monster
- */
-static getSizePrefixedRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
- bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
- return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @returns boolean
- */
-static bufferHasIdentifier(bb:flatbuffers.ByteBuffer):boolean {
- return bb.__has_identifier('MONS');
-};
-
-/**
- * @param MyGame.Example.Vec3= obj
- * @returns MyGame.Example.Vec3|null
- */
-pos(obj?:MyGame.Example.Vec3):MyGame.Example.Vec3|null {
- var offset = this.bb!.__offset(this.bb_pos, 4);
- return offset ? (obj || new MyGame.Example.Vec3()).__init(this.bb_pos + offset, this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-mana():number {
- var offset = this.bb!.__offset(this.bb_pos, 6);
- return offset ? this.bb!.readInt16(this.bb_pos + offset) : 150;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_mana(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 6);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt16(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-hp():number {
- var offset = this.bb!.__offset(this.bb_pos, 8);
- return offset ? this.bb!.readInt16(this.bb_pos + offset) : 100;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_hp(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 8);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt16(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param flatbuffers.Encoding= optionalEncoding
- * @returns string|Uint8Array|null
- */
-name():string|null
-name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
-name(optionalEncoding?:any):string|Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 10);
- return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
-};
-
-/**
- * @param number index
- * @returns number
- */
-inventory(index: number):number|null {
- var offset = this.bb!.__offset(this.bb_pos, 14);
- return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
-};
-
-/**
- * @returns number
- */
-inventoryLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 14);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Uint8Array
- */
-inventoryArray():Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 14);
- 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;
-};
-
-/**
- * @returns MyGame.Example.Color
- */
-color():MyGame.Example.Color {
- var offset = this.bb!.__offset(this.bb_pos, 16);
- return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : MyGame.Example.Color.Blue;
-};
-
-/**
- * @param MyGame.Example.Color value
- * @returns boolean
- */
-mutate_color(value:MyGame.Example.Color):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 16);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint8(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns MyGame.Example.Any
- */
-testType():MyGame.Example.Any {
- var offset = this.bb!.__offset(this.bb_pos, 18);
- return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : MyGame.Example.Any.NONE;
-};
-
-/**
- * @param flatbuffers.Table obj
- * @returns ?flatbuffers.Table
- */
-test<T extends flatbuffers.Table>(obj:T):T|null {
- var offset = this.bb!.__offset(this.bb_pos, 20);
- return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
-};
-
-/**
- * @param number index
- * @param MyGame.Example.Test= obj
- * @returns MyGame.Example.Test
- */
-test4(index: number, obj?:MyGame.Example.Test):MyGame.Example.Test|null {
- var offset = this.bb!.__offset(this.bb_pos, 22);
- return offset ? (obj || new MyGame.Example.Test()).__init(this.bb!.__vector(this.bb_pos + offset) + index * 4, this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-test4Length():number {
- var offset = this.bb!.__offset(this.bb_pos, 22);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number index
- * @param flatbuffers.Encoding= optionalEncoding
- * @returns string|Uint8Array
- */
-testarrayofstring(index: number):string
-testarrayofstring(index: number,optionalEncoding:flatbuffers.Encoding):string|Uint8Array
-testarrayofstring(index: number,optionalEncoding?:any):string|Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 24);
- return offset ? this.bb!.__string(this.bb!.__vector(this.bb_pos + offset) + index * 4, optionalEncoding) : null;
-};
-
-/**
- * @returns number
- */
-testarrayofstringLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 24);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * an example documentation comment: this will end up in the generated code
- * multiline too
- *
- * @param number index
- * @param MyGame.Example.Monster= obj
- * @returns MyGame.Example.Monster
- */
-testarrayoftables(index: number, obj?:MyGame.Example.Monster):MyGame.Example.Monster|null {
- var offset = this.bb!.__offset(this.bb_pos, 26);
- return offset ? (obj || new MyGame.Example.Monster()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-testarrayoftablesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 26);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param MyGame.Example.Monster= obj
- * @returns MyGame.Example.Monster|null
- */
-enemy(obj?:MyGame.Example.Monster):MyGame.Example.Monster|null {
- var offset = this.bb!.__offset(this.bb_pos, 28);
- return offset ? (obj || new MyGame.Example.Monster()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
-};
-
-/**
- * @param number index
- * @returns number
- */
-testnestedflatbuffer(index: number):number|null {
- var offset = this.bb!.__offset(this.bb_pos, 30);
- return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
-};
-
-/**
- * @returns number
- */
-testnestedflatbufferLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 30);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Uint8Array
- */
-testnestedflatbufferArray():Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 30);
- 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;
-};
-
-/**
- * @param MyGame.Example.Stat= obj
- * @returns MyGame.Example.Stat|null
- */
-testempty(obj?:MyGame.Example.Stat):MyGame.Example.Stat|null {
- var offset = this.bb!.__offset(this.bb_pos, 32);
- return offset ? (obj || new MyGame.Example.Stat()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
-};
-
-/**
- * @returns boolean
- */
-testbool():boolean {
- var offset = this.bb!.__offset(this.bb_pos, 34);
- return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
-};
-
-/**
- * @param boolean value
- * @returns boolean
- */
-mutate_testbool(value:boolean):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 34);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt8(this.bb_pos + offset, +value);
- return true;
-};
-
-/**
- * @returns number
- */
-testhashs32Fnv1():number {
- var offset = this.bb!.__offset(this.bb_pos, 36);
- return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_testhashs32_fnv1(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 36);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-testhashu32Fnv1():number {
- var offset = this.bb!.__offset(this.bb_pos, 38);
- return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_testhashu32_fnv1(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 38);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-testhashs64Fnv1():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 40);
- return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_testhashs64_fnv1(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 40);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-testhashu64Fnv1():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 42);
- return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_testhashu64_fnv1(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 42);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-testhashs32Fnv1a():number {
- var offset = this.bb!.__offset(this.bb_pos, 44);
- return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_testhashs32_fnv1a(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 44);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-testhashu32Fnv1a():number {
- var offset = this.bb!.__offset(this.bb_pos, 46);
- return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_testhashu32_fnv1a(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 46);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-testhashs64Fnv1a():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 48);
- return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_testhashs64_fnv1a(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 48);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-testhashu64Fnv1a():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 50);
- return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_testhashu64_fnv1a(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 50);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param number index
- * @returns boolean
- */
-testarrayofbools(index: number):boolean|null {
- var offset = this.bb!.__offset(this.bb_pos, 52);
- return offset ? !!this.bb!.readInt8(this.bb!.__vector(this.bb_pos + offset) + index) : false;
-};
-
-/**
- * @returns number
- */
-testarrayofboolsLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 52);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Int8Array
- */
-testarrayofboolsArray():Int8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 52);
- return offset ? new Int8Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
-};
-
-/**
- * @returns number
- */
-testf():number {
- var offset = this.bb!.__offset(this.bb_pos, 54);
- return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 3.14159;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_testf(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 54);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeFloat32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-testf2():number {
- var offset = this.bb!.__offset(this.bb_pos, 56);
- return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 3.0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_testf2(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 56);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeFloat32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-testf3():number {
- var offset = this.bb!.__offset(this.bb_pos, 58);
- return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 0.0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_testf3(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 58);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeFloat32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param number index
- * @param flatbuffers.Encoding= optionalEncoding
- * @returns string|Uint8Array
- */
-testarrayofstring2(index: number):string
-testarrayofstring2(index: number,optionalEncoding:flatbuffers.Encoding):string|Uint8Array
-testarrayofstring2(index: number,optionalEncoding?:any):string|Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 60);
- return offset ? this.bb!.__string(this.bb!.__vector(this.bb_pos + offset) + index * 4, optionalEncoding) : null;
-};
-
-/**
- * @returns number
- */
-testarrayofstring2Length():number {
- var offset = this.bb!.__offset(this.bb_pos, 60);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number index
- * @param MyGame.Example.Ability= obj
- * @returns MyGame.Example.Ability
- */
-testarrayofsortedstruct(index: number, obj?:MyGame.Example.Ability):MyGame.Example.Ability|null {
- var offset = this.bb!.__offset(this.bb_pos, 62);
- return offset ? (obj || new MyGame.Example.Ability()).__init(this.bb!.__vector(this.bb_pos + offset) + index * 8, this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-testarrayofsortedstructLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 62);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number index
- * @returns number
- */
-flex(index: number):number|null {
- var offset = this.bb!.__offset(this.bb_pos, 64);
- return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
-};
-
-/**
- * @returns number
- */
-flexLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 64);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Uint8Array
- */
-flexArray():Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 64);
- 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;
-};
-
-/**
- * @param number index
- * @param MyGame.Example.Test= obj
- * @returns MyGame.Example.Test
- */
-test5(index: number, obj?:MyGame.Example.Test):MyGame.Example.Test|null {
- var offset = this.bb!.__offset(this.bb_pos, 66);
- return offset ? (obj || new MyGame.Example.Test()).__init(this.bb!.__vector(this.bb_pos + offset) + index * 4, this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-test5Length():number {
- var offset = this.bb!.__offset(this.bb_pos, 66);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number index
- * @returns flatbuffers.Long
- */
-vectorOfLongs(index: number):flatbuffers.Long|null {
- var offset = this.bb!.__offset(this.bb_pos, 68);
- return offset ? this.bb!.readInt64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @returns number
- */
-vectorOfLongsLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 68);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number index
- * @returns number
- */
-vectorOfDoubles(index: number):number|null {
- var offset = this.bb!.__offset(this.bb_pos, 70);
- return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
-};
-
-/**
- * @returns number
- */
-vectorOfDoublesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 70);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Float64Array
- */
-vectorOfDoublesArray():Float64Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 70);
- return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
-};
-
-/**
- * @param MyGame.InParentNamespace= obj
- * @returns MyGame.InParentNamespace|null
- */
-parentNamespaceTest(obj?:MyGame.InParentNamespace):MyGame.InParentNamespace|null {
- var offset = this.bb!.__offset(this.bb_pos, 72);
- return offset ? (obj || new MyGame.InParentNamespace()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
-};
-
-/**
- * @param number index
- * @param MyGame.Example.Referrable= obj
- * @returns MyGame.Example.Referrable
- */
-vectorOfReferrables(index: number, obj?:MyGame.Example.Referrable):MyGame.Example.Referrable|null {
- var offset = this.bb!.__offset(this.bb_pos, 74);
- return offset ? (obj || new MyGame.Example.Referrable()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-vectorOfReferrablesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 74);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-singleWeakReference():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 76);
- return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_single_weak_reference(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 76);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param number index
- * @returns flatbuffers.Long
- */
-vectorOfWeakReferences(index: number):flatbuffers.Long|null {
- var offset = this.bb!.__offset(this.bb_pos, 78);
- return offset ? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @returns number
- */
-vectorOfWeakReferencesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 78);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number index
- * @param MyGame.Example.Referrable= obj
- * @returns MyGame.Example.Referrable
- */
-vectorOfStrongReferrables(index: number, obj?:MyGame.Example.Referrable):MyGame.Example.Referrable|null {
- var offset = this.bb!.__offset(this.bb_pos, 80);
- return offset ? (obj || new MyGame.Example.Referrable()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-vectorOfStrongReferrablesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 80);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-coOwningReference():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 82);
- return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_co_owning_reference(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 82);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param number index
- * @returns flatbuffers.Long
- */
-vectorOfCoOwningReferences(index: number):flatbuffers.Long|null {
- var offset = this.bb!.__offset(this.bb_pos, 84);
- return offset ? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @returns number
- */
-vectorOfCoOwningReferencesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 84);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-nonOwningReference():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 86);
- return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_non_owning_reference(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 86);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param number index
- * @returns flatbuffers.Long
- */
-vectorOfNonOwningReferences(index: number):flatbuffers.Long|null {
- var offset = this.bb!.__offset(this.bb_pos, 88);
- return offset ? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @returns number
- */
-vectorOfNonOwningReferencesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 88);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns MyGame.Example.AnyUniqueAliases
- */
-anyUniqueType():MyGame.Example.AnyUniqueAliases {
- var offset = this.bb!.__offset(this.bb_pos, 90);
- return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : MyGame.Example.AnyUniqueAliases.NONE;
-};
-
-/**
- * @param flatbuffers.Table obj
- * @returns ?flatbuffers.Table
- */
-anyUnique<T extends flatbuffers.Table>(obj:T):T|null {
- var offset = this.bb!.__offset(this.bb_pos, 92);
- return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
-};
-
-/**
- * @returns MyGame.Example.AnyAmbiguousAliases
- */
-anyAmbiguousType():MyGame.Example.AnyAmbiguousAliases {
- var offset = this.bb!.__offset(this.bb_pos, 94);
- return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : MyGame.Example.AnyAmbiguousAliases.NONE;
-};
-
-/**
- * @param flatbuffers.Table obj
- * @returns ?flatbuffers.Table
- */
-anyAmbiguous<T extends flatbuffers.Table>(obj:T):T|null {
- var offset = this.bb!.__offset(this.bb_pos, 96);
- return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
-};
-
-/**
- * @param number index
- * @returns MyGame.Example.Color
- */
-vectorOfEnums(index: number):MyGame.Example.Color|null {
- var offset = this.bb!.__offset(this.bb_pos, 98);
- return offset ? /** */ (this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index)) : /** */ (0);
-};
-
-/**
- * @returns number
- */
-vectorOfEnumsLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 98);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Uint8Array
- */
-vectorOfEnumsArray():Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 98);
- 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;
-};
-
-/**
- * @returns MyGame.Example.Race
- */
-signedEnum():MyGame.Example.Race {
- var offset = this.bb!.__offset(this.bb_pos, 100);
- return offset ? /** */ (this.bb!.readInt8(this.bb_pos + offset)) : MyGame.Example.Race.None;
-};
-
-/**
- * @param MyGame.Example.Race value
- * @returns boolean
- */
-mutate_signed_enum(value:MyGame.Example.Race):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 100);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt8(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param number index
- * @returns number
- */
-testrequirednestedflatbuffer(index: number):number|null {
- var offset = this.bb!.__offset(this.bb_pos, 102);
- return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
-};
-
-/**
- * @returns number
- */
-testrequirednestedflatbufferLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 102);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Uint8Array
- */
-testrequirednestedflatbufferArray():Uint8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 102);
- 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;
-};
-
-/**
- * @param number index
- * @param MyGame.Example.Stat= obj
- * @returns MyGame.Example.Stat
- */
-scalarKeySortedTables(index: number, obj?:MyGame.Example.Stat):MyGame.Example.Stat|null {
- var offset = this.bb!.__offset(this.bb_pos, 104);
- return offset ? (obj || new MyGame.Example.Stat()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
-};
-
-/**
- * @returns number
- */
-scalarKeySortedTablesLength():number {
- var offset = this.bb!.__offset(this.bb_pos, 104);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param flatbuffers.Builder builder
- */
-static startMonster(builder:flatbuffers.Builder) {
- builder.startObject(51);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset posOffset
- */
-static addPos(builder:flatbuffers.Builder, posOffset:flatbuffers.Offset) {
- builder.addFieldStruct(0, posOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number mana
- */
-static addMana(builder:flatbuffers.Builder, mana:number) {
- builder.addFieldInt16(1, mana, 150);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number hp
- */
-static addHp(builder:flatbuffers.Builder, hp:number) {
- builder.addFieldInt16(2, hp, 100);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset nameOffset
- */
-static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
- builder.addFieldOffset(3, nameOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset inventoryOffset
- */
-static addInventory(builder:flatbuffers.Builder, inventoryOffset:flatbuffers.Offset) {
- builder.addFieldOffset(5, inventoryOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<number> data
- * @returns flatbuffers.Offset
- */
-static createInventoryVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
- builder.startVector(1, data.length, 1);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startInventoryVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(1, numElems, 1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param MyGame.Example.Color color
- */
-static addColor(builder:flatbuffers.Builder, color:MyGame.Example.Color) {
- builder.addFieldInt8(6, color, MyGame.Example.Color.Blue);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param MyGame.Example.Any testType
- */
-static addTestType(builder:flatbuffers.Builder, testType:MyGame.Example.Any) {
- builder.addFieldInt8(7, testType, MyGame.Example.Any.NONE);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testOffset
- */
-static addTest(builder:flatbuffers.Builder, testOffset:flatbuffers.Offset) {
- builder.addFieldOffset(8, testOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset test4Offset
- */
-static addTest4(builder:flatbuffers.Builder, test4Offset:flatbuffers.Offset) {
- builder.addFieldOffset(9, test4Offset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTest4Vector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 2);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testarrayofstringOffset
- */
-static addTestarrayofstring(builder:flatbuffers.Builder, testarrayofstringOffset:flatbuffers.Offset) {
- builder.addFieldOffset(10, testarrayofstringOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Offset> data
- * @returns flatbuffers.Offset
- */
-static createTestarrayofstringVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
- builder.startVector(4, data.length, 4);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addOffset(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTestarrayofstringVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 4);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testarrayoftablesOffset
- */
-static addTestarrayoftables(builder:flatbuffers.Builder, testarrayoftablesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(11, testarrayoftablesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Offset> data
- * @returns flatbuffers.Offset
- */
-static createTestarrayoftablesVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
- builder.startVector(4, data.length, 4);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addOffset(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTestarrayoftablesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 4);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset enemyOffset
- */
-static addEnemy(builder:flatbuffers.Builder, enemyOffset:flatbuffers.Offset) {
- builder.addFieldOffset(12, enemyOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testnestedflatbufferOffset
- */
-static addTestnestedflatbuffer(builder:flatbuffers.Builder, testnestedflatbufferOffset:flatbuffers.Offset) {
- builder.addFieldOffset(13, testnestedflatbufferOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<number> data
- * @returns flatbuffers.Offset
- */
-static createTestnestedflatbufferVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
- builder.startVector(1, data.length, 1);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTestnestedflatbufferVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(1, numElems, 1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testemptyOffset
- */
-static addTestempty(builder:flatbuffers.Builder, testemptyOffset:flatbuffers.Offset) {
- builder.addFieldOffset(14, testemptyOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param boolean testbool
- */
-static addTestbool(builder:flatbuffers.Builder, testbool:boolean) {
- builder.addFieldInt8(15, +testbool, +false);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number testhashs32Fnv1
- */
-static addTesthashs32Fnv1(builder:flatbuffers.Builder, testhashs32Fnv1:number) {
- builder.addFieldInt32(16, testhashs32Fnv1, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number testhashu32Fnv1
- */
-static addTesthashu32Fnv1(builder:flatbuffers.Builder, testhashu32Fnv1:number) {
- builder.addFieldInt32(17, testhashu32Fnv1, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long testhashs64Fnv1
- */
-static addTesthashs64Fnv1(builder:flatbuffers.Builder, testhashs64Fnv1:flatbuffers.Long) {
- builder.addFieldInt64(18, testhashs64Fnv1, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long testhashu64Fnv1
- */
-static addTesthashu64Fnv1(builder:flatbuffers.Builder, testhashu64Fnv1:flatbuffers.Long) {
- builder.addFieldInt64(19, testhashu64Fnv1, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number testhashs32Fnv1a
- */
-static addTesthashs32Fnv1a(builder:flatbuffers.Builder, testhashs32Fnv1a:number) {
- builder.addFieldInt32(20, testhashs32Fnv1a, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number testhashu32Fnv1a
- */
-static addTesthashu32Fnv1a(builder:flatbuffers.Builder, testhashu32Fnv1a:number) {
- builder.addFieldInt32(21, testhashu32Fnv1a, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long testhashs64Fnv1a
- */
-static addTesthashs64Fnv1a(builder:flatbuffers.Builder, testhashs64Fnv1a:flatbuffers.Long) {
- builder.addFieldInt64(22, testhashs64Fnv1a, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long testhashu64Fnv1a
- */
-static addTesthashu64Fnv1a(builder:flatbuffers.Builder, testhashu64Fnv1a:flatbuffers.Long) {
- builder.addFieldInt64(23, testhashu64Fnv1a, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testarrayofboolsOffset
- */
-static addTestarrayofbools(builder:flatbuffers.Builder, testarrayofboolsOffset:flatbuffers.Offset) {
- builder.addFieldOffset(24, testarrayofboolsOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<boolean> data
- * @returns flatbuffers.Offset
- */
-static createTestarrayofboolsVector(builder:flatbuffers.Builder, data:boolean[]):flatbuffers.Offset {
- builder.startVector(1, data.length, 1);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt8(+data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTestarrayofboolsVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(1, numElems, 1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number testf
- */
-static addTestf(builder:flatbuffers.Builder, testf:number) {
- builder.addFieldFloat32(25, testf, 3.14159);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number testf2
- */
-static addTestf2(builder:flatbuffers.Builder, testf2:number) {
- builder.addFieldFloat32(26, testf2, 3.0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number testf3
- */
-static addTestf3(builder:flatbuffers.Builder, testf3:number) {
- builder.addFieldFloat32(27, testf3, 0.0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testarrayofstring2Offset
- */
-static addTestarrayofstring2(builder:flatbuffers.Builder, testarrayofstring2Offset:flatbuffers.Offset) {
- builder.addFieldOffset(28, testarrayofstring2Offset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Offset> data
- * @returns flatbuffers.Offset
- */
-static createTestarrayofstring2Vector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
- builder.startVector(4, data.length, 4);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addOffset(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTestarrayofstring2Vector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 4);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testarrayofsortedstructOffset
- */
-static addTestarrayofsortedstruct(builder:flatbuffers.Builder, testarrayofsortedstructOffset:flatbuffers.Offset) {
- builder.addFieldOffset(29, testarrayofsortedstructOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTestarrayofsortedstructVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(8, numElems, 4);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset flexOffset
- */
-static addFlex(builder:flatbuffers.Builder, flexOffset:flatbuffers.Offset) {
- builder.addFieldOffset(30, flexOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<number> data
- * @returns flatbuffers.Offset
- */
-static createFlexVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
- builder.startVector(1, data.length, 1);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startFlexVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(1, numElems, 1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset test5Offset
- */
-static addTest5(builder:flatbuffers.Builder, test5Offset:flatbuffers.Offset) {
- builder.addFieldOffset(31, test5Offset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTest5Vector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 2);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfLongsOffset
- */
-static addVectorOfLongs(builder:flatbuffers.Builder, vectorOfLongsOffset:flatbuffers.Offset) {
- builder.addFieldOffset(32, vectorOfLongsOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Long> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfLongsVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
- builder.startVector(8, data.length, 8);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfLongsVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(8, numElems, 8);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfDoublesOffset
- */
-static addVectorOfDoubles(builder:flatbuffers.Builder, vectorOfDoublesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(33, vectorOfDoublesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<number> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
-/**
- * @deprecated This Uint8Array overload will be removed in the future.
- */
-static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
-static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
- builder.startVector(8, data.length, 8);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addFloat64(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfDoublesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(8, numElems, 8);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset parentNamespaceTestOffset
- */
-static addParentNamespaceTest(builder:flatbuffers.Builder, parentNamespaceTestOffset:flatbuffers.Offset) {
- builder.addFieldOffset(34, parentNamespaceTestOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfReferrablesOffset
- */
-static addVectorOfReferrables(builder:flatbuffers.Builder, vectorOfReferrablesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(35, vectorOfReferrablesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Offset> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfReferrablesVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
- builder.startVector(4, data.length, 4);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addOffset(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfReferrablesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 4);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long singleWeakReference
- */
-static addSingleWeakReference(builder:flatbuffers.Builder, singleWeakReference:flatbuffers.Long) {
- builder.addFieldInt64(36, singleWeakReference, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfWeakReferencesOffset
- */
-static addVectorOfWeakReferences(builder:flatbuffers.Builder, vectorOfWeakReferencesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(37, vectorOfWeakReferencesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Long> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfWeakReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
- builder.startVector(8, data.length, 8);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfWeakReferencesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(8, numElems, 8);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfStrongReferrablesOffset
- */
-static addVectorOfStrongReferrables(builder:flatbuffers.Builder, vectorOfStrongReferrablesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(38, vectorOfStrongReferrablesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Offset> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfStrongReferrablesVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
- builder.startVector(4, data.length, 4);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addOffset(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfStrongReferrablesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 4);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long coOwningReference
- */
-static addCoOwningReference(builder:flatbuffers.Builder, coOwningReference:flatbuffers.Long) {
- builder.addFieldInt64(39, coOwningReference, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfCoOwningReferencesOffset
- */
-static addVectorOfCoOwningReferences(builder:flatbuffers.Builder, vectorOfCoOwningReferencesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(40, vectorOfCoOwningReferencesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Long> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfCoOwningReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
- builder.startVector(8, data.length, 8);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfCoOwningReferencesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(8, numElems, 8);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long nonOwningReference
- */
-static addNonOwningReference(builder:flatbuffers.Builder, nonOwningReference:flatbuffers.Long) {
- builder.addFieldInt64(41, nonOwningReference, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfNonOwningReferencesOffset
- */
-static addVectorOfNonOwningReferences(builder:flatbuffers.Builder, vectorOfNonOwningReferencesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(42, vectorOfNonOwningReferencesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Long> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfNonOwningReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
- builder.startVector(8, data.length, 8);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfNonOwningReferencesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(8, numElems, 8);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param MyGame.Example.AnyUniqueAliases anyUniqueType
- */
-static addAnyUniqueType(builder:flatbuffers.Builder, anyUniqueType:MyGame.Example.AnyUniqueAliases) {
- builder.addFieldInt8(43, anyUniqueType, MyGame.Example.AnyUniqueAliases.NONE);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset anyUniqueOffset
- */
-static addAnyUnique(builder:flatbuffers.Builder, anyUniqueOffset:flatbuffers.Offset) {
- builder.addFieldOffset(44, anyUniqueOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param MyGame.Example.AnyAmbiguousAliases anyAmbiguousType
- */
-static addAnyAmbiguousType(builder:flatbuffers.Builder, anyAmbiguousType:MyGame.Example.AnyAmbiguousAliases) {
- builder.addFieldInt8(45, anyAmbiguousType, MyGame.Example.AnyAmbiguousAliases.NONE);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset anyAmbiguousOffset
- */
-static addAnyAmbiguous(builder:flatbuffers.Builder, anyAmbiguousOffset:flatbuffers.Offset) {
- builder.addFieldOffset(46, anyAmbiguousOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vectorOfEnumsOffset
- */
-static addVectorOfEnums(builder:flatbuffers.Builder, vectorOfEnumsOffset:flatbuffers.Offset) {
- builder.addFieldOffset(47, vectorOfEnumsOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<MyGame.Example.Color> data
- * @returns flatbuffers.Offset
- */
-static createVectorOfEnumsVector(builder:flatbuffers.Builder, data:MyGame.Example.Color[]):flatbuffers.Offset {
- builder.startVector(1, data.length, 1);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVectorOfEnumsVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(1, numElems, 1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param MyGame.Example.Race signedEnum
- */
-static addSignedEnum(builder:flatbuffers.Builder, signedEnum:MyGame.Example.Race) {
- builder.addFieldInt8(48, signedEnum, MyGame.Example.Race.None);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset testrequirednestedflatbufferOffset
- */
-static addTestrequirednestedflatbuffer(builder:flatbuffers.Builder, testrequirednestedflatbufferOffset:flatbuffers.Offset) {
- builder.addFieldOffset(49, testrequirednestedflatbufferOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<number> data
- * @returns flatbuffers.Offset
- */
-static createTestrequirednestedflatbufferVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
- builder.startVector(1, data.length, 1);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startTestrequirednestedflatbufferVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(1, numElems, 1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset scalarKeySortedTablesOffset
- */
-static addScalarKeySortedTables(builder:flatbuffers.Builder, scalarKeySortedTablesOffset:flatbuffers.Offset) {
- builder.addFieldOffset(50, scalarKeySortedTablesOffset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<flatbuffers.Offset> data
- * @returns flatbuffers.Offset
- */
-static createScalarKeySortedTablesVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
- builder.startVector(4, data.length, 4);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addOffset(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startScalarKeySortedTablesVector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(4, numElems, 4);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-static endMonster(builder:flatbuffers.Builder):flatbuffers.Offset {
- var offset = builder.endObject();
- builder.requiredField(offset, 10); // name
- return offset;
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset offset
- */
-static finishMonsterBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
- builder.finish(offset, 'MONS');
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset offset
- */
-static finishSizePrefixedMonsterBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
- builder.finish(offset, 'MONS', true);
-};
-
-
-serialize():Uint8Array {
- return this.bb!.bytes();
-}
-
-static deserialize(buffer: Uint8Array):Monster {
- return Monster.getRootAsMonster(new flatbuffers.ByteBuffer(buffer))
-}
-
-/**
- * @returns MonsterT
- */
-unpack(): MonsterT {
- return new MonsterT(
- (this.pos() !== null ? this.pos()!.unpack() : null),
- this.mana(),
- this.hp(),
- this.name(),
- this.bb!.createScalarList(this.inventory.bind(this), this.inventoryLength()),
- this.color(),
- this.testType(),
- (() => {
- let temp = MyGame.Example.unionToAny(this.testType(), this.test.bind(this));
- if(temp === null) { return null; }
- return temp.unpack()
- })(),
- this.bb!.createObjList(this.test4.bind(this), this.test4Length()),
- this.bb!.createStringList(this.testarrayofstring.bind(this), this.testarrayofstringLength()),
- this.bb!.createObjList(this.testarrayoftables.bind(this), this.testarrayoftablesLength()),
- (this.enemy() !== null ? this.enemy()!.unpack() : null),
- this.bb!.createScalarList(this.testnestedflatbuffer.bind(this), this.testnestedflatbufferLength()),
- (this.testempty() !== null ? this.testempty()!.unpack() : null),
- this.testbool(),
- this.testhashs32Fnv1(),
- this.testhashu32Fnv1(),
- this.testhashs64Fnv1(),
- this.testhashu64Fnv1(),
- this.testhashs32Fnv1a(),
- this.testhashu32Fnv1a(),
- this.testhashs64Fnv1a(),
- this.testhashu64Fnv1a(),
- this.bb!.createScalarList(this.testarrayofbools.bind(this), this.testarrayofboolsLength()),
- this.testf(),
- this.testf2(),
- this.testf3(),
- this.bb!.createStringList(this.testarrayofstring2.bind(this), this.testarrayofstring2Length()),
- this.bb!.createObjList(this.testarrayofsortedstruct.bind(this), this.testarrayofsortedstructLength()),
- this.bb!.createScalarList(this.flex.bind(this), this.flexLength()),
- this.bb!.createObjList(this.test5.bind(this), this.test5Length()),
- this.bb!.createScalarList(this.vectorOfLongs.bind(this), this.vectorOfLongsLength()),
- this.bb!.createScalarList(this.vectorOfDoubles.bind(this), this.vectorOfDoublesLength()),
- (this.parentNamespaceTest() !== null ? this.parentNamespaceTest()!.unpack() : null),
- this.bb!.createObjList(this.vectorOfReferrables.bind(this), this.vectorOfReferrablesLength()),
- this.singleWeakReference(),
- this.bb!.createScalarList(this.vectorOfWeakReferences.bind(this), this.vectorOfWeakReferencesLength()),
- this.bb!.createObjList(this.vectorOfStrongReferrables.bind(this), this.vectorOfStrongReferrablesLength()),
- this.coOwningReference(),
- this.bb!.createScalarList(this.vectorOfCoOwningReferences.bind(this), this.vectorOfCoOwningReferencesLength()),
- this.nonOwningReference(),
- this.bb!.createScalarList(this.vectorOfNonOwningReferences.bind(this), this.vectorOfNonOwningReferencesLength()),
- this.anyUniqueType(),
- (() => {
- let temp = MyGame.Example.unionToAnyUniqueAliases(this.anyUniqueType(), this.anyUnique.bind(this));
- if(temp === null) { return null; }
- return temp.unpack()
- })(),
- this.anyAmbiguousType(),
- (() => {
- let temp = MyGame.Example.unionToAnyAmbiguousAliases(this.anyAmbiguousType(), this.anyAmbiguous.bind(this));
- if(temp === null) { return null; }
- return temp.unpack()
- })(),
- this.bb!.createScalarList(this.vectorOfEnums.bind(this), this.vectorOfEnumsLength()),
- this.signedEnum(),
- this.bb!.createScalarList(this.testrequirednestedflatbuffer.bind(this), this.testrequirednestedflatbufferLength()),
- this.bb!.createObjList(this.scalarKeySortedTables.bind(this), this.scalarKeySortedTablesLength())
- );
-};
-
-/**
- * @param MonsterT _o
- */
-unpackTo(_o: MonsterT): void {
- _o.pos = (this.pos() !== null ? this.pos()!.unpack() : null);
- _o.mana = this.mana();
- _o.hp = this.hp();
- _o.name = this.name();
- _o.inventory = this.bb!.createScalarList(this.inventory.bind(this), this.inventoryLength());
- _o.color = this.color();
- _o.testType = this.testType();
- _o.test = (() => {
- let temp = MyGame.Example.unionToAny(this.testType(), this.test.bind(this));
- if(temp === null) { return null; }
- return temp.unpack()
- })();
- _o.test4 = this.bb!.createObjList(this.test4.bind(this), this.test4Length());
- _o.testarrayofstring = this.bb!.createStringList(this.testarrayofstring.bind(this), this.testarrayofstringLength());
- _o.testarrayoftables = this.bb!.createObjList(this.testarrayoftables.bind(this), this.testarrayoftablesLength());
- _o.enemy = (this.enemy() !== null ? this.enemy()!.unpack() : null);
- _o.testnestedflatbuffer = this.bb!.createScalarList(this.testnestedflatbuffer.bind(this), this.testnestedflatbufferLength());
- _o.testempty = (this.testempty() !== null ? this.testempty()!.unpack() : null);
- _o.testbool = this.testbool();
- _o.testhashs32Fnv1 = this.testhashs32Fnv1();
- _o.testhashu32Fnv1 = this.testhashu32Fnv1();
- _o.testhashs64Fnv1 = this.testhashs64Fnv1();
- _o.testhashu64Fnv1 = this.testhashu64Fnv1();
- _o.testhashs32Fnv1a = this.testhashs32Fnv1a();
- _o.testhashu32Fnv1a = this.testhashu32Fnv1a();
- _o.testhashs64Fnv1a = this.testhashs64Fnv1a();
- _o.testhashu64Fnv1a = this.testhashu64Fnv1a();
- _o.testarrayofbools = this.bb!.createScalarList(this.testarrayofbools.bind(this), this.testarrayofboolsLength());
- _o.testf = this.testf();
- _o.testf2 = this.testf2();
- _o.testf3 = this.testf3();
- _o.testarrayofstring2 = this.bb!.createStringList(this.testarrayofstring2.bind(this), this.testarrayofstring2Length());
- _o.testarrayofsortedstruct = this.bb!.createObjList(this.testarrayofsortedstruct.bind(this), this.testarrayofsortedstructLength());
- _o.flex = this.bb!.createScalarList(this.flex.bind(this), this.flexLength());
- _o.test5 = this.bb!.createObjList(this.test5.bind(this), this.test5Length());
- _o.vectorOfLongs = this.bb!.createScalarList(this.vectorOfLongs.bind(this), this.vectorOfLongsLength());
- _o.vectorOfDoubles = this.bb!.createScalarList(this.vectorOfDoubles.bind(this), this.vectorOfDoublesLength());
- _o.parentNamespaceTest = (this.parentNamespaceTest() !== null ? this.parentNamespaceTest()!.unpack() : null);
- _o.vectorOfReferrables = this.bb!.createObjList(this.vectorOfReferrables.bind(this), this.vectorOfReferrablesLength());
- _o.singleWeakReference = this.singleWeakReference();
- _o.vectorOfWeakReferences = this.bb!.createScalarList(this.vectorOfWeakReferences.bind(this), this.vectorOfWeakReferencesLength());
- _o.vectorOfStrongReferrables = this.bb!.createObjList(this.vectorOfStrongReferrables.bind(this), this.vectorOfStrongReferrablesLength());
- _o.coOwningReference = this.coOwningReference();
- _o.vectorOfCoOwningReferences = this.bb!.createScalarList(this.vectorOfCoOwningReferences.bind(this), this.vectorOfCoOwningReferencesLength());
- _o.nonOwningReference = this.nonOwningReference();
- _o.vectorOfNonOwningReferences = this.bb!.createScalarList(this.vectorOfNonOwningReferences.bind(this), this.vectorOfNonOwningReferencesLength());
- _o.anyUniqueType = this.anyUniqueType();
- _o.anyUnique = (() => {
- let temp = MyGame.Example.unionToAnyUniqueAliases(this.anyUniqueType(), this.anyUnique.bind(this));
- if(temp === null) { return null; }
- return temp.unpack()
- })();
- _o.anyAmbiguousType = this.anyAmbiguousType();
- _o.anyAmbiguous = (() => {
- let temp = MyGame.Example.unionToAnyAmbiguousAliases(this.anyAmbiguousType(), this.anyAmbiguous.bind(this));
- if(temp === null) { return null; }
- return temp.unpack()
- })();
- _o.vectorOfEnums = this.bb!.createScalarList(this.vectorOfEnums.bind(this), this.vectorOfEnumsLength());
- _o.signedEnum = this.signedEnum();
- _o.testrequirednestedflatbuffer = this.bb!.createScalarList(this.testrequirednestedflatbuffer.bind(this), this.testrequirednestedflatbufferLength());
- _o.scalarKeySortedTables = this.bb!.createObjList(this.scalarKeySortedTables.bind(this), this.scalarKeySortedTablesLength());
-};
-}
-
-export class MonsterT {
-/**
- * @constructor
- * @param MyGame.Example.Vec3T|null pos
- * @param number mana
- * @param number hp
- * @param string|Uint8Array|null name
- * @param (number)[] inventory
- * @param MyGame.Example.Color color
- * @param MyGame.Example.Any testType
- * @param MyGame.Example.MonsterT|MyGame.Example.TestSimpleTableWithEnumT|MyGame.Example2.MonsterT|null test
- * @param (MyGame.Example.TestT)[] test4
- * @param (string)[] testarrayofstring
- * @param (MyGame.Example.MonsterT)[] testarrayoftables
- * @param MyGame.Example.MonsterT|null enemy
- * @param (number)[] testnestedflatbuffer
- * @param MyGame.Example.StatT|null testempty
- * @param boolean testbool
- * @param number testhashs32Fnv1
- * @param number testhashu32Fnv1
- * @param flatbuffers.Long testhashs64Fnv1
- * @param flatbuffers.Long testhashu64Fnv1
- * @param number testhashs32Fnv1a
- * @param number testhashu32Fnv1a
- * @param flatbuffers.Long testhashs64Fnv1a
- * @param flatbuffers.Long testhashu64Fnv1a
- * @param (boolean)[] testarrayofbools
- * @param number testf
- * @param number testf2
- * @param number testf3
- * @param (string)[] testarrayofstring2
- * @param (MyGame.Example.AbilityT)[] testarrayofsortedstruct
- * @param (number)[] flex
- * @param (MyGame.Example.TestT)[] test5
- * @param (flatbuffers.Long)[] vectorOfLongs
- * @param (number)[] vectorOfDoubles
- * @param MyGame.InParentNamespaceT|null parentNamespaceTest
- * @param (MyGame.Example.ReferrableT)[] vectorOfReferrables
- * @param flatbuffers.Long singleWeakReference
- * @param (flatbuffers.Long)[] vectorOfWeakReferences
- * @param (MyGame.Example.ReferrableT)[] vectorOfStrongReferrables
- * @param flatbuffers.Long coOwningReference
- * @param (flatbuffers.Long)[] vectorOfCoOwningReferences
- * @param flatbuffers.Long nonOwningReference
- * @param (flatbuffers.Long)[] vectorOfNonOwningReferences
- * @param MyGame.Example.AnyUniqueAliases anyUniqueType
- * @param MyGame.Example.MonsterT|MyGame.Example.TestSimpleTableWithEnumT|MyGame.Example2.MonsterT|null anyUnique
- * @param MyGame.Example.AnyAmbiguousAliases anyAmbiguousType
- * @param MyGame.Example.MonsterT|null anyAmbiguous
- * @param (MyGame.Example.Color)[] vectorOfEnums
- * @param MyGame.Example.Race signedEnum
- * @param (number)[] testrequirednestedflatbuffer
- * @param (MyGame.Example.StatT)[] scalarKeySortedTables
- */
-constructor(
- public pos: MyGame.Example.Vec3T|null = null,
- public mana: number = 150,
- public hp: number = 100,
- public name: string|Uint8Array|null = null,
- public inventory: (number)[] = [],
- public color: MyGame.Example.Color = MyGame.Example.Color.Blue,
- public testType: MyGame.Example.Any = MyGame.Example.Any.NONE,
- public test: MyGame.Example.MonsterT|MyGame.Example.TestSimpleTableWithEnumT|MyGame.Example2.MonsterT|null = null,
- public test4: (MyGame.Example.TestT)[] = [],
- public testarrayofstring: (string)[] = [],
- public testarrayoftables: (MyGame.Example.MonsterT)[] = [],
- public enemy: MyGame.Example.MonsterT|null = null,
- public testnestedflatbuffer: (number)[] = [],
- public testempty: MyGame.Example.StatT|null = null,
- public testbool: boolean = false,
- public testhashs32Fnv1: number = 0,
- public testhashu32Fnv1: number = 0,
- public testhashs64Fnv1: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public testhashu64Fnv1: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public testhashs32Fnv1a: number = 0,
- public testhashu32Fnv1a: number = 0,
- public testhashs64Fnv1a: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public testhashu64Fnv1a: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public testarrayofbools: (boolean)[] = [],
- public testf: number = 3.14159,
- public testf2: number = 3.0,
- public testf3: number = 0.0,
- public testarrayofstring2: (string)[] = [],
- public testarrayofsortedstruct: (MyGame.Example.AbilityT)[] = [],
- public flex: (number)[] = [],
- public test5: (MyGame.Example.TestT)[] = [],
- public vectorOfLongs: (flatbuffers.Long)[] = [],
- public vectorOfDoubles: (number)[] = [],
- public parentNamespaceTest: MyGame.InParentNamespaceT|null = null,
- public vectorOfReferrables: (MyGame.Example.ReferrableT)[] = [],
- public singleWeakReference: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public vectorOfWeakReferences: (flatbuffers.Long)[] = [],
- public vectorOfStrongReferrables: (MyGame.Example.ReferrableT)[] = [],
- public coOwningReference: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public vectorOfCoOwningReferences: (flatbuffers.Long)[] = [],
- public nonOwningReference: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public vectorOfNonOwningReferences: (flatbuffers.Long)[] = [],
- public anyUniqueType: MyGame.Example.AnyUniqueAliases = MyGame.Example.AnyUniqueAliases.NONE,
- public anyUnique: MyGame.Example.MonsterT|MyGame.Example.TestSimpleTableWithEnumT|MyGame.Example2.MonsterT|null = null,
- public anyAmbiguousType: MyGame.Example.AnyAmbiguousAliases = MyGame.Example.AnyAmbiguousAliases.NONE,
- public anyAmbiguous: MyGame.Example.MonsterT|null = null,
- public vectorOfEnums: (MyGame.Example.Color)[] = [],
- public signedEnum: MyGame.Example.Race = MyGame.Example.Race.None,
- public testrequirednestedflatbuffer: (number)[] = [],
- public scalarKeySortedTables: (MyGame.Example.StatT)[] = []
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- const name = (this.name !== null ? builder.createString(this.name!) : 0);
- const inventory = MyGame.Example.Monster.createInventoryVector(builder, this.inventory);
- const test = builder.createObjectOffset(this.test);
- const test4 = builder.createStructOffsetList(this.test4, MyGame.Example.Monster.startTest4Vector);
- const testarrayofstring = MyGame.Example.Monster.createTestarrayofstringVector(builder, builder.createObjectOffsetList(this.testarrayofstring));
- const testarrayoftables = MyGame.Example.Monster.createTestarrayoftablesVector(builder, builder.createObjectOffsetList(this.testarrayoftables));
- const testnestedflatbuffer = MyGame.Example.Monster.createTestnestedflatbufferVector(builder, this.testnestedflatbuffer);
- const testarrayofbools = MyGame.Example.Monster.createTestarrayofboolsVector(builder, this.testarrayofbools);
- const testarrayofstring2 = MyGame.Example.Monster.createTestarrayofstring2Vector(builder, builder.createObjectOffsetList(this.testarrayofstring2));
- const testarrayofsortedstruct = builder.createStructOffsetList(this.testarrayofsortedstruct, MyGame.Example.Monster.startTestarrayofsortedstructVector);
- const flex = MyGame.Example.Monster.createFlexVector(builder, this.flex);
- const test5 = builder.createStructOffsetList(this.test5, MyGame.Example.Monster.startTest5Vector);
- const vectorOfLongs = MyGame.Example.Monster.createVectorOfLongsVector(builder, this.vectorOfLongs);
- const vectorOfDoubles = MyGame.Example.Monster.createVectorOfDoublesVector(builder, this.vectorOfDoubles);
- const vectorOfReferrables = MyGame.Example.Monster.createVectorOfReferrablesVector(builder, builder.createObjectOffsetList(this.vectorOfReferrables));
- const vectorOfWeakReferences = MyGame.Example.Monster.createVectorOfWeakReferencesVector(builder, this.vectorOfWeakReferences);
- const vectorOfStrongReferrables = MyGame.Example.Monster.createVectorOfStrongReferrablesVector(builder, builder.createObjectOffsetList(this.vectorOfStrongReferrables));
- const vectorOfCoOwningReferences = MyGame.Example.Monster.createVectorOfCoOwningReferencesVector(builder, this.vectorOfCoOwningReferences);
- const vectorOfNonOwningReferences = MyGame.Example.Monster.createVectorOfNonOwningReferencesVector(builder, this.vectorOfNonOwningReferences);
- const anyUnique = builder.createObjectOffset(this.anyUnique);
- const anyAmbiguous = builder.createObjectOffset(this.anyAmbiguous);
- const vectorOfEnums = MyGame.Example.Monster.createVectorOfEnumsVector(builder, this.vectorOfEnums);
- const testrequirednestedflatbuffer = MyGame.Example.Monster.createTestrequirednestedflatbufferVector(builder, this.testrequirednestedflatbuffer);
- const scalarKeySortedTables = MyGame.Example.Monster.createScalarKeySortedTablesVector(builder, builder.createObjectOffsetList(this.scalarKeySortedTables));
-
- MyGame.Example.Monster.start(builder);
- MyGame.Example.Monster.addPos(builder, (this.pos !== null ? this.pos!.pack(builder) : 0));
- MyGame.Example.Monster.addMana(builder, this.mana);
- MyGame.Example.Monster.addHp(builder, this.hp);
- MyGame.Example.Monster.addName(builder, name);
- MyGame.Example.Monster.addInventory(builder, inventory);
- MyGame.Example.Monster.addColor(builder, this.color);
- MyGame.Example.Monster.addTestType(builder, this.testType);
- MyGame.Example.Monster.addTest(builder, test);
- MyGame.Example.Monster.addTest4(builder, test4);
- MyGame.Example.Monster.addTestarrayofstring(builder, testarrayofstring);
- MyGame.Example.Monster.addTestarrayoftables(builder, testarrayoftables);
- MyGame.Example.Monster.addEnemy(builder, (this.enemy !== null ? this.enemy!.pack(builder) : 0));
- MyGame.Example.Monster.addTestnestedflatbuffer(builder, testnestedflatbuffer);
- MyGame.Example.Monster.addTestempty(builder, (this.testempty !== null ? this.testempty!.pack(builder) : 0));
- MyGame.Example.Monster.addTestbool(builder, this.testbool);
- MyGame.Example.Monster.addTesthashs32Fnv1(builder, this.testhashs32Fnv1);
- MyGame.Example.Monster.addTesthashu32Fnv1(builder, this.testhashu32Fnv1);
- MyGame.Example.Monster.addTesthashs64Fnv1(builder, this.testhashs64Fnv1);
- MyGame.Example.Monster.addTesthashu64Fnv1(builder, this.testhashu64Fnv1);
- MyGame.Example.Monster.addTesthashs32Fnv1a(builder, this.testhashs32Fnv1a);
- MyGame.Example.Monster.addTesthashu32Fnv1a(builder, this.testhashu32Fnv1a);
- MyGame.Example.Monster.addTesthashs64Fnv1a(builder, this.testhashs64Fnv1a);
- MyGame.Example.Monster.addTesthashu64Fnv1a(builder, this.testhashu64Fnv1a);
- MyGame.Example.Monster.addTestarrayofbools(builder, testarrayofbools);
- MyGame.Example.Monster.addTestf(builder, this.testf);
- MyGame.Example.Monster.addTestf2(builder, this.testf2);
- MyGame.Example.Monster.addTestf3(builder, this.testf3);
- MyGame.Example.Monster.addTestarrayofstring2(builder, testarrayofstring2);
- MyGame.Example.Monster.addTestarrayofsortedstruct(builder, testarrayofsortedstruct);
- MyGame.Example.Monster.addFlex(builder, flex);
- MyGame.Example.Monster.addTest5(builder, test5);
- MyGame.Example.Monster.addVectorOfLongs(builder, vectorOfLongs);
- MyGame.Example.Monster.addVectorOfDoubles(builder, vectorOfDoubles);
- MyGame.Example.Monster.addParentNamespaceTest(builder, (this.parentNamespaceTest !== null ? this.parentNamespaceTest!.pack(builder) : 0));
- MyGame.Example.Monster.addVectorOfReferrables(builder, vectorOfReferrables);
- MyGame.Example.Monster.addSingleWeakReference(builder, this.singleWeakReference);
- MyGame.Example.Monster.addVectorOfWeakReferences(builder, vectorOfWeakReferences);
- MyGame.Example.Monster.addVectorOfStrongReferrables(builder, vectorOfStrongReferrables);
- MyGame.Example.Monster.addCoOwningReference(builder, this.coOwningReference);
- MyGame.Example.Monster.addVectorOfCoOwningReferences(builder, vectorOfCoOwningReferences);
- MyGame.Example.Monster.addNonOwningReference(builder, this.nonOwningReference);
- MyGame.Example.Monster.addVectorOfNonOwningReferences(builder, vectorOfNonOwningReferences);
- MyGame.Example.Monster.addAnyUniqueType(builder, this.anyUniqueType);
- MyGame.Example.Monster.addAnyUnique(builder, anyUnique);
- MyGame.Example.Monster.addAnyAmbiguousType(builder, this.anyAmbiguousType);
- MyGame.Example.Monster.addAnyAmbiguous(builder, anyAmbiguous);
- MyGame.Example.Monster.addVectorOfEnums(builder, vectorOfEnums);
- MyGame.Example.Monster.addSignedEnum(builder, this.signedEnum);
- MyGame.Example.Monster.addTestrequirednestedflatbuffer(builder, testrequirednestedflatbuffer);
- MyGame.Example.Monster.addScalarKeySortedTables(builder, scalarKeySortedTables);
-
- return MyGame.Example.Monster.end(builder);
-};
-}
-}
-/**
- * @constructor
- */
-export namespace MyGame.Example{
-export class TypeAliases {
- bb: flatbuffers.ByteBuffer|null = null;
-
- bb_pos:number = 0;
-/**
- * @param number i
- * @param flatbuffers.ByteBuffer bb
- * @returns TypeAliases
- */
-__init(i:number, bb:flatbuffers.ByteBuffer):TypeAliases {
- this.bb_pos = i;
- this.bb = bb;
- return this;
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param TypeAliases= obj
- * @returns TypeAliases
- */
-static getRootAsTypeAliases(bb:flatbuffers.ByteBuffer, obj?:TypeAliases):TypeAliases {
- return (obj || new TypeAliases()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @param flatbuffers.ByteBuffer bb
- * @param TypeAliases= obj
- * @returns TypeAliases
- */
-static getSizePrefixedRootAsTypeAliases(bb:flatbuffers.ByteBuffer, obj?:TypeAliases):TypeAliases {
- bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
- return (obj || new TypeAliases()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
-};
-
-/**
- * @returns number
- */
-i8():number {
- var offset = this.bb!.__offset(this.bb_pos, 4);
- return offset ? this.bb!.readInt8(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_i8(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 4);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt8(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-u8():number {
- var offset = this.bb!.__offset(this.bb_pos, 6);
- return offset ? this.bb!.readUint8(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_u8(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 6);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint8(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-i16():number {
- var offset = this.bb!.__offset(this.bb_pos, 8);
- return offset ? this.bb!.readInt16(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_i16(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 8);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt16(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-u16():number {
- var offset = this.bb!.__offset(this.bb_pos, 10);
- return offset ? this.bb!.readUint16(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_u16(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 10);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint16(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-i32():number {
- var offset = this.bb!.__offset(this.bb_pos, 12);
- return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_i32(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 12);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-u32():number {
- var offset = this.bb!.__offset(this.bb_pos, 14);
- return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_u32(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 14);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-i64():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 16);
- return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_i64(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 16);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeInt64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns flatbuffers.Long
- */
-u64():flatbuffers.Long {
- var offset = this.bb!.__offset(this.bb_pos, 18);
- return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
-};
-
-/**
- * @param flatbuffers.Long value
- * @returns boolean
- */
-mutate_u64(value:flatbuffers.Long):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 18);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeUint64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-f32():number {
- var offset = this.bb!.__offset(this.bb_pos, 20);
- return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 0.0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_f32(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 20);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeFloat32(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @returns number
- */
-f64():number {
- var offset = this.bb!.__offset(this.bb_pos, 22);
- return offset ? this.bb!.readFloat64(this.bb_pos + offset) : 0.0;
-};
-
-/**
- * @param number value
- * @returns boolean
- */
-mutate_f64(value:number):boolean {
- var offset = this.bb!.__offset(this.bb_pos, 22);
-
- if (offset === 0) {
- return false;
- }
-
- this.bb!.writeFloat64(this.bb_pos + offset, value);
- return true;
-};
-
-/**
- * @param number index
- * @returns number
- */
-v8(index: number):number|null {
- var offset = this.bb!.__offset(this.bb_pos, 24);
- return offset ? this.bb!.readInt8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
-};
-
-/**
- * @returns number
- */
-v8Length():number {
- var offset = this.bb!.__offset(this.bb_pos, 24);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Int8Array
- */
-v8Array():Int8Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 24);
- return offset ? new Int8Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
-};
-
-/**
- * @param number index
- * @returns number
- */
-vf64(index: number):number|null {
- var offset = this.bb!.__offset(this.bb_pos, 26);
- return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
-};
-
-/**
- * @returns number
- */
-vf64Length():number {
- var offset = this.bb!.__offset(this.bb_pos, 26);
- return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
-};
-
-/**
- * @returns Float64Array
- */
-vf64Array():Float64Array|null {
- var offset = this.bb!.__offset(this.bb_pos, 26);
- return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
-};
-
-/**
- * @param flatbuffers.Builder builder
- */
-static startTypeAliases(builder:flatbuffers.Builder) {
- builder.startObject(12);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number i8
- */
-static addI8(builder:flatbuffers.Builder, i8:number) {
- builder.addFieldInt8(0, i8, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number u8
- */
-static addU8(builder:flatbuffers.Builder, u8:number) {
- builder.addFieldInt8(1, u8, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number i16
- */
-static addI16(builder:flatbuffers.Builder, i16:number) {
- builder.addFieldInt16(2, i16, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number u16
- */
-static addU16(builder:flatbuffers.Builder, u16:number) {
- builder.addFieldInt16(3, u16, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number i32
- */
-static addI32(builder:flatbuffers.Builder, i32:number) {
- builder.addFieldInt32(4, i32, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number u32
- */
-static addU32(builder:flatbuffers.Builder, u32:number) {
- builder.addFieldInt32(5, u32, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long i64
- */
-static addI64(builder:flatbuffers.Builder, i64:flatbuffers.Long) {
- builder.addFieldInt64(6, i64, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Long u64
- */
-static addU64(builder:flatbuffers.Builder, u64:flatbuffers.Long) {
- builder.addFieldInt64(7, u64, builder.createLong(0, 0));
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number f32
- */
-static addF32(builder:flatbuffers.Builder, f32:number) {
- builder.addFieldFloat32(8, f32, 0.0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number f64
- */
-static addF64(builder:flatbuffers.Builder, f64:number) {
- builder.addFieldFloat64(9, f64, 0.0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset v8Offset
- */
-static addV8(builder:flatbuffers.Builder, v8Offset:flatbuffers.Offset) {
- builder.addFieldOffset(10, v8Offset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<number> data
- * @returns flatbuffers.Offset
- */
-static createV8Vector(builder:flatbuffers.Builder, data:number[]|Int8Array):flatbuffers.Offset;
-/**
- * @deprecated This Uint8Array overload will be removed in the future.
- */
-static createV8Vector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
-static createV8Vector(builder:flatbuffers.Builder, data:number[]|Int8Array|Uint8Array):flatbuffers.Offset {
- builder.startVector(1, data.length, 1);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startV8Vector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(1, numElems, 1);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param flatbuffers.Offset vf64Offset
- */
-static addVf64(builder:flatbuffers.Builder, vf64Offset:flatbuffers.Offset) {
- builder.addFieldOffset(11, vf64Offset, 0);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param Array.<number> data
- * @returns flatbuffers.Offset
- */
-static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
-/**
- * @deprecated This Uint8Array overload will be removed in the future.
- */
-static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
-static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
- builder.startVector(8, data.length, 8);
- for (var i = data.length - 1; i >= 0; i--) {
- builder.addFloat64(data[i]);
- }
- return builder.endVector();
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @param number numElems
- */
-static startVf64Vector(builder:flatbuffers.Builder, numElems:number) {
- builder.startVector(8, numElems, 8);
-};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-static endTypeAliases(builder:flatbuffers.Builder):flatbuffers.Offset {
- var offset = builder.endObject();
- return offset;
-};
-
-static createTypeAliases(builder:flatbuffers.Builder, i8:number, u8:number, i16:number, u16:number, i32:number, u32:number, i64:flatbuffers.Long, u64:flatbuffers.Long, f32:number, f64:number, v8Offset:flatbuffers.Offset, vf64Offset:flatbuffers.Offset):flatbuffers.Offset {
- TypeAliases.startTypeAliases(builder);
- TypeAliases.addI8(builder, i8);
- TypeAliases.addU8(builder, u8);
- TypeAliases.addI16(builder, i16);
- TypeAliases.addU16(builder, u16);
- TypeAliases.addI32(builder, i32);
- TypeAliases.addU32(builder, u32);
- TypeAliases.addI64(builder, i64);
- TypeAliases.addU64(builder, u64);
- TypeAliases.addF32(builder, f32);
- TypeAliases.addF64(builder, f64);
- TypeAliases.addV8(builder, v8Offset);
- TypeAliases.addVf64(builder, vf64Offset);
- return TypeAliases.endTypeAliases(builder);
-}
-
-serialize():Uint8Array {
- return this.bb!.bytes();
-}
-
-static deserialize(buffer: Uint8Array):TypeAliases {
- return TypeAliases.getRootAsTypeAliases(new flatbuffers.ByteBuffer(buffer))
-}
-
-/**
- * @returns TypeAliasesT
- */
-unpack(): TypeAliasesT {
- return new TypeAliasesT(
- this.i8(),
- this.u8(),
- this.i16(),
- this.u16(),
- this.i32(),
- this.u32(),
- this.i64(),
- this.u64(),
- this.f32(),
- this.f64(),
- this.bb!.createScalarList(this.v8.bind(this), this.v8Length()),
- this.bb!.createScalarList(this.vf64.bind(this), this.vf64Length())
- );
-};
-
-/**
- * @param TypeAliasesT _o
- */
-unpackTo(_o: TypeAliasesT): void {
- _o.i8 = this.i8();
- _o.u8 = this.u8();
- _o.i16 = this.i16();
- _o.u16 = this.u16();
- _o.i32 = this.i32();
- _o.u32 = this.u32();
- _o.i64 = this.i64();
- _o.u64 = this.u64();
- _o.f32 = this.f32();
- _o.f64 = this.f64();
- _o.v8 = this.bb!.createScalarList(this.v8.bind(this), this.v8Length());
- _o.vf64 = this.bb!.createScalarList(this.vf64.bind(this), this.vf64Length());
-};
-}
-
-export class TypeAliasesT {
-/**
- * @constructor
- * @param number i8
- * @param number u8
- * @param number i16
- * @param number u16
- * @param number i32
- * @param number u32
- * @param flatbuffers.Long i64
- * @param flatbuffers.Long u64
- * @param number f32
- * @param number f64
- * @param (number)[] v8
- * @param (number)[] vf64
- */
-constructor(
- public i8: number = 0,
- public u8: number = 0,
- public i16: number = 0,
- public u16: number = 0,
- public i32: number = 0,
- public u32: number = 0,
- public i64: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public u64: flatbuffers.Long = flatbuffers.createLong(0, 0),
- public f32: number = 0.0,
- public f64: number = 0.0,
- public v8: (number)[] = [],
- public vf64: (number)[] = []
-){};
-
-/**
- * @param flatbuffers.Builder builder
- * @returns flatbuffers.Offset
- */
-pack(builder:flatbuffers.Builder): flatbuffers.Offset {
- const v8 = MyGame.Example.TypeAliases.createV8Vector(builder, this.v8);
- const vf64 = MyGame.Example.TypeAliases.createVf64Vector(builder, this.vf64);
-
- return MyGame.Example.TypeAliases.createTypeAliases(builder,
- this.i8,
- this.u8,
- this.i16,
- this.u16,
- this.i32,
- this.u32,
- this.i64,
- this.u64,
- this.f32,
- this.f64,
- v8,
- vf64
- );
-};
-}
-}
diff --git a/tests/monster_test_grpc.d.ts b/tests/monster_test_grpc.d.ts
new file mode 100644
index 00000000..a1535fed
--- /dev/null
+++ b/tests/monster_test_grpc.d.ts
@@ -0,0 +1,93 @@
+// Generated GRPC code for FlatBuffers TS *** DO NOT EDIT ***
+import { flatbuffers } from 'flatbuffers';
+import { Stat as MyGame_Example_Stat } from './my-game/example/stat';
+import { Monster as MyGame_Example_Monster } from './my-game/example/monster';
+
+import * as grpc from 'grpc';
+
+interface IMonsterStorageService extends grpc.ServiceDefinition<grpc.UntypedServiceImplementation> {
+ Store: IMonsterStorageService_IStore;
+ Retrieve: IMonsterStorageService_IRetrieve;
+ GetMaxHitPoint: IMonsterStorageService_IGetMaxHitPoint;
+ GetMinMaxHitPoints: IMonsterStorageService_IGetMinMaxHitPoints;
+}
+interface IMonsterStorageService_IStore extends grpc.MethodDefinition<MyGame_Example_Monster, MyGame_Example_Stat> {
+ path: string; // /MyGame.Example.MonsterStorage/Store
+ requestStream: boolean; // false
+ responseStream: boolean; // false
+ requestSerialize: grpc.serialize<MyGame_Example_Monster>;
+ requestDeserialize: grpc.deserialize<MyGame_Example_Monster>;
+ responseSerialize: grpc.serialize<MyGame_Example_Stat>;
+ responseDeserialize: grpc.deserialize<MyGame_Example_Stat>;
+}
+
+interface IMonsterStorageService_IRetrieve extends grpc.MethodDefinition<MyGame_Example_Stat, MyGame_Example_Monster> {
+ path: string; // /MyGame.Example.MonsterStorage/Retrieve
+ requestStream: boolean; // false
+ responseStream: boolean; // true
+ requestSerialize: grpc.serialize<MyGame_Example_Stat>;
+ requestDeserialize: grpc.deserialize<MyGame_Example_Stat>;
+ responseSerialize: grpc.serialize<MyGame_Example_Monster>;
+ responseDeserialize: grpc.deserialize<MyGame_Example_Monster>;
+}
+
+interface IMonsterStorageService_IGetMaxHitPoint extends grpc.MethodDefinition<MyGame_Example_Monster, MyGame_Example_Stat> {
+ path: string; // /MyGame.Example.MonsterStorage/GetMaxHitPoint
+ requestStream: boolean; // true
+ responseStream: boolean; // false
+ requestSerialize: grpc.serialize<MyGame_Example_Monster>;
+ requestDeserialize: grpc.deserialize<MyGame_Example_Monster>;
+ responseSerialize: grpc.serialize<MyGame_Example_Stat>;
+ responseDeserialize: grpc.deserialize<MyGame_Example_Stat>;
+}
+
+interface IMonsterStorageService_IGetMinMaxHitPoints extends grpc.MethodDefinition<MyGame_Example_Monster, MyGame_Example_Stat> {
+ path: string; // /MyGame.Example.MonsterStorage/GetMinMaxHitPoints
+ requestStream: boolean; // true
+ responseStream: boolean; // true
+ requestSerialize: grpc.serialize<MyGame_Example_Monster>;
+ requestDeserialize: grpc.deserialize<MyGame_Example_Monster>;
+ responseSerialize: grpc.serialize<MyGame_Example_Stat>;
+ responseDeserialize: grpc.deserialize<MyGame_Example_Stat>;
+}
+
+
+export const MonsterStorageService: IMonsterStorageService;
+
+export interface IMonsterStorageServer {
+ Store: grpc.handleUnaryCall<MyGame_Example_Monster, MyGame_Example_Stat>;
+ Retrieve: grpc.handleServerStreamingCall<MyGame_Example_Stat, MyGame_Example_Monster>;
+ GetMaxHitPoint: grpc.handleClientStreamingCall<MyGame_Example_Monster, MyGame_Example_Stat>;
+ GetMinMaxHitPoints: grpc.handleBidiStreamingCall<MyGame_Example_Monster, MyGame_Example_Stat>;
+}
+
+export interface IMonsterStorageClient {
+ Store(request: MyGame_Example_Monster, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Stat) => void): grpc.ClientUnaryCall;
+ Store(request: MyGame_Example_Monster, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Stat) => void): grpc.ClientUnaryCall;
+ Store(request: MyGame_Example_Monster, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Stat) => void): grpc.ClientUnaryCall;
+ Retrieve(request: MyGame_Example_Stat, metadata: grpc.Metadata): grpc.ClientReadableStream<MyGame_Example_Monster>;
+ Retrieve(request: MyGame_Example_Stat, options: Partial<grpc.CallOptions>): grpc.ClientReadableStream<MyGame_Example_Monster>;
+ GetMaxHitPoint(callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ GetMaxHitPoint(metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ GetMaxHitPoint(options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ GetMaxHitPoint(metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ GetMinMaxHitPoints(): grpc.ClientDuplexStream<MyGame_Example_Monster, MyGame_Example_Stat>;
+ GetMinMaxHitPoints(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<MyGame_Example_Monster, MyGame_Example_Stat>;
+ GetMinMaxHitPoints(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<MyGame_Example_Monster, MyGame_Example_Stat>;
+}
+
+export class MonsterStorageClient extends grpc.Client implements IMonsterStorageClient {
+ constructor(address: string, credentials: grpc.ChannelCredentials, options?: object); public Store(request: MyGame_Example_Monster, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Stat) => void): grpc.ClientUnaryCall;
+ public Store(request: MyGame_Example_Monster, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Stat) => void): grpc.ClientUnaryCall;
+ public Store(request: MyGame_Example_Monster, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Stat) => void): grpc.ClientUnaryCall;
+ public Retrieve(request: MyGame_Example_Stat, metadata: grpc.Metadata): grpc.ClientReadableStream<MyGame_Example_Monster>;
+ public Retrieve(request: MyGame_Example_Stat, options: Partial<grpc.CallOptions>): grpc.ClientReadableStream<MyGame_Example_Monster>;
+ public GetMaxHitPoint(callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ public GetMaxHitPoint(metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ public GetMaxHitPoint(options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ public GetMaxHitPoint(metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: MyGame_Example_Monster) => void): grpc.ClientWritableStream<MyGame_Example_Stat>;
+ public GetMinMaxHitPoints(): grpc.ClientDuplexStream<MyGame_Example_Monster, MyGame_Example_Stat>;
+ public GetMinMaxHitPoints(options: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<MyGame_Example_Monster, MyGame_Example_Stat>;
+ public GetMinMaxHitPoints(metadata: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientDuplexStream<MyGame_Example_Monster, MyGame_Example_Stat>;
+}
+
diff --git a/tests/my-game/example/ability.ts b/tests/my-game/example/ability.ts
new file mode 100644
index 00000000..6ab5b4d7
--- /dev/null
+++ b/tests/my-game/example/ability.ts
@@ -0,0 +1,73 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class Ability {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Ability {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+id():number {
+ return this.bb!.readUint32(this.bb_pos);
+}
+
+mutate_id(value:number):boolean {
+ this.bb!.writeUint32(this.bb_pos + 0, value);
+ return true;
+}
+
+distance():number {
+ return this.bb!.readUint32(this.bb_pos + 4);
+}
+
+mutate_distance(value:number):boolean {
+ this.bb!.writeUint32(this.bb_pos + 4, value);
+ return true;
+}
+
+static sizeOf():number {
+ return 8;
+}
+
+static createAbility(builder:flatbuffers.Builder, id: number, distance: number):flatbuffers.Offset {
+ builder.prep(4, 8);
+ builder.writeInt32(distance);
+ builder.writeInt32(id);
+ return builder.offset();
+}
+
+
+unpack(): AbilityT {
+ return new AbilityT(
+ this.id(),
+ this.distance()
+ );
+}
+
+
+unpackTo(_o: AbilityT): void {
+ _o.id = this.id();
+ _o.distance = this.distance();
+}
+}
+
+export class AbilityT {
+constructor(
+ public id: number = 0,
+ public distance: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return Ability.createAbility(builder,
+ this.id,
+ this.distance
+ );
+}
+}
diff --git a/tests/my-game/example/any-ambiguous-aliases.ts b/tests/my-game/example/any-ambiguous-aliases.ts
new file mode 100644
index 00000000..6687a419
--- /dev/null
+++ b/tests/my-game/example/any-ambiguous-aliases.ts
@@ -0,0 +1,39 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import { Monster, MonsterT } from '../../my-game/example/monster';
+
+
+export enum AnyAmbiguousAliases{
+ NONE = 0,
+ M1 = 1,
+ M2 = 2,
+ M3 = 3
+}
+
+export function unionToAnyAmbiguousAliases(
+ type: AnyAmbiguousAliases,
+ accessor: (obj:Monster) => Monster|null
+): Monster|null {
+ switch(AnyAmbiguousAliases[type]) {
+ case 'NONE': return null;
+ case 'M1': return accessor(new Monster())! as Monster;
+ case 'M2': return accessor(new Monster())! as Monster;
+ case 'M3': return accessor(new Monster())! as Monster;
+ default: return null;
+ }
+}
+
+export function unionListToAnyAmbiguousAliases(
+ type: AnyAmbiguousAliases,
+ accessor: (index: number, obj:Monster) => Monster|null,
+ index: number
+): Monster|null {
+ switch(AnyAmbiguousAliases[type]) {
+ case 'NONE': return null;
+ case 'M1': return accessor(index, new Monster())! as Monster;
+ case 'M2': return accessor(index, new Monster())! as Monster;
+ case 'M3': return accessor(index, new Monster())! as Monster;
+ default: return null;
+ }
+}
+
diff --git a/tests/my-game/example/any-unique-aliases.ts b/tests/my-game/example/any-unique-aliases.ts
new file mode 100644
index 00000000..51061488
--- /dev/null
+++ b/tests/my-game/example/any-unique-aliases.ts
@@ -0,0 +1,41 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import { Monster as MyGameExample2Monster, MonsterT as MyGameExample2MonsterT } from '../../my-game/example2/monster';
+import { Monster, MonsterT } from '../../my-game/example/monster';
+import { TestSimpleTableWithEnum, TestSimpleTableWithEnumT } from '../../my-game/example/test-simple-table-with-enum';
+
+
+export enum AnyUniqueAliases{
+ NONE = 0,
+ M = 1,
+ TS = 2,
+ M2 = 3
+}
+
+export function unionToAnyUniqueAliases(
+ type: AnyUniqueAliases,
+ accessor: (obj:Monster|MyGameExample2Monster|TestSimpleTableWithEnum) => Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null
+): Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null {
+ switch(AnyUniqueAliases[type]) {
+ case 'NONE': return null;
+ case 'M': return accessor(new Monster())! as Monster;
+ case 'TS': return accessor(new TestSimpleTableWithEnum())! as TestSimpleTableWithEnum;
+ case 'M2': return accessor(new MyGameExample2Monster())! as MyGameExample2Monster;
+ default: return null;
+ }
+}
+
+export function unionListToAnyUniqueAliases(
+ type: AnyUniqueAliases,
+ accessor: (index: number, obj:Monster|MyGameExample2Monster|TestSimpleTableWithEnum) => Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null,
+ index: number
+): Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null {
+ switch(AnyUniqueAliases[type]) {
+ case 'NONE': return null;
+ case 'M': return accessor(index, new Monster())! as Monster;
+ case 'TS': return accessor(index, new TestSimpleTableWithEnum())! as TestSimpleTableWithEnum;
+ case 'M2': return accessor(index, new MyGameExample2Monster())! as MyGameExample2Monster;
+ default: return null;
+ }
+}
+
diff --git a/tests/my-game/example/any.ts b/tests/my-game/example/any.ts
new file mode 100644
index 00000000..9d8b2a61
--- /dev/null
+++ b/tests/my-game/example/any.ts
@@ -0,0 +1,41 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import { Monster as MyGameExample2Monster, MonsterT as MyGameExample2MonsterT } from '../../my-game/example2/monster';
+import { Monster, MonsterT } from '../../my-game/example/monster';
+import { TestSimpleTableWithEnum, TestSimpleTableWithEnumT } from '../../my-game/example/test-simple-table-with-enum';
+
+
+export enum Any{
+ NONE = 0,
+ Monster = 1,
+ TestSimpleTableWithEnum = 2,
+ MyGame_Example2_Monster = 3
+}
+
+export function unionToAny(
+ type: Any,
+ accessor: (obj:Monster|MyGameExample2Monster|TestSimpleTableWithEnum) => Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null
+): Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null {
+ switch(Any[type]) {
+ case 'NONE': return null;
+ case 'Monster': return accessor(new Monster())! as Monster;
+ case 'TestSimpleTableWithEnum': return accessor(new TestSimpleTableWithEnum())! as TestSimpleTableWithEnum;
+ case 'MyGame_Example2_Monster': return accessor(new MyGameExample2Monster())! as MyGameExample2Monster;
+ default: return null;
+ }
+}
+
+export function unionListToAny(
+ type: Any,
+ accessor: (index: number, obj:Monster|MyGameExample2Monster|TestSimpleTableWithEnum) => Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null,
+ index: number
+): Monster|MyGameExample2Monster|TestSimpleTableWithEnum|null {
+ switch(Any[type]) {
+ case 'NONE': return null;
+ case 'Monster': return accessor(index, new Monster())! as Monster;
+ case 'TestSimpleTableWithEnum': return accessor(index, new TestSimpleTableWithEnum())! as TestSimpleTableWithEnum;
+ case 'MyGame_Example2_Monster': return accessor(index, new MyGameExample2Monster())! as MyGameExample2Monster;
+ default: return null;
+ }
+}
+
diff --git a/tests/my-game/example/color.ts b/tests/my-game/example/color.ts
new file mode 100644
index 00000000..ceb31f82
--- /dev/null
+++ b/tests/my-game/example/color.ts
@@ -0,0 +1,20 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+/**
+ * Composite components of Monster color.
+ */
+export enum Color{
+ Red = 1,
+
+ /**
+ * \brief color Green
+ * Green is bit_flag with value (1u << 1)
+ */
+ Green = 2,
+
+ /**
+ * \brief color Blue (1u << 3)
+ */
+ Blue = 8
+}
+
diff --git a/tests/my-game/example/monster.ts b/tests/my-game/example/monster.ts
new file mode 100644
index 00000000..69bfa584
--- /dev/null
+++ b/tests/my-game/example/monster.ts
@@ -0,0 +1,1366 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { Monster as MyGameExample2Monster, MonsterT as MyGameExample2MonsterT } from '../../my-game/example2/monster';
+import { Ability, AbilityT } from '../../my-game/example/ability';
+import { Any, unionToAny, unionListToAny } from '../../my-game/example/any';
+import { AnyAmbiguousAliases, unionToAnyAmbiguousAliases, unionListToAnyAmbiguousAliases } from '../../my-game/example/any-ambiguous-aliases';
+import { AnyUniqueAliases, unionToAnyUniqueAliases, unionListToAnyUniqueAliases } from '../../my-game/example/any-unique-aliases';
+import { Color } from '../../my-game/example/color';
+import { Race } from '../../my-game/example/race';
+import { Referrable, ReferrableT } from '../../my-game/example/referrable';
+import { Stat, StatT } from '../../my-game/example/stat';
+import { Test, TestT } from '../../my-game/example/test';
+import { TestSimpleTableWithEnum, TestSimpleTableWithEnumT } from '../../my-game/example/test-simple-table-with-enum';
+import { Vec3, Vec3T } from '../../my-game/example/vec3';
+import { InParentNamespace, InParentNamespaceT } from '../../my-game/in-parent-namespace';
+
+
+/**
+ * an example documentation comment: "monster object"
+ */
+export class Monster {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Monster {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
+ return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static bufferHasIdentifier(bb:flatbuffers.ByteBuffer):boolean {
+ return bb.__has_identifier('MONS');
+}
+
+pos(obj?:Vec3):Vec3|null {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? (obj || new Vec3()).__init(this.bb_pos + offset, this.bb!) : null;
+}
+
+mana():number {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+ return offset ? this.bb!.readInt16(this.bb_pos + offset) : 150;
+}
+
+mutate_mana(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt16(this.bb_pos + offset, value);
+ return true;
+}
+
+hp():number {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ return offset ? this.bb!.readInt16(this.bb_pos + offset) : 100;
+}
+
+mutate_hp(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt16(this.bb_pos + offset, value);
+ return true;
+}
+
+name():string|null
+name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
+name(optionalEncoding?:any):string|Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 10);
+ return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
+}
+
+inventory(index: number):number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 14);
+ return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
+}
+
+inventoryLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 14);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+inventoryArray():Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 14);
+ 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;
+}
+
+color():Color {
+ const offset = this.bb!.__offset(this.bb_pos, 16);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : Color.Blue;
+}
+
+mutate_color(value:Color):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 16);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint8(this.bb_pos + offset, value);
+ return true;
+}
+
+testType():Any {
+ const offset = this.bb!.__offset(this.bb_pos, 18);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : Any.NONE;
+}
+
+test<T extends flatbuffers.Table>(obj:any):any|null {
+ const offset = this.bb!.__offset(this.bb_pos, 20);
+ return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
+}
+
+test4(index: number, obj?:Test):Test|null {
+ const offset = this.bb!.__offset(this.bb_pos, 22);
+ return offset ? (obj || new Test()).__init(this.bb!.__vector(this.bb_pos + offset) + index * 4, this.bb!) : null;
+}
+
+test4Length():number {
+ const offset = this.bb!.__offset(this.bb_pos, 22);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+testarrayofstring(index: number):string
+testarrayofstring(index: number,optionalEncoding:flatbuffers.Encoding):string|Uint8Array
+testarrayofstring(index: number,optionalEncoding?:any):string|Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 24);
+ return offset ? this.bb!.__string(this.bb!.__vector(this.bb_pos + offset) + index * 4, optionalEncoding) : null;
+}
+
+testarrayofstringLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 24);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+/**
+ * an example documentation comment: this will end up in the generated code
+ * multiline too
+ */
+testarrayoftables(index: number, obj?:Monster):Monster|null {
+ const offset = this.bb!.__offset(this.bb_pos, 26);
+ return offset ? (obj || new Monster()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
+}
+
+testarrayoftablesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 26);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+enemy(obj?:Monster):Monster|null {
+ const offset = this.bb!.__offset(this.bb_pos, 28);
+ return offset ? (obj || new Monster()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
+}
+
+testnestedflatbuffer(index: number):number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 30);
+ return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
+}
+
+testnestedflatbufferLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 30);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+testnestedflatbufferArray():Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 30);
+ 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;
+}
+
+testempty(obj?:Stat):Stat|null {
+ const offset = this.bb!.__offset(this.bb_pos, 32);
+ return offset ? (obj || new Stat()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
+}
+
+testbool():boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 34);
+ return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
+}
+
+mutate_testbool(value:boolean):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 34);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt8(this.bb_pos + offset, +value);
+ return true;
+}
+
+testhashs32Fnv1():number {
+ const offset = this.bb!.__offset(this.bb_pos, 36);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
+}
+
+mutate_testhashs32_fnv1(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 36);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt32(this.bb_pos + offset, value);
+ return true;
+}
+
+testhashu32Fnv1():number {
+ const offset = this.bb!.__offset(this.bb_pos, 38);
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
+}
+
+mutate_testhashu32_fnv1(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 38);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint32(this.bb_pos + offset, value);
+ return true;
+}
+
+testhashs64Fnv1():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 40);
+ return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_testhashs64_fnv1(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 40);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt64(this.bb_pos + offset, value);
+ return true;
+}
+
+testhashu64Fnv1():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 42);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_testhashu64_fnv1(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 42);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint64(this.bb_pos + offset, value);
+ return true;
+}
+
+testhashs32Fnv1a():number {
+ const offset = this.bb!.__offset(this.bb_pos, 44);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
+}
+
+mutate_testhashs32_fnv1a(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 44);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt32(this.bb_pos + offset, value);
+ return true;
+}
+
+testhashu32Fnv1a():number {
+ const offset = this.bb!.__offset(this.bb_pos, 46);
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
+}
+
+mutate_testhashu32_fnv1a(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 46);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint32(this.bb_pos + offset, value);
+ return true;
+}
+
+testhashs64Fnv1a():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 48);
+ return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_testhashs64_fnv1a(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 48);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt64(this.bb_pos + offset, value);
+ return true;
+}
+
+testhashu64Fnv1a():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 50);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_testhashu64_fnv1a(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 50);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint64(this.bb_pos + offset, value);
+ return true;
+}
+
+testarrayofbools(index: number):boolean|null {
+ const offset = this.bb!.__offset(this.bb_pos, 52);
+ return offset ? !!this.bb!.readInt8(this.bb!.__vector(this.bb_pos + offset) + index) : false;
+}
+
+testarrayofboolsLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 52);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+testarrayofboolsArray():Int8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 52);
+ return offset ? new Int8Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
+}
+
+testf():number {
+ const offset = this.bb!.__offset(this.bb_pos, 54);
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 3.14159;
+}
+
+mutate_testf(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 54);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeFloat32(this.bb_pos + offset, value);
+ return true;
+}
+
+testf2():number {
+ const offset = this.bb!.__offset(this.bb_pos, 56);
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 3.0;
+}
+
+mutate_testf2(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 56);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeFloat32(this.bb_pos + offset, value);
+ return true;
+}
+
+testf3():number {
+ const offset = this.bb!.__offset(this.bb_pos, 58);
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 0.0;
+}
+
+mutate_testf3(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 58);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeFloat32(this.bb_pos + offset, value);
+ return true;
+}
+
+testarrayofstring2(index: number):string
+testarrayofstring2(index: number,optionalEncoding:flatbuffers.Encoding):string|Uint8Array
+testarrayofstring2(index: number,optionalEncoding?:any):string|Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 60);
+ return offset ? this.bb!.__string(this.bb!.__vector(this.bb_pos + offset) + index * 4, optionalEncoding) : null;
+}
+
+testarrayofstring2Length():number {
+ const offset = this.bb!.__offset(this.bb_pos, 60);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+testarrayofsortedstruct(index: number, obj?:Ability):Ability|null {
+ const offset = this.bb!.__offset(this.bb_pos, 62);
+ return offset ? (obj || new Ability()).__init(this.bb!.__vector(this.bb_pos + offset) + index * 8, this.bb!) : null;
+}
+
+testarrayofsortedstructLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 62);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+flex(index: number):number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 64);
+ return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
+}
+
+flexLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 64);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+flexArray():Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 64);
+ 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;
+}
+
+test5(index: number, obj?:Test):Test|null {
+ const offset = this.bb!.__offset(this.bb_pos, 66);
+ return offset ? (obj || new Test()).__init(this.bb!.__vector(this.bb_pos + offset) + index * 4, this.bb!) : null;
+}
+
+test5Length():number {
+ const offset = this.bb!.__offset(this.bb_pos, 66);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+vectorOfLongs(index: number):flatbuffers.Long|null {
+ const offset = this.bb!.__offset(this.bb_pos, 68);
+ return offset ? this.bb!.readInt64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
+}
+
+vectorOfLongsLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 68);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+vectorOfDoubles(index: number):number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 70);
+ return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
+}
+
+vectorOfDoublesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 70);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+vectorOfDoublesArray():Float64Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 70);
+ return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
+}
+
+parentNamespaceTest(obj?:InParentNamespace):InParentNamespace|null {
+ const offset = this.bb!.__offset(this.bb_pos, 72);
+ return offset ? (obj || new InParentNamespace()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
+}
+
+vectorOfReferrables(index: number, obj?:Referrable):Referrable|null {
+ const offset = this.bb!.__offset(this.bb_pos, 74);
+ return offset ? (obj || new Referrable()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
+}
+
+vectorOfReferrablesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 74);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+singleWeakReference():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 76);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_single_weak_reference(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 76);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint64(this.bb_pos + offset, value);
+ return true;
+}
+
+vectorOfWeakReferences(index: number):flatbuffers.Long|null {
+ const offset = this.bb!.__offset(this.bb_pos, 78);
+ return offset ? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
+}
+
+vectorOfWeakReferencesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 78);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+vectorOfStrongReferrables(index: number, obj?:Referrable):Referrable|null {
+ const offset = this.bb!.__offset(this.bb_pos, 80);
+ return offset ? (obj || new Referrable()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
+}
+
+vectorOfStrongReferrablesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 80);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+coOwningReference():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 82);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_co_owning_reference(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 82);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint64(this.bb_pos + offset, value);
+ return true;
+}
+
+vectorOfCoOwningReferences(index: number):flatbuffers.Long|null {
+ const offset = this.bb!.__offset(this.bb_pos, 84);
+ return offset ? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
+}
+
+vectorOfCoOwningReferencesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 84);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+nonOwningReference():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 86);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_non_owning_reference(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 86);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint64(this.bb_pos + offset, value);
+ return true;
+}
+
+vectorOfNonOwningReferences(index: number):flatbuffers.Long|null {
+ const offset = this.bb!.__offset(this.bb_pos, 88);
+ return offset ? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
+}
+
+vectorOfNonOwningReferencesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 88);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+anyUniqueType():AnyUniqueAliases {
+ const offset = this.bb!.__offset(this.bb_pos, 90);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : AnyUniqueAliases.NONE;
+}
+
+anyUnique<T extends flatbuffers.Table>(obj:any):any|null {
+ const offset = this.bb!.__offset(this.bb_pos, 92);
+ return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
+}
+
+anyAmbiguousType():AnyAmbiguousAliases {
+ const offset = this.bb!.__offset(this.bb_pos, 94);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : AnyAmbiguousAliases.NONE;
+}
+
+anyAmbiguous<T extends flatbuffers.Table>(obj:any):any|null {
+ const offset = this.bb!.__offset(this.bb_pos, 96);
+ return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
+}
+
+vectorOfEnums(index: number):Color|null {
+ const offset = this.bb!.__offset(this.bb_pos, 98);
+ return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
+}
+
+vectorOfEnumsLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 98);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+vectorOfEnumsArray():Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 98);
+ 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;
+}
+
+signedEnum():Race {
+ const offset = this.bb!.__offset(this.bb_pos, 100);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : Race.None;
+}
+
+mutate_signed_enum(value:Race):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 100);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt8(this.bb_pos + offset, value);
+ return true;
+}
+
+testrequirednestedflatbuffer(index: number):number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 102);
+ return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
+}
+
+testrequirednestedflatbufferLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 102);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+testrequirednestedflatbufferArray():Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 102);
+ 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;
+}
+
+scalarKeySortedTables(index: number, obj?:Stat):Stat|null {
+ const offset = this.bb!.__offset(this.bb_pos, 104);
+ return offset ? (obj || new Stat()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
+}
+
+scalarKeySortedTablesLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 104);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+static startMonster(builder:flatbuffers.Builder) {
+ builder.startObject(51);
+}
+
+static addPos(builder:flatbuffers.Builder, posOffset:flatbuffers.Offset) {
+ builder.addFieldStruct(0, posOffset, 0);
+}
+
+static addMana(builder:flatbuffers.Builder, mana:number) {
+ builder.addFieldInt16(1, mana, 150);
+}
+
+static addHp(builder:flatbuffers.Builder, hp:number) {
+ builder.addFieldInt16(2, hp, 100);
+}
+
+static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(3, nameOffset, 0);
+}
+
+static addInventory(builder:flatbuffers.Builder, inventoryOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(5, inventoryOffset, 0);
+}
+
+static createInventoryVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):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 startInventoryVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addColor(builder:flatbuffers.Builder, color:Color) {
+ builder.addFieldInt8(6, color, Color.Blue);
+}
+
+static addTestType(builder:flatbuffers.Builder, testType:Any) {
+ builder.addFieldInt8(7, testType, Any.NONE);
+}
+
+static addTest(builder:flatbuffers.Builder, testOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(8, testOffset, 0);
+}
+
+static addTest4(builder:flatbuffers.Builder, test4Offset:flatbuffers.Offset) {
+ builder.addFieldOffset(9, test4Offset, 0);
+}
+
+static startTest4Vector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 2);
+}
+
+static addTestarrayofstring(builder:flatbuffers.Builder, testarrayofstringOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(10, testarrayofstringOffset, 0);
+}
+
+static createTestarrayofstringVector(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 startTestarrayofstringVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 4);
+}
+
+static addTestarrayoftables(builder:flatbuffers.Builder, testarrayoftablesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(11, testarrayoftablesOffset, 0);
+}
+
+static createTestarrayoftablesVector(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 startTestarrayoftablesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 4);
+}
+
+static addEnemy(builder:flatbuffers.Builder, enemyOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(12, enemyOffset, 0);
+}
+
+static addTestnestedflatbuffer(builder:flatbuffers.Builder, testnestedflatbufferOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(13, testnestedflatbufferOffset, 0);
+}
+
+static createTestnestedflatbufferVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):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 startTestnestedflatbufferVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addTestempty(builder:flatbuffers.Builder, testemptyOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(14, testemptyOffset, 0);
+}
+
+static addTestbool(builder:flatbuffers.Builder, testbool:boolean) {
+ builder.addFieldInt8(15, +testbool, +false);
+}
+
+static addTesthashs32Fnv1(builder:flatbuffers.Builder, testhashs32Fnv1:number) {
+ builder.addFieldInt32(16, testhashs32Fnv1, 0);
+}
+
+static addTesthashu32Fnv1(builder:flatbuffers.Builder, testhashu32Fnv1:number) {
+ builder.addFieldInt32(17, testhashu32Fnv1, 0);
+}
+
+static addTesthashs64Fnv1(builder:flatbuffers.Builder, testhashs64Fnv1:flatbuffers.Long) {
+ builder.addFieldInt64(18, testhashs64Fnv1, builder.createLong(0, 0));
+}
+
+static addTesthashu64Fnv1(builder:flatbuffers.Builder, testhashu64Fnv1:flatbuffers.Long) {
+ builder.addFieldInt64(19, testhashu64Fnv1, builder.createLong(0, 0));
+}
+
+static addTesthashs32Fnv1a(builder:flatbuffers.Builder, testhashs32Fnv1a:number) {
+ builder.addFieldInt32(20, testhashs32Fnv1a, 0);
+}
+
+static addTesthashu32Fnv1a(builder:flatbuffers.Builder, testhashu32Fnv1a:number) {
+ builder.addFieldInt32(21, testhashu32Fnv1a, 0);
+}
+
+static addTesthashs64Fnv1a(builder:flatbuffers.Builder, testhashs64Fnv1a:flatbuffers.Long) {
+ builder.addFieldInt64(22, testhashs64Fnv1a, builder.createLong(0, 0));
+}
+
+static addTesthashu64Fnv1a(builder:flatbuffers.Builder, testhashu64Fnv1a:flatbuffers.Long) {
+ builder.addFieldInt64(23, testhashu64Fnv1a, builder.createLong(0, 0));
+}
+
+static addTestarrayofbools(builder:flatbuffers.Builder, testarrayofboolsOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(24, testarrayofboolsOffset, 0);
+}
+
+static createTestarrayofboolsVector(builder:flatbuffers.Builder, data:boolean[]):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 startTestarrayofboolsVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addTestf(builder:flatbuffers.Builder, testf:number) {
+ builder.addFieldFloat32(25, testf, 3.14159);
+}
+
+static addTestf2(builder:flatbuffers.Builder, testf2:number) {
+ builder.addFieldFloat32(26, testf2, 3.0);
+}
+
+static addTestf3(builder:flatbuffers.Builder, testf3:number) {
+ builder.addFieldFloat32(27, testf3, 0.0);
+}
+
+static addTestarrayofstring2(builder:flatbuffers.Builder, testarrayofstring2Offset:flatbuffers.Offset) {
+ builder.addFieldOffset(28, testarrayofstring2Offset, 0);
+}
+
+static createTestarrayofstring2Vector(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 startTestarrayofstring2Vector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 4);
+}
+
+static addTestarrayofsortedstruct(builder:flatbuffers.Builder, testarrayofsortedstructOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(29, testarrayofsortedstructOffset, 0);
+}
+
+static startTestarrayofsortedstructVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(8, numElems, 4);
+}
+
+static addFlex(builder:flatbuffers.Builder, flexOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(30, flexOffset, 0);
+}
+
+static createFlexVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):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 startFlexVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addTest5(builder:flatbuffers.Builder, test5Offset:flatbuffers.Offset) {
+ builder.addFieldOffset(31, test5Offset, 0);
+}
+
+static startTest5Vector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 2);
+}
+
+static addVectorOfLongs(builder:flatbuffers.Builder, vectorOfLongsOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(32, vectorOfLongsOffset, 0);
+}
+
+static createVectorOfLongsVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
+ builder.startVector(8, data.length, 8);
+ for (let i = data.length - 1; i >= 0; i--) {
+ builder.addInt64(data[i]!);
+ }
+ return builder.endVector();
+}
+
+static startVectorOfLongsVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(8, numElems, 8);
+}
+
+static addVectorOfDoubles(builder:flatbuffers.Builder, vectorOfDoublesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(33, vectorOfDoublesOffset, 0);
+}
+
+static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
+/**
+ * @deprecated This Uint8Array overload will be removed in the future.
+ */
+static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
+static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
+ builder.startVector(8, data.length, 8);
+ for (let i = data.length - 1; i >= 0; i--) {
+ builder.addFloat64(data[i]!);
+ }
+ return builder.endVector();
+}
+
+static startVectorOfDoublesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(8, numElems, 8);
+}
+
+static addParentNamespaceTest(builder:flatbuffers.Builder, parentNamespaceTestOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(34, parentNamespaceTestOffset, 0);
+}
+
+static addVectorOfReferrables(builder:flatbuffers.Builder, vectorOfReferrablesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(35, vectorOfReferrablesOffset, 0);
+}
+
+static createVectorOfReferrablesVector(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 startVectorOfReferrablesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 4);
+}
+
+static addSingleWeakReference(builder:flatbuffers.Builder, singleWeakReference:flatbuffers.Long) {
+ builder.addFieldInt64(36, singleWeakReference, builder.createLong(0, 0));
+}
+
+static addVectorOfWeakReferences(builder:flatbuffers.Builder, vectorOfWeakReferencesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(37, vectorOfWeakReferencesOffset, 0);
+}
+
+static createVectorOfWeakReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
+ builder.startVector(8, data.length, 8);
+ for (let i = data.length - 1; i >= 0; i--) {
+ builder.addInt64(data[i]!);
+ }
+ return builder.endVector();
+}
+
+static startVectorOfWeakReferencesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(8, numElems, 8);
+}
+
+static addVectorOfStrongReferrables(builder:flatbuffers.Builder, vectorOfStrongReferrablesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(38, vectorOfStrongReferrablesOffset, 0);
+}
+
+static createVectorOfStrongReferrablesVector(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 startVectorOfStrongReferrablesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 4);
+}
+
+static addCoOwningReference(builder:flatbuffers.Builder, coOwningReference:flatbuffers.Long) {
+ builder.addFieldInt64(39, coOwningReference, builder.createLong(0, 0));
+}
+
+static addVectorOfCoOwningReferences(builder:flatbuffers.Builder, vectorOfCoOwningReferencesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(40, vectorOfCoOwningReferencesOffset, 0);
+}
+
+static createVectorOfCoOwningReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
+ builder.startVector(8, data.length, 8);
+ for (let i = data.length - 1; i >= 0; i--) {
+ builder.addInt64(data[i]!);
+ }
+ return builder.endVector();
+}
+
+static startVectorOfCoOwningReferencesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(8, numElems, 8);
+}
+
+static addNonOwningReference(builder:flatbuffers.Builder, nonOwningReference:flatbuffers.Long) {
+ builder.addFieldInt64(41, nonOwningReference, builder.createLong(0, 0));
+}
+
+static addVectorOfNonOwningReferences(builder:flatbuffers.Builder, vectorOfNonOwningReferencesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(42, vectorOfNonOwningReferencesOffset, 0);
+}
+
+static createVectorOfNonOwningReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
+ builder.startVector(8, data.length, 8);
+ for (let i = data.length - 1; i >= 0; i--) {
+ builder.addInt64(data[i]!);
+ }
+ return builder.endVector();
+}
+
+static startVectorOfNonOwningReferencesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(8, numElems, 8);
+}
+
+static addAnyUniqueType(builder:flatbuffers.Builder, anyUniqueType:AnyUniqueAliases) {
+ builder.addFieldInt8(43, anyUniqueType, AnyUniqueAliases.NONE);
+}
+
+static addAnyUnique(builder:flatbuffers.Builder, anyUniqueOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(44, anyUniqueOffset, 0);
+}
+
+static addAnyAmbiguousType(builder:flatbuffers.Builder, anyAmbiguousType:AnyAmbiguousAliases) {
+ builder.addFieldInt8(45, anyAmbiguousType, AnyAmbiguousAliases.NONE);
+}
+
+static addAnyAmbiguous(builder:flatbuffers.Builder, anyAmbiguousOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(46, anyAmbiguousOffset, 0);
+}
+
+static addVectorOfEnums(builder:flatbuffers.Builder, vectorOfEnumsOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(47, vectorOfEnumsOffset, 0);
+}
+
+static createVectorOfEnumsVector(builder:flatbuffers.Builder, data:Color[]):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 startVectorOfEnumsVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addSignedEnum(builder:flatbuffers.Builder, signedEnum:Race) {
+ builder.addFieldInt8(48, signedEnum, Race.None);
+}
+
+static addTestrequirednestedflatbuffer(builder:flatbuffers.Builder, testrequirednestedflatbufferOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(49, testrequirednestedflatbufferOffset, 0);
+}
+
+static createTestrequirednestedflatbufferVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):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 startTestrequirednestedflatbufferVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addScalarKeySortedTables(builder:flatbuffers.Builder, scalarKeySortedTablesOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(50, scalarKeySortedTablesOffset, 0);
+}
+
+static createScalarKeySortedTablesVector(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 startScalarKeySortedTablesVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 4);
+}
+
+static endMonster(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ builder.requiredField(offset, 10) // name
+ return offset;
+}
+
+static finishMonsterBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
+ builder.finish(offset, 'MONS');
+}
+
+static finishSizePrefixedMonsterBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
+ builder.finish(offset, 'MONS', true);
+}
+
+
+serialize():Uint8Array {
+ return this.bb!.bytes();
+}
+
+static deserialize(buffer: Uint8Array):Monster {
+ return Monster.getRootAsMonster(new flatbuffers.ByteBuffer(buffer))
+}
+
+unpack(): MonsterT {
+ return new MonsterT(
+ (this.pos() !== null ? this.pos()!.unpack() : null),
+ this.mana(),
+ this.hp(),
+ this.name(),
+ this.bb!.createScalarList(this.inventory.bind(this), this.inventoryLength()),
+ this.color(),
+ this.testType(),
+ (() => {
+ let temp = unionToAny(this.testType(), this.test.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })(),
+ this.bb!.createObjList(this.test4.bind(this), this.test4Length()),
+ this.bb!.createScalarList(this.testarrayofstring.bind(this), this.testarrayofstringLength()),
+ this.bb!.createObjList(this.testarrayoftables.bind(this), this.testarrayoftablesLength()),
+ (this.enemy() !== null ? this.enemy()!.unpack() : null),
+ this.bb!.createScalarList(this.testnestedflatbuffer.bind(this), this.testnestedflatbufferLength()),
+ (this.testempty() !== null ? this.testempty()!.unpack() : null),
+ this.testbool(),
+ this.testhashs32Fnv1(),
+ this.testhashu32Fnv1(),
+ this.testhashs64Fnv1(),
+ this.testhashu64Fnv1(),
+ this.testhashs32Fnv1a(),
+ this.testhashu32Fnv1a(),
+ this.testhashs64Fnv1a(),
+ this.testhashu64Fnv1a(),
+ this.bb!.createScalarList(this.testarrayofbools.bind(this), this.testarrayofboolsLength()),
+ this.testf(),
+ this.testf2(),
+ this.testf3(),
+ this.bb!.createScalarList(this.testarrayofstring2.bind(this), this.testarrayofstring2Length()),
+ this.bb!.createObjList(this.testarrayofsortedstruct.bind(this), this.testarrayofsortedstructLength()),
+ this.bb!.createScalarList(this.flex.bind(this), this.flexLength()),
+ this.bb!.createObjList(this.test5.bind(this), this.test5Length()),
+ this.bb!.createScalarList(this.vectorOfLongs.bind(this), this.vectorOfLongsLength()),
+ this.bb!.createScalarList(this.vectorOfDoubles.bind(this), this.vectorOfDoublesLength()),
+ (this.parentNamespaceTest() !== null ? this.parentNamespaceTest()!.unpack() : null),
+ this.bb!.createObjList(this.vectorOfReferrables.bind(this), this.vectorOfReferrablesLength()),
+ this.singleWeakReference(),
+ this.bb!.createScalarList(this.vectorOfWeakReferences.bind(this), this.vectorOfWeakReferencesLength()),
+ this.bb!.createObjList(this.vectorOfStrongReferrables.bind(this), this.vectorOfStrongReferrablesLength()),
+ this.coOwningReference(),
+ this.bb!.createScalarList(this.vectorOfCoOwningReferences.bind(this), this.vectorOfCoOwningReferencesLength()),
+ this.nonOwningReference(),
+ this.bb!.createScalarList(this.vectorOfNonOwningReferences.bind(this), this.vectorOfNonOwningReferencesLength()),
+ this.anyUniqueType(),
+ (() => {
+ let temp = unionToAnyUniqueAliases(this.anyUniqueType(), this.anyUnique.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })(),
+ this.anyAmbiguousType(),
+ (() => {
+ let temp = unionToAnyAmbiguousAliases(this.anyAmbiguousType(), this.anyAmbiguous.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })(),
+ this.bb!.createScalarList(this.vectorOfEnums.bind(this), this.vectorOfEnumsLength()),
+ this.signedEnum(),
+ this.bb!.createScalarList(this.testrequirednestedflatbuffer.bind(this), this.testrequirednestedflatbufferLength()),
+ this.bb!.createObjList(this.scalarKeySortedTables.bind(this), this.scalarKeySortedTablesLength())
+ );
+}
+
+
+unpackTo(_o: MonsterT): void {
+ _o.pos = (this.pos() !== null ? this.pos()!.unpack() : null);
+ _o.mana = this.mana();
+ _o.hp = this.hp();
+ _o.name = this.name();
+ _o.inventory = this.bb!.createScalarList(this.inventory.bind(this), this.inventoryLength());
+ _o.color = this.color();
+ _o.testType = this.testType();
+ _o.test = (() => {
+ let temp = unionToAny(this.testType(), this.test.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })();
+ _o.test4 = this.bb!.createObjList(this.test4.bind(this), this.test4Length());
+ _o.testarrayofstring = this.bb!.createScalarList(this.testarrayofstring.bind(this), this.testarrayofstringLength());
+ _o.testarrayoftables = this.bb!.createObjList(this.testarrayoftables.bind(this), this.testarrayoftablesLength());
+ _o.enemy = (this.enemy() !== null ? this.enemy()!.unpack() : null);
+ _o.testnestedflatbuffer = this.bb!.createScalarList(this.testnestedflatbuffer.bind(this), this.testnestedflatbufferLength());
+ _o.testempty = (this.testempty() !== null ? this.testempty()!.unpack() : null);
+ _o.testbool = this.testbool();
+ _o.testhashs32Fnv1 = this.testhashs32Fnv1();
+ _o.testhashu32Fnv1 = this.testhashu32Fnv1();
+ _o.testhashs64Fnv1 = this.testhashs64Fnv1();
+ _o.testhashu64Fnv1 = this.testhashu64Fnv1();
+ _o.testhashs32Fnv1a = this.testhashs32Fnv1a();
+ _o.testhashu32Fnv1a = this.testhashu32Fnv1a();
+ _o.testhashs64Fnv1a = this.testhashs64Fnv1a();
+ _o.testhashu64Fnv1a = this.testhashu64Fnv1a();
+ _o.testarrayofbools = this.bb!.createScalarList(this.testarrayofbools.bind(this), this.testarrayofboolsLength());
+ _o.testf = this.testf();
+ _o.testf2 = this.testf2();
+ _o.testf3 = this.testf3();
+ _o.testarrayofstring2 = this.bb!.createScalarList(this.testarrayofstring2.bind(this), this.testarrayofstring2Length());
+ _o.testarrayofsortedstruct = this.bb!.createObjList(this.testarrayofsortedstruct.bind(this), this.testarrayofsortedstructLength());
+ _o.flex = this.bb!.createScalarList(this.flex.bind(this), this.flexLength());
+ _o.test5 = this.bb!.createObjList(this.test5.bind(this), this.test5Length());
+ _o.vectorOfLongs = this.bb!.createScalarList(this.vectorOfLongs.bind(this), this.vectorOfLongsLength());
+ _o.vectorOfDoubles = this.bb!.createScalarList(this.vectorOfDoubles.bind(this), this.vectorOfDoublesLength());
+ _o.parentNamespaceTest = (this.parentNamespaceTest() !== null ? this.parentNamespaceTest()!.unpack() : null);
+ _o.vectorOfReferrables = this.bb!.createObjList(this.vectorOfReferrables.bind(this), this.vectorOfReferrablesLength());
+ _o.singleWeakReference = this.singleWeakReference();
+ _o.vectorOfWeakReferences = this.bb!.createScalarList(this.vectorOfWeakReferences.bind(this), this.vectorOfWeakReferencesLength());
+ _o.vectorOfStrongReferrables = this.bb!.createObjList(this.vectorOfStrongReferrables.bind(this), this.vectorOfStrongReferrablesLength());
+ _o.coOwningReference = this.coOwningReference();
+ _o.vectorOfCoOwningReferences = this.bb!.createScalarList(this.vectorOfCoOwningReferences.bind(this), this.vectorOfCoOwningReferencesLength());
+ _o.nonOwningReference = this.nonOwningReference();
+ _o.vectorOfNonOwningReferences = this.bb!.createScalarList(this.vectorOfNonOwningReferences.bind(this), this.vectorOfNonOwningReferencesLength());
+ _o.anyUniqueType = this.anyUniqueType();
+ _o.anyUnique = (() => {
+ let temp = unionToAnyUniqueAliases(this.anyUniqueType(), this.anyUnique.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })();
+ _o.anyAmbiguousType = this.anyAmbiguousType();
+ _o.anyAmbiguous = (() => {
+ let temp = unionToAnyAmbiguousAliases(this.anyAmbiguousType(), this.anyAmbiguous.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })();
+ _o.vectorOfEnums = this.bb!.createScalarList(this.vectorOfEnums.bind(this), this.vectorOfEnumsLength());
+ _o.signedEnum = this.signedEnum();
+ _o.testrequirednestedflatbuffer = this.bb!.createScalarList(this.testrequirednestedflatbuffer.bind(this), this.testrequirednestedflatbufferLength());
+ _o.scalarKeySortedTables = this.bb!.createObjList(this.scalarKeySortedTables.bind(this), this.scalarKeySortedTablesLength());
+}
+}
+
+export class MonsterT {
+constructor(
+ public pos: Vec3T|null = null,
+ public mana: number = 150,
+ public hp: number = 100,
+ public name: string|Uint8Array|null = null,
+ public inventory: (number)[] = [],
+ public color: Color = Color.Blue,
+ public testType: Any = Any.NONE,
+ public test: MonsterT|MyGameExample2MonsterT|TestSimpleTableWithEnumT|null = null,
+ public test4: (TestT)[] = [],
+ public testarrayofstring: (string)[] = [],
+ public testarrayoftables: (MonsterT)[] = [],
+ public enemy: MonsterT|null = null,
+ public testnestedflatbuffer: (number)[] = [],
+ public testempty: StatT|null = null,
+ public testbool: boolean = false,
+ public testhashs32Fnv1: number = 0,
+ public testhashu32Fnv1: number = 0,
+ public testhashs64Fnv1: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public testhashu64Fnv1: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public testhashs32Fnv1a: number = 0,
+ public testhashu32Fnv1a: number = 0,
+ public testhashs64Fnv1a: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public testhashu64Fnv1a: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public testarrayofbools: (boolean)[] = [],
+ public testf: number = 3.14159,
+ public testf2: number = 3.0,
+ public testf3: number = 0.0,
+ public testarrayofstring2: (string)[] = [],
+ public testarrayofsortedstruct: (AbilityT)[] = [],
+ public flex: (number)[] = [],
+ public test5: (TestT)[] = [],
+ public vectorOfLongs: (flatbuffers.Long)[] = [],
+ public vectorOfDoubles: (number)[] = [],
+ public parentNamespaceTest: InParentNamespaceT|null = null,
+ public vectorOfReferrables: (ReferrableT)[] = [],
+ public singleWeakReference: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public vectorOfWeakReferences: (flatbuffers.Long)[] = [],
+ public vectorOfStrongReferrables: (ReferrableT)[] = [],
+ public coOwningReference: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public vectorOfCoOwningReferences: (flatbuffers.Long)[] = [],
+ public nonOwningReference: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public vectorOfNonOwningReferences: (flatbuffers.Long)[] = [],
+ public anyUniqueType: AnyUniqueAliases = AnyUniqueAliases.NONE,
+ public anyUnique: MonsterT|MyGameExample2MonsterT|TestSimpleTableWithEnumT|null = null,
+ public anyAmbiguousType: AnyAmbiguousAliases = AnyAmbiguousAliases.NONE,
+ public anyAmbiguous: MonsterT|null = null,
+ public vectorOfEnums: (Color)[] = [],
+ public signedEnum: Race = Race.None,
+ public testrequirednestedflatbuffer: (number)[] = [],
+ public scalarKeySortedTables: (StatT)[] = []
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ const name = (this.name !== null ? builder.createString(this.name!) : 0);
+ const inventory = Monster.createInventoryVector(builder, this.inventory);
+ const test = builder.createObjectOffset(this.test);
+ const test4 = builder.createStructOffsetList(this.test4, Monster.startTest4Vector);
+ const testarrayofstring = Monster.createTestarrayofstringVector(builder, builder.createObjectOffsetList(this.testarrayofstring));
+ const testarrayoftables = Monster.createTestarrayoftablesVector(builder, builder.createObjectOffsetList(this.testarrayoftables));
+ const testnestedflatbuffer = Monster.createTestnestedflatbufferVector(builder, this.testnestedflatbuffer);
+ const testarrayofbools = Monster.createTestarrayofboolsVector(builder, this.testarrayofbools);
+ const testarrayofstring2 = Monster.createTestarrayofstring2Vector(builder, builder.createObjectOffsetList(this.testarrayofstring2));
+ const testarrayofsortedstruct = builder.createStructOffsetList(this.testarrayofsortedstruct, Monster.startTestarrayofsortedstructVector);
+ const flex = Monster.createFlexVector(builder, this.flex);
+ const test5 = builder.createStructOffsetList(this.test5, Monster.startTest5Vector);
+ const vectorOfLongs = Monster.createVectorOfLongsVector(builder, this.vectorOfLongs);
+ const vectorOfDoubles = Monster.createVectorOfDoublesVector(builder, this.vectorOfDoubles);
+ const vectorOfReferrables = Monster.createVectorOfReferrablesVector(builder, builder.createObjectOffsetList(this.vectorOfReferrables));
+ const vectorOfWeakReferences = Monster.createVectorOfWeakReferencesVector(builder, this.vectorOfWeakReferences);
+ const vectorOfStrongReferrables = Monster.createVectorOfStrongReferrablesVector(builder, builder.createObjectOffsetList(this.vectorOfStrongReferrables));
+ const vectorOfCoOwningReferences = Monster.createVectorOfCoOwningReferencesVector(builder, this.vectorOfCoOwningReferences);
+ const vectorOfNonOwningReferences = Monster.createVectorOfNonOwningReferencesVector(builder, this.vectorOfNonOwningReferences);
+ const anyUnique = builder.createObjectOffset(this.anyUnique);
+ const anyAmbiguous = builder.createObjectOffset(this.anyAmbiguous);
+ const vectorOfEnums = Monster.createVectorOfEnumsVector(builder, this.vectorOfEnums);
+ const testrequirednestedflatbuffer = Monster.createTestrequirednestedflatbufferVector(builder, this.testrequirednestedflatbuffer);
+ const scalarKeySortedTables = Monster.createScalarKeySortedTablesVector(builder, builder.createObjectOffsetList(this.scalarKeySortedTables));
+
+ Monster.startMonster(builder);
+ Monster.addPos(builder, (this.pos !== null ? this.pos!.pack(builder) : 0));
+ Monster.addMana(builder, this.mana);
+ Monster.addHp(builder, this.hp);
+ Monster.addName(builder, name);
+ Monster.addInventory(builder, inventory);
+ Monster.addColor(builder, this.color);
+ Monster.addTestType(builder, this.testType);
+ Monster.addTest(builder, test);
+ Monster.addTest4(builder, test4);
+ Monster.addTestarrayofstring(builder, testarrayofstring);
+ Monster.addTestarrayoftables(builder, testarrayoftables);
+ Monster.addEnemy(builder, (this.enemy !== null ? this.enemy!.pack(builder) : 0));
+ Monster.addTestnestedflatbuffer(builder, testnestedflatbuffer);
+ Monster.addTestempty(builder, (this.testempty !== null ? this.testempty!.pack(builder) : 0));
+ Monster.addTestbool(builder, this.testbool);
+ Monster.addTesthashs32Fnv1(builder, this.testhashs32Fnv1);
+ Monster.addTesthashu32Fnv1(builder, this.testhashu32Fnv1);
+ Monster.addTesthashs64Fnv1(builder, this.testhashs64Fnv1);
+ Monster.addTesthashu64Fnv1(builder, this.testhashu64Fnv1);
+ Monster.addTesthashs32Fnv1a(builder, this.testhashs32Fnv1a);
+ Monster.addTesthashu32Fnv1a(builder, this.testhashu32Fnv1a);
+ Monster.addTesthashs64Fnv1a(builder, this.testhashs64Fnv1a);
+ Monster.addTesthashu64Fnv1a(builder, this.testhashu64Fnv1a);
+ Monster.addTestarrayofbools(builder, testarrayofbools);
+ Monster.addTestf(builder, this.testf);
+ Monster.addTestf2(builder, this.testf2);
+ Monster.addTestf3(builder, this.testf3);
+ Monster.addTestarrayofstring2(builder, testarrayofstring2);
+ Monster.addTestarrayofsortedstruct(builder, testarrayofsortedstruct);
+ Monster.addFlex(builder, flex);
+ Monster.addTest5(builder, test5);
+ Monster.addVectorOfLongs(builder, vectorOfLongs);
+ Monster.addVectorOfDoubles(builder, vectorOfDoubles);
+ Monster.addParentNamespaceTest(builder, (this.parentNamespaceTest !== null ? this.parentNamespaceTest!.pack(builder) : 0));
+ Monster.addVectorOfReferrables(builder, vectorOfReferrables);
+ Monster.addSingleWeakReference(builder, this.singleWeakReference);
+ Monster.addVectorOfWeakReferences(builder, vectorOfWeakReferences);
+ Monster.addVectorOfStrongReferrables(builder, vectorOfStrongReferrables);
+ Monster.addCoOwningReference(builder, this.coOwningReference);
+ Monster.addVectorOfCoOwningReferences(builder, vectorOfCoOwningReferences);
+ Monster.addNonOwningReference(builder, this.nonOwningReference);
+ Monster.addVectorOfNonOwningReferences(builder, vectorOfNonOwningReferences);
+ Monster.addAnyUniqueType(builder, this.anyUniqueType);
+ Monster.addAnyUnique(builder, anyUnique);
+ Monster.addAnyAmbiguousType(builder, this.anyAmbiguousType);
+ Monster.addAnyAmbiguous(builder, anyAmbiguous);
+ Monster.addVectorOfEnums(builder, vectorOfEnums);
+ Monster.addSignedEnum(builder, this.signedEnum);
+ Monster.addTestrequirednestedflatbuffer(builder, testrequirednestedflatbuffer);
+ Monster.addScalarKeySortedTables(builder, scalarKeySortedTables);
+
+ return Monster.endMonster(builder);
+}
+}
diff --git a/tests/my-game/example/race.ts b/tests/my-game/example/race.ts
new file mode 100644
index 00000000..06ca128b
--- /dev/null
+++ b/tests/my-game/example/race.ts
@@ -0,0 +1,9 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+export enum Race{
+ None = -1,
+ Human = 0,
+ Dwarf = 1,
+ Elf = 2
+}
+
diff --git a/tests/my-game/example/referrable.ts b/tests/my-game/example/referrable.ts
new file mode 100644
index 00000000..05e2a890
--- /dev/null
+++ b/tests/my-game/example/referrable.ts
@@ -0,0 +1,91 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class Referrable {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Referrable {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsReferrable(bb:flatbuffers.ByteBuffer, obj?:Referrable):Referrable {
+ return (obj || new Referrable()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsReferrable(bb:flatbuffers.ByteBuffer, obj?:Referrable):Referrable {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new Referrable()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+id():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_id(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint64(this.bb_pos + offset, value);
+ return true;
+}
+
+static startReferrable(builder:flatbuffers.Builder) {
+ builder.startObject(1);
+}
+
+static addId(builder:flatbuffers.Builder, id:flatbuffers.Long) {
+ builder.addFieldInt64(0, id, builder.createLong(0, 0));
+}
+
+static endReferrable(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createReferrable(builder:flatbuffers.Builder, id:flatbuffers.Long):flatbuffers.Offset {
+ Referrable.startReferrable(builder);
+ Referrable.addId(builder, id);
+ return Referrable.endReferrable(builder);
+}
+
+serialize():Uint8Array {
+ return this.bb!.bytes();
+}
+
+static deserialize(buffer: Uint8Array):Referrable {
+ return Referrable.getRootAsReferrable(new flatbuffers.ByteBuffer(buffer))
+}
+
+unpack(): ReferrableT {
+ return new ReferrableT(
+ this.id()
+ );
+}
+
+
+unpackTo(_o: ReferrableT): void {
+ _o.id = this.id();
+}
+}
+
+export class ReferrableT {
+constructor(
+ public id: flatbuffers.Long = flatbuffers.createLong(0, 0)
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return Referrable.createReferrable(builder,
+ this.id
+ );
+}
+}
diff --git a/tests/my-game/example/stat.ts b/tests/my-game/example/stat.ts
new file mode 100644
index 00000000..87361e0b
--- /dev/null
+++ b/tests/my-game/example/stat.ts
@@ -0,0 +1,134 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class Stat {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Stat {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsStat(bb:flatbuffers.ByteBuffer, obj?:Stat):Stat {
+ return (obj || new Stat()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsStat(bb:flatbuffers.ByteBuffer, obj?:Stat):Stat {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new Stat()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+id():string|null
+id(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
+id(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;
+}
+
+val():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+ return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_val(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt64(this.bb_pos + offset, value);
+ return true;
+}
+
+count():number {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ return offset ? this.bb!.readUint16(this.bb_pos + offset) : 0;
+}
+
+mutate_count(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint16(this.bb_pos + offset, value);
+ return true;
+}
+
+static startStat(builder:flatbuffers.Builder) {
+ builder.startObject(3);
+}
+
+static addId(builder:flatbuffers.Builder, idOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(0, idOffset, 0);
+}
+
+static addVal(builder:flatbuffers.Builder, val:flatbuffers.Long) {
+ builder.addFieldInt64(1, val, builder.createLong(0, 0));
+}
+
+static addCount(builder:flatbuffers.Builder, count:number) {
+ builder.addFieldInt16(2, count, 0);
+}
+
+static endStat(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createStat(builder:flatbuffers.Builder, idOffset:flatbuffers.Offset, val:flatbuffers.Long, count:number):flatbuffers.Offset {
+ Stat.startStat(builder);
+ Stat.addId(builder, idOffset);
+ Stat.addVal(builder, val);
+ Stat.addCount(builder, count);
+ return Stat.endStat(builder);
+}
+
+serialize():Uint8Array {
+ return this.bb!.bytes();
+}
+
+static deserialize(buffer: Uint8Array):Stat {
+ return Stat.getRootAsStat(new flatbuffers.ByteBuffer(buffer))
+}
+
+unpack(): StatT {
+ return new StatT(
+ this.id(),
+ this.val(),
+ this.count()
+ );
+}
+
+
+unpackTo(_o: StatT): void {
+ _o.id = this.id();
+ _o.val = this.val();
+ _o.count = this.count();
+}
+}
+
+export class StatT {
+constructor(
+ public id: string|Uint8Array|null = null,
+ public val: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public count: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ const id = (this.id !== null ? builder.createString(this.id!) : 0);
+
+ return Stat.createStat(builder,
+ id,
+ this.val,
+ this.count
+ );
+}
+}
diff --git a/tests/my-game/example/test-simple-table-with-enum.ts b/tests/my-game/example/test-simple-table-with-enum.ts
new file mode 100644
index 00000000..e8121b41
--- /dev/null
+++ b/tests/my-game/example/test-simple-table-with-enum.ts
@@ -0,0 +1,92 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { Color } from '../../my-game/example/color';
+
+
+export class TestSimpleTableWithEnum {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):TestSimpleTableWithEnum {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsTestSimpleTableWithEnum(bb:flatbuffers.ByteBuffer, obj?:TestSimpleTableWithEnum):TestSimpleTableWithEnum {
+ return (obj || new TestSimpleTableWithEnum()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsTestSimpleTableWithEnum(bb:flatbuffers.ByteBuffer, obj?:TestSimpleTableWithEnum):TestSimpleTableWithEnum {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new TestSimpleTableWithEnum()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+color():Color {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : Color.Green;
+}
+
+mutate_color(value:Color):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint8(this.bb_pos + offset, value);
+ return true;
+}
+
+static startTestSimpleTableWithEnum(builder:flatbuffers.Builder) {
+ builder.startObject(1);
+}
+
+static addColor(builder:flatbuffers.Builder, color:Color) {
+ builder.addFieldInt8(0, color, Color.Green);
+}
+
+static endTestSimpleTableWithEnum(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createTestSimpleTableWithEnum(builder:flatbuffers.Builder, color:Color):flatbuffers.Offset {
+ TestSimpleTableWithEnum.startTestSimpleTableWithEnum(builder);
+ TestSimpleTableWithEnum.addColor(builder, color);
+ return TestSimpleTableWithEnum.endTestSimpleTableWithEnum(builder);
+}
+
+serialize():Uint8Array {
+ return this.bb!.bytes();
+}
+
+static deserialize(buffer: Uint8Array):TestSimpleTableWithEnum {
+ return TestSimpleTableWithEnum.getRootAsTestSimpleTableWithEnum(new flatbuffers.ByteBuffer(buffer))
+}
+
+unpack(): TestSimpleTableWithEnumT {
+ return new TestSimpleTableWithEnumT(
+ this.color()
+ );
+}
+
+
+unpackTo(_o: TestSimpleTableWithEnumT): void {
+ _o.color = this.color();
+}
+}
+
+export class TestSimpleTableWithEnumT {
+constructor(
+ public color: Color = Color.Green
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return TestSimpleTableWithEnum.createTestSimpleTableWithEnum(builder,
+ this.color
+ );
+}
+}
diff --git a/tests/my-game/example/test.ts b/tests/my-game/example/test.ts
new file mode 100644
index 00000000..e49374db
--- /dev/null
+++ b/tests/my-game/example/test.ts
@@ -0,0 +1,74 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class Test {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Test {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+a():number {
+ return this.bb!.readInt16(this.bb_pos);
+}
+
+mutate_a(value:number):boolean {
+ this.bb!.writeInt16(this.bb_pos + 0, value);
+ return true;
+}
+
+b():number {
+ return this.bb!.readInt8(this.bb_pos + 2);
+}
+
+mutate_b(value:number):boolean {
+ this.bb!.writeInt8(this.bb_pos + 2, value);
+ return true;
+}
+
+static sizeOf():number {
+ return 4;
+}
+
+static createTest(builder:flatbuffers.Builder, a: number, b: number):flatbuffers.Offset {
+ builder.prep(2, 4);
+ builder.pad(1);
+ builder.writeInt8(b);
+ builder.writeInt16(a);
+ return builder.offset();
+}
+
+
+unpack(): TestT {
+ return new TestT(
+ this.a(),
+ this.b()
+ );
+}
+
+
+unpackTo(_o: TestT): void {
+ _o.a = this.a();
+ _o.b = this.b();
+}
+}
+
+export class TestT {
+constructor(
+ public a: number = 0,
+ public b: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return Test.createTest(builder,
+ this.a,
+ this.b
+ );
+}
+}
diff --git a/tests/my-game/example/type-aliases.ts b/tests/my-game/example/type-aliases.ts
new file mode 100644
index 00000000..8e89bbcb
--- /dev/null
+++ b/tests/my-game/example/type-aliases.ts
@@ -0,0 +1,401 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class TypeAliases {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):TypeAliases {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsTypeAliases(bb:flatbuffers.ByteBuffer, obj?:TypeAliases):TypeAliases {
+ return (obj || new TypeAliases()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsTypeAliases(bb:flatbuffers.ByteBuffer, obj?:TypeAliases):TypeAliases {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new TypeAliases()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+i8():number {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : 0;
+}
+
+mutate_i8(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt8(this.bb_pos + offset, value);
+ return true;
+}
+
+u8():number {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : 0;
+}
+
+mutate_u8(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint8(this.bb_pos + offset, value);
+ return true;
+}
+
+i16():number {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ return offset ? this.bb!.readInt16(this.bb_pos + offset) : 0;
+}
+
+mutate_i16(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt16(this.bb_pos + offset, value);
+ return true;
+}
+
+u16():number {
+ const offset = this.bb!.__offset(this.bb_pos, 10);
+ return offset ? this.bb!.readUint16(this.bb_pos + offset) : 0;
+}
+
+mutate_u16(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 10);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint16(this.bb_pos + offset, value);
+ return true;
+}
+
+i32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 12);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
+}
+
+mutate_i32(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 12);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt32(this.bb_pos + offset, value);
+ return true;
+}
+
+u32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 14);
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
+}
+
+mutate_u32(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 14);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint32(this.bb_pos + offset, value);
+ return true;
+}
+
+i64():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 16);
+ return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_i64(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 16);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt64(this.bb_pos + offset, value);
+ return true;
+}
+
+u64():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 18);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+mutate_u64(value:flatbuffers.Long):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 18);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeUint64(this.bb_pos + offset, value);
+ return true;
+}
+
+f32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 20);
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 0.0;
+}
+
+mutate_f32(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 20);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeFloat32(this.bb_pos + offset, value);
+ return true;
+}
+
+f64():number {
+ const offset = this.bb!.__offset(this.bb_pos, 22);
+ return offset ? this.bb!.readFloat64(this.bb_pos + offset) : 0.0;
+}
+
+mutate_f64(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 22);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeFloat64(this.bb_pos + offset, value);
+ return true;
+}
+
+v8(index: number):number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 24);
+ return offset ? this.bb!.readInt8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
+}
+
+v8Length():number {
+ const offset = this.bb!.__offset(this.bb_pos, 24);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+v8Array():Int8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 24);
+ return offset ? new Int8Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
+}
+
+vf64(index: number):number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 26);
+ return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
+}
+
+vf64Length():number {
+ const offset = this.bb!.__offset(this.bb_pos, 26);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+vf64Array():Float64Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 26);
+ return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
+}
+
+static startTypeAliases(builder:flatbuffers.Builder) {
+ builder.startObject(12);
+}
+
+static addI8(builder:flatbuffers.Builder, i8:number) {
+ builder.addFieldInt8(0, i8, 0);
+}
+
+static addU8(builder:flatbuffers.Builder, u8:number) {
+ builder.addFieldInt8(1, u8, 0);
+}
+
+static addI16(builder:flatbuffers.Builder, i16:number) {
+ builder.addFieldInt16(2, i16, 0);
+}
+
+static addU16(builder:flatbuffers.Builder, u16:number) {
+ builder.addFieldInt16(3, u16, 0);
+}
+
+static addI32(builder:flatbuffers.Builder, i32:number) {
+ builder.addFieldInt32(4, i32, 0);
+}
+
+static addU32(builder:flatbuffers.Builder, u32:number) {
+ builder.addFieldInt32(5, u32, 0);
+}
+
+static addI64(builder:flatbuffers.Builder, i64:flatbuffers.Long) {
+ builder.addFieldInt64(6, i64, builder.createLong(0, 0));
+}
+
+static addU64(builder:flatbuffers.Builder, u64:flatbuffers.Long) {
+ builder.addFieldInt64(7, u64, builder.createLong(0, 0));
+}
+
+static addF32(builder:flatbuffers.Builder, f32:number) {
+ builder.addFieldFloat32(8, f32, 0.0);
+}
+
+static addF64(builder:flatbuffers.Builder, f64:number) {
+ builder.addFieldFloat64(9, f64, 0.0);
+}
+
+static addV8(builder:flatbuffers.Builder, v8Offset:flatbuffers.Offset) {
+ builder.addFieldOffset(10, v8Offset, 0);
+}
+
+static createV8Vector(builder:flatbuffers.Builder, data:number[]|Int8Array):flatbuffers.Offset;
+/**
+ * @deprecated This Uint8Array overload will be removed in the future.
+ */
+static createV8Vector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
+static createV8Vector(builder:flatbuffers.Builder, data:number[]|Int8Array|Uint8Array):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 startV8Vector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addVf64(builder:flatbuffers.Builder, vf64Offset:flatbuffers.Offset) {
+ builder.addFieldOffset(11, vf64Offset, 0);
+}
+
+static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
+/**
+ * @deprecated This Uint8Array overload will be removed in the future.
+ */
+static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
+static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
+ builder.startVector(8, data.length, 8);
+ for (let i = data.length - 1; i >= 0; i--) {
+ builder.addFloat64(data[i]!);
+ }
+ return builder.endVector();
+}
+
+static startVf64Vector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(8, numElems, 8);
+}
+
+static endTypeAliases(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createTypeAliases(builder:flatbuffers.Builder, i8:number, u8:number, i16:number, u16:number, i32:number, u32:number, i64:flatbuffers.Long, u64:flatbuffers.Long, f32:number, f64:number, v8Offset:flatbuffers.Offset, vf64Offset:flatbuffers.Offset):flatbuffers.Offset {
+ TypeAliases.startTypeAliases(builder);
+ TypeAliases.addI8(builder, i8);
+ TypeAliases.addU8(builder, u8);
+ TypeAliases.addI16(builder, i16);
+ TypeAliases.addU16(builder, u16);
+ TypeAliases.addI32(builder, i32);
+ TypeAliases.addU32(builder, u32);
+ TypeAliases.addI64(builder, i64);
+ TypeAliases.addU64(builder, u64);
+ TypeAliases.addF32(builder, f32);
+ TypeAliases.addF64(builder, f64);
+ TypeAliases.addV8(builder, v8Offset);
+ TypeAliases.addVf64(builder, vf64Offset);
+ return TypeAliases.endTypeAliases(builder);
+}
+
+serialize():Uint8Array {
+ return this.bb!.bytes();
+}
+
+static deserialize(buffer: Uint8Array):TypeAliases {
+ return TypeAliases.getRootAsTypeAliases(new flatbuffers.ByteBuffer(buffer))
+}
+
+unpack(): TypeAliasesT {
+ return new TypeAliasesT(
+ this.i8(),
+ this.u8(),
+ this.i16(),
+ this.u16(),
+ this.i32(),
+ this.u32(),
+ this.i64(),
+ this.u64(),
+ this.f32(),
+ this.f64(),
+ this.bb!.createScalarList(this.v8.bind(this), this.v8Length()),
+ this.bb!.createScalarList(this.vf64.bind(this), this.vf64Length())
+ );
+}
+
+
+unpackTo(_o: TypeAliasesT): void {
+ _o.i8 = this.i8();
+ _o.u8 = this.u8();
+ _o.i16 = this.i16();
+ _o.u16 = this.u16();
+ _o.i32 = this.i32();
+ _o.u32 = this.u32();
+ _o.i64 = this.i64();
+ _o.u64 = this.u64();
+ _o.f32 = this.f32();
+ _o.f64 = this.f64();
+ _o.v8 = this.bb!.createScalarList(this.v8.bind(this), this.v8Length());
+ _o.vf64 = this.bb!.createScalarList(this.vf64.bind(this), this.vf64Length());
+}
+}
+
+export class TypeAliasesT {
+constructor(
+ public i8: number = 0,
+ public u8: number = 0,
+ public i16: number = 0,
+ public u16: number = 0,
+ public i32: number = 0,
+ public u32: number = 0,
+ public i64: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public u64: flatbuffers.Long = flatbuffers.createLong(0, 0),
+ public f32: number = 0.0,
+ public f64: number = 0.0,
+ public v8: (number)[] = [],
+ public vf64: (number)[] = []
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ const v8 = TypeAliases.createV8Vector(builder, this.v8);
+ const vf64 = TypeAliases.createVf64Vector(builder, this.vf64);
+
+ return TypeAliases.createTypeAliases(builder,
+ this.i8,
+ this.u8,
+ this.i16,
+ this.u16,
+ this.i32,
+ this.u32,
+ this.i64,
+ this.u64,
+ this.f32,
+ this.f64,
+ v8,
+ vf64
+ );
+}
+}
diff --git a/tests/my-game/example/vec3.ts b/tests/my-game/example/vec3.ts
new file mode 100644
index 00000000..eafc147b
--- /dev/null
+++ b/tests/my-game/example/vec3.ts
@@ -0,0 +1,133 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { Color } from '../../my-game/example/color';
+import { Test, TestT } from '../../my-game/example/test';
+
+
+export class Vec3 {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Vec3 {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+x():number {
+ return this.bb!.readFloat32(this.bb_pos);
+}
+
+mutate_x(value:number):boolean {
+ this.bb!.writeFloat32(this.bb_pos + 0, value);
+ return true;
+}
+
+y():number {
+ return this.bb!.readFloat32(this.bb_pos + 4);
+}
+
+mutate_y(value:number):boolean {
+ this.bb!.writeFloat32(this.bb_pos + 4, value);
+ return true;
+}
+
+z():number {
+ return this.bb!.readFloat32(this.bb_pos + 8);
+}
+
+mutate_z(value:number):boolean {
+ this.bb!.writeFloat32(this.bb_pos + 8, value);
+ return true;
+}
+
+test1():number {
+ return this.bb!.readFloat64(this.bb_pos + 16);
+}
+
+mutate_test1(value:number):boolean {
+ this.bb!.writeFloat64(this.bb_pos + 16, value);
+ return true;
+}
+
+test2():Color {
+ return this.bb!.readUint8(this.bb_pos + 24);
+}
+
+mutate_test2(value:Color):boolean {
+ this.bb!.writeUint8(this.bb_pos + 24, value);
+ return true;
+}
+
+test3(obj?:Test):Test|null {
+ return (obj || new Test()).__init(this.bb_pos + 26, this.bb!);
+}
+
+static sizeOf():number {
+ return 32;
+}
+
+static createVec3(builder:flatbuffers.Builder, x: number, y: number, z: number, test1: number, test2: Color, test3_a: number, test3_b: number):flatbuffers.Offset {
+ builder.prep(8, 32);
+ builder.pad(2);
+ builder.prep(2, 4);
+ builder.pad(1);
+ builder.writeInt8(test3_b);
+ builder.writeInt16(test3_a);
+ builder.pad(1);
+ builder.writeInt8(test2);
+ builder.writeFloat64(test1);
+ builder.pad(4);
+ builder.writeFloat32(z);
+ builder.writeFloat32(y);
+ builder.writeFloat32(x);
+ return builder.offset();
+}
+
+
+unpack(): Vec3T {
+ return new Vec3T(
+ this.x(),
+ this.y(),
+ this.z(),
+ this.test1(),
+ this.test2(),
+ (this.test3() !== null ? this.test3()!.unpack() : null)
+ );
+}
+
+
+unpackTo(_o: Vec3T): void {
+ _o.x = this.x();
+ _o.y = this.y();
+ _o.z = this.z();
+ _o.test1 = this.test1();
+ _o.test2 = this.test2();
+ _o.test3 = (this.test3() !== null ? this.test3()!.unpack() : null);
+}
+}
+
+export class Vec3T {
+constructor(
+ public x: number = 0.0,
+ public y: number = 0.0,
+ public z: number = 0.0,
+ public test1: number = 0.0,
+ public test2: Color = 0,
+ public test3: TestT|null = null
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return Vec3.createVec3(builder,
+ this.x,
+ this.y,
+ this.z,
+ this.test1,
+ this.test2,
+ (this.test3 === null ? 0 : this.test3.a!),
+ (this.test3 === null ? 0 : this.test3.b!)
+ );
+}
+}
diff --git a/tests/my-game/example2/monster.ts b/tests/my-game/example2/monster.ts
new file mode 100644
index 00000000..d1aca42c
--- /dev/null
+++ b/tests/my-game/example2/monster.ts
@@ -0,0 +1,62 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class Monster {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Monster {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
+ return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsMonster(bb:flatbuffers.ByteBuffer, obj?:Monster):Monster {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new Monster()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static startMonster(builder:flatbuffers.Builder) {
+ builder.startObject(0);
+}
+
+static endMonster(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createMonster(builder:flatbuffers.Builder):flatbuffers.Offset {
+ Monster.startMonster(builder);
+ return Monster.endMonster(builder);
+}
+
+serialize():Uint8Array {
+ return this.bb!.bytes();
+}
+
+static deserialize(buffer: Uint8Array):Monster {
+ return Monster.getRootAsMonster(new flatbuffers.ByteBuffer(buffer))
+}
+
+unpack(): MonsterT {
+ return new MonsterT();
+}
+
+
+unpackTo(_o: MonsterT): void {}
+}
+
+export class MonsterT {
+constructor(){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return Monster.createMonster(builder);
+}
+}
diff --git a/tests/my-game/in-parent-namespace.ts b/tests/my-game/in-parent-namespace.ts
new file mode 100644
index 00000000..9cb46c01
--- /dev/null
+++ b/tests/my-game/in-parent-namespace.ts
@@ -0,0 +1,62 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class InParentNamespace {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):InParentNamespace {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsInParentNamespace(bb:flatbuffers.ByteBuffer, obj?:InParentNamespace):InParentNamespace {
+ return (obj || new InParentNamespace()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsInParentNamespace(bb:flatbuffers.ByteBuffer, obj?:InParentNamespace):InParentNamespace {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new InParentNamespace()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static startInParentNamespace(builder:flatbuffers.Builder) {
+ builder.startObject(0);
+}
+
+static endInParentNamespace(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createInParentNamespace(builder:flatbuffers.Builder):flatbuffers.Offset {
+ InParentNamespace.startInParentNamespace(builder);
+ return InParentNamespace.endInParentNamespace(builder);
+}
+
+serialize():Uint8Array {
+ return this.bb!.bytes();
+}
+
+static deserialize(buffer: Uint8Array):InParentNamespace {
+ return InParentNamespace.getRootAsInParentNamespace(new flatbuffers.ByteBuffer(buffer))
+}
+
+unpack(): InParentNamespaceT {
+ return new InParentNamespaceT();
+}
+
+
+unpackTo(_o: InParentNamespaceT): void {}
+}
+
+export class InParentNamespaceT {
+constructor(){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return InParentNamespace.createInParentNamespace(builder);
+}
+}
diff --git a/tests/namespace_test/namespace-a/namespace-b/enum-in-nested-n-s.ts b/tests/namespace_test/namespace-a/namespace-b/enum-in-nested-n-s.ts
new file mode 100644
index 00000000..676b7e43
--- /dev/null
+++ b/tests/namespace_test/namespace-a/namespace-b/enum-in-nested-n-s.ts
@@ -0,0 +1,8 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+export enum EnumInNestedNS{
+ A = 0,
+ B = 1,
+ C = 2
+}
+
diff --git a/tests/namespace_test/namespace-a/namespace-b/struct-in-nested-n-s.ts b/tests/namespace_test/namespace-a/namespace-b/struct-in-nested-n-s.ts
new file mode 100644
index 00000000..4b10118e
--- /dev/null
+++ b/tests/namespace_test/namespace-a/namespace-b/struct-in-nested-n-s.ts
@@ -0,0 +1,77 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class StructInNestedNS {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):StructInNestedNS {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+a():number {
+ return this.bb!.readInt32(this.bb_pos);
+}
+
+mutate_a(value:number):boolean {
+ this.bb!.writeInt32(this.bb_pos + 0, value);
+ return true;
+}
+
+b():number {
+ return this.bb!.readInt32(this.bb_pos + 4);
+}
+
+mutate_b(value:number):boolean {
+ this.bb!.writeInt32(this.bb_pos + 4, value);
+ return true;
+}
+
+static getFullyQualifiedName():string {
+ return 'NamespaceA.NamespaceB.StructInNestedNS';
+}
+
+static sizeOf():number {
+ return 8;
+}
+
+static createStructInNestedNS(builder:flatbuffers.Builder, a: number, b: number):flatbuffers.Offset {
+ builder.prep(4, 8);
+ builder.writeInt32(b);
+ builder.writeInt32(a);
+ return builder.offset();
+}
+
+
+unpack(): StructInNestedNST {
+ return new StructInNestedNST(
+ this.a(),
+ this.b()
+ );
+}
+
+
+unpackTo(_o: StructInNestedNST): void {
+ _o.a = this.a();
+ _o.b = this.b();
+}
+}
+
+export class StructInNestedNST {
+constructor(
+ public a: number = 0,
+ public b: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return StructInNestedNS.createStructInNestedNS(builder,
+ this.a,
+ this.b
+ );
+}
+}
diff --git a/tests/namespace_test/namespace-a/namespace-b/table-in-nested-n-s.ts b/tests/namespace_test/namespace-a/namespace-b/table-in-nested-n-s.ts
new file mode 100644
index 00000000..5279fdbd
--- /dev/null
+++ b/tests/namespace_test/namespace-a/namespace-b/table-in-nested-n-s.ts
@@ -0,0 +1,87 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class TableInNestedNS {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):TableInNestedNS {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsTableInNestedNS(bb:flatbuffers.ByteBuffer, obj?:TableInNestedNS):TableInNestedNS {
+ return (obj || new TableInNestedNS()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsTableInNestedNS(bb:flatbuffers.ByteBuffer, obj?:TableInNestedNS):TableInNestedNS {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new TableInNestedNS()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+foo():number {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
+}
+
+mutate_foo(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt32(this.bb_pos + offset, value);
+ return true;
+}
+
+static getFullyQualifiedName():string {
+ return 'NamespaceA.NamespaceB.TableInNestedNS';
+}
+
+static startTableInNestedNS(builder:flatbuffers.Builder) {
+ builder.startObject(1);
+}
+
+static addFoo(builder:flatbuffers.Builder, foo:number) {
+ builder.addFieldInt32(0, foo, 0);
+}
+
+static endTableInNestedNS(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createTableInNestedNS(builder:flatbuffers.Builder, foo:number):flatbuffers.Offset {
+ TableInNestedNS.startTableInNestedNS(builder);
+ TableInNestedNS.addFoo(builder, foo);
+ return TableInNestedNS.endTableInNestedNS(builder);
+}
+
+unpack(): TableInNestedNST {
+ return new TableInNestedNST(
+ this.foo()
+ );
+}
+
+
+unpackTo(_o: TableInNestedNST): void {
+ _o.foo = this.foo();
+}
+}
+
+export class TableInNestedNST {
+constructor(
+ public foo: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return TableInNestedNS.createTableInNestedNS(builder,
+ this.foo
+ );
+}
+}
diff --git a/tests/namespace_test/namespace-a/namespace-b/union-in-nested-n-s.ts b/tests/namespace_test/namespace-a/namespace-b/union-in-nested-n-s.ts
new file mode 100644
index 00000000..441ebf76
--- /dev/null
+++ b/tests/namespace_test/namespace-a/namespace-b/union-in-nested-n-s.ts
@@ -0,0 +1,33 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import { TableInNestedNS, TableInNestedNST } from '../../namespace-a/namespace-b/table-in-nested-n-s';
+
+
+export enum UnionInNestedNS{
+ NONE = 0,
+ TableInNestedNS = 1
+}
+
+export function unionToUnionInNestedNS(
+ type: UnionInNestedNS,
+ accessor: (obj:TableInNestedNS) => TableInNestedNS|null
+): TableInNestedNS|null {
+ switch(UnionInNestedNS[type]) {
+ case 'NONE': return null;
+ case 'TableInNestedNS': return accessor(new TableInNestedNS())! as TableInNestedNS;
+ default: return null;
+ }
+}
+
+export function unionListToUnionInNestedNS(
+ type: UnionInNestedNS,
+ accessor: (index: number, obj:TableInNestedNS) => TableInNestedNS|null,
+ index: number
+): TableInNestedNS|null {
+ switch(UnionInNestedNS[type]) {
+ case 'NONE': return null;
+ case 'TableInNestedNS': return accessor(index, new TableInNestedNS())! as TableInNestedNS;
+ default: return null;
+ }
+}
+
diff --git a/tests/namespace_test/namespace-a/second-table-in-a.ts b/tests/namespace_test/namespace-a/second-table-in-a.ts
new file mode 100644
index 00000000..2d50a83b
--- /dev/null
+++ b/tests/namespace_test/namespace-a/second-table-in-a.ts
@@ -0,0 +1,77 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { TableInC, TableInCT } from '../namespace-c/table-in-c';
+
+
+export class SecondTableInA {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):SecondTableInA {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsSecondTableInA(bb:flatbuffers.ByteBuffer, obj?:SecondTableInA):SecondTableInA {
+ return (obj || new SecondTableInA()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsSecondTableInA(bb:flatbuffers.ByteBuffer, obj?:SecondTableInA):SecondTableInA {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new SecondTableInA()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+referToC(obj?:TableInC):TableInC|null {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? (obj || new TableInC()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
+}
+
+static getFullyQualifiedName():string {
+ return 'NamespaceA.SecondTableInA';
+}
+
+static startSecondTableInA(builder:flatbuffers.Builder) {
+ builder.startObject(1);
+}
+
+static addReferToC(builder:flatbuffers.Builder, referToCOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(0, referToCOffset, 0);
+}
+
+static endSecondTableInA(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createSecondTableInA(builder:flatbuffers.Builder, referToCOffset:flatbuffers.Offset):flatbuffers.Offset {
+ SecondTableInA.startSecondTableInA(builder);
+ SecondTableInA.addReferToC(builder, referToCOffset);
+ return SecondTableInA.endSecondTableInA(builder);
+}
+
+unpack(): SecondTableInAT {
+ return new SecondTableInAT(
+ (this.referToC() !== null ? this.referToC()!.unpack() : null)
+ );
+}
+
+
+unpackTo(_o: SecondTableInAT): void {
+ _o.referToC = (this.referToC() !== null ? this.referToC()!.unpack() : null);
+}
+}
+
+export class SecondTableInAT {
+constructor(
+ public referToC: TableInCT|null = null
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return SecondTableInA.createSecondTableInA(builder,
+ (this.referToC !== null ? this.referToC!.pack(builder) : 0)
+ );
+}
+}
diff --git a/tests/namespace_test/namespace-a/table-in-first-n-s.ts b/tests/namespace_test/namespace-a/table-in-first-n-s.ts
new file mode 100644
index 00000000..7a8832ea
--- /dev/null
+++ b/tests/namespace_test/namespace-a/table-in-first-n-s.ts
@@ -0,0 +1,149 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { EnumInNestedNS } from '../namespace-a/namespace-b/enum-in-nested-n-s';
+import { StructInNestedNS, StructInNestedNST } from '../namespace-a/namespace-b/struct-in-nested-n-s';
+import { TableInNestedNS, TableInNestedNST } from '../namespace-a/namespace-b/table-in-nested-n-s';
+import { UnionInNestedNS, unionToUnionInNestedNS, unionListToUnionInNestedNS } from '../namespace-a/namespace-b/union-in-nested-n-s';
+
+
+export class TableInFirstNS {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):TableInFirstNS {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsTableInFirstNS(bb:flatbuffers.ByteBuffer, obj?:TableInFirstNS):TableInFirstNS {
+ return (obj || new TableInFirstNS()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsTableInFirstNS(bb:flatbuffers.ByteBuffer, obj?:TableInFirstNS):TableInFirstNS {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new TableInFirstNS()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+fooTable(obj?:NS8755221360535654258.TableInNestedNS):NS8755221360535654258.TableInNestedNS|null {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? (obj || new NS8755221360535654258.TableInNestedNS()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
+}
+
+fooEnum():EnumInNestedNS {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : EnumInNestedNS.A;
+}
+
+mutate_foo_enum(value:EnumInNestedNS):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt8(this.bb_pos + offset, value);
+ return true;
+}
+
+fooUnionType():UnionInNestedNS {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : UnionInNestedNS.NONE;
+}
+
+fooUnion<T extends flatbuffers.Table>(obj:any):any|null {
+ const offset = this.bb!.__offset(this.bb_pos, 10);
+ return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
+}
+
+fooStruct(obj?:NS8755221360535654258.StructInNestedNS):NS8755221360535654258.StructInNestedNS|null {
+ const offset = this.bb!.__offset(this.bb_pos, 12);
+ return offset ? (obj || new NS8755221360535654258.StructInNestedNS()).__init(this.bb_pos + offset, this.bb!) : null;
+}
+
+static getFullyQualifiedName():string {
+ return 'NamespaceA.TableInFirstNS';
+}
+
+static startTableInFirstNS(builder:flatbuffers.Builder) {
+ builder.startObject(5);
+}
+
+static addFooTable(builder:flatbuffers.Builder, fooTableOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(0, fooTableOffset, 0);
+}
+
+static addFooEnum(builder:flatbuffers.Builder, fooEnum:EnumInNestedNS) {
+ builder.addFieldInt8(1, fooEnum, EnumInNestedNS.A);
+}
+
+static addFooUnionType(builder:flatbuffers.Builder, fooUnionType:UnionInNestedNS) {
+ builder.addFieldInt8(2, fooUnionType, UnionInNestedNS.NONE);
+}
+
+static addFooUnion(builder:flatbuffers.Builder, fooUnionOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(3, fooUnionOffset, 0);
+}
+
+static addFooStruct(builder:flatbuffers.Builder, fooStructOffset:flatbuffers.Offset) {
+ builder.addFieldStruct(4, fooStructOffset, 0);
+}
+
+static endTableInFirstNS(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+
+unpack(): TableInFirstNST {
+ return new TableInFirstNST(
+ (this.fooTable() !== null ? this.fooTable()!.unpack() : null),
+ this.fooEnum(),
+ this.fooUnionType(),
+ (() => {
+ let temp = unionToUnionInNestedNS(this.fooUnionType(), this.fooUnion.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })(),
+ (this.fooStruct() !== null ? this.fooStruct()!.unpack() : null)
+ );
+}
+
+
+unpackTo(_o: TableInFirstNST): void {
+ _o.fooTable = (this.fooTable() !== null ? this.fooTable()!.unpack() : null);
+ _o.fooEnum = this.fooEnum();
+ _o.fooUnionType = this.fooUnionType();
+ _o.fooUnion = (() => {
+ let temp = unionToUnionInNestedNS(this.fooUnionType(), this.fooUnion.bind(this));
+ if(temp === null) { return null; }
+ return temp.unpack()
+ })();
+ _o.fooStruct = (this.fooStruct() !== null ? this.fooStruct()!.unpack() : null);
+}
+}
+
+export class TableInFirstNST {
+constructor(
+ public fooTable: TableInNestedNST|null = null,
+ public fooEnum: EnumInNestedNS = EnumInNestedNS.A,
+ public fooUnionType: UnionInNestedNS = UnionInNestedNS.NONE,
+ public fooUnion: TableInNestedNST|null = null,
+ public fooStruct: StructInNestedNST|null = null
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ const fooUnion = builder.createObjectOffset(this.fooUnion);
+
+ TableInFirstNS.startTableInFirstNS(builder);
+ TableInFirstNS.addFooTable(builder, (this.fooTable !== null ? this.fooTable!.pack(builder) : 0));
+ TableInFirstNS.addFooEnum(builder, this.fooEnum);
+ TableInFirstNS.addFooUnionType(builder, this.fooUnionType);
+ TableInFirstNS.addFooUnion(builder, fooUnion);
+ TableInFirstNS.addFooStruct(builder, (this.fooStruct !== null ? this.fooStruct!.pack(builder) : 0));
+
+ return TableInFirstNS.endTableInFirstNS(builder);
+}
+}
diff --git a/tests/namespace_test/namespace-c/table-in-c.ts b/tests/namespace_test/namespace-c/table-in-c.ts
new file mode 100644
index 00000000..7fd559bd
--- /dev/null
+++ b/tests/namespace_test/namespace-c/table-in-c.ts
@@ -0,0 +1,87 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { SecondTableInA, SecondTableInAT } from '../namespace-a/second-table-in-a';
+import { TableInFirstNS, TableInFirstNST } from '../namespace-a/table-in-first-n-s';
+
+
+export class TableInC {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):TableInC {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsTableInC(bb:flatbuffers.ByteBuffer, obj?:TableInC):TableInC {
+ return (obj || new TableInC()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsTableInC(bb:flatbuffers.ByteBuffer, obj?:TableInC):TableInC {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new TableInC()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+referToA1(obj?:TableInFirstNS):TableInFirstNS|null {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? (obj || new TableInFirstNS()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
+}
+
+referToA2(obj?:SecondTableInA):SecondTableInA|null {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+ return offset ? (obj || new SecondTableInA()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
+}
+
+static getFullyQualifiedName():string {
+ return 'NamespaceC.TableInC';
+}
+
+static startTableInC(builder:flatbuffers.Builder) {
+ builder.startObject(2);
+}
+
+static addReferToA1(builder:flatbuffers.Builder, referToA1Offset:flatbuffers.Offset) {
+ builder.addFieldOffset(0, referToA1Offset, 0);
+}
+
+static addReferToA2(builder:flatbuffers.Builder, referToA2Offset:flatbuffers.Offset) {
+ builder.addFieldOffset(1, referToA2Offset, 0);
+}
+
+static endTableInC(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+
+unpack(): TableInCT {
+ return new TableInCT(
+ (this.referToA1() !== null ? this.referToA1()!.unpack() : null),
+ (this.referToA2() !== null ? this.referToA2()!.unpack() : null)
+ );
+}
+
+
+unpackTo(_o: TableInCT): void {
+ _o.referToA1 = (this.referToA1() !== null ? this.referToA1()!.unpack() : null);
+ _o.referToA2 = (this.referToA2() !== null ? this.referToA2()!.unpack() : null);
+}
+}
+
+export class TableInCT {
+constructor(
+ public referToA1: TableInFirstNST|null = null,
+ public referToA2: SecondTableInAT|null = null
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ TableInC.startTableInC(builder);
+ TableInC.addReferToA1(builder, (this.referToA1 !== null ? this.referToA1!.pack(builder) : 0));
+ TableInC.addReferToA2(builder, (this.referToA2 !== null ? this.referToA2!.pack(builder) : 0));
+
+ return TableInC.endTableInC(builder);
+}
+}
diff --git a/tests/optional_scalars/optional-byte.ts b/tests/optional_scalars/optional-byte.ts
new file mode 100644
index 00000000..1db479f1
--- /dev/null
+++ b/tests/optional_scalars/optional-byte.ts
@@ -0,0 +1,8 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+export enum OptionalByte{
+ None = 0,
+ One = 1,
+ Two = 2
+}
+
diff --git a/tests/optional_scalars/scalar-stuff.ts b/tests/optional_scalars/scalar-stuff.ts
new file mode 100644
index 00000000..ed611375
--- /dev/null
+++ b/tests/optional_scalars/scalar-stuff.ts
@@ -0,0 +1,423 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { OptionalByte } from '../optional_scalars/optional-byte';
+
+
+export class ScalarStuff {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):ScalarStuff {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsScalarStuff(bb:flatbuffers.ByteBuffer, obj?:ScalarStuff):ScalarStuff {
+ return (obj || new ScalarStuff()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsScalarStuff(bb:flatbuffers.ByteBuffer, obj?:ScalarStuff):ScalarStuff {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new ScalarStuff()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static bufferHasIdentifier(bb:flatbuffers.ByteBuffer):boolean {
+ return bb.__has_identifier('NULL');
+}
+
+justI8():number {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : 0;
+}
+
+maybeI8():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : null;
+}
+
+defaultI8():number {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : 42;
+}
+
+justU8():number {
+ const offset = this.bb!.__offset(this.bb_pos, 10);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : 0;
+}
+
+maybeU8():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 12);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : null;
+}
+
+defaultU8():number {
+ const offset = this.bb!.__offset(this.bb_pos, 14);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : 42;
+}
+
+justI16():number {
+ const offset = this.bb!.__offset(this.bb_pos, 16);
+ return offset ? this.bb!.readInt16(this.bb_pos + offset) : 0;
+}
+
+maybeI16():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 18);
+ return offset ? this.bb!.readInt16(this.bb_pos + offset) : null;
+}
+
+defaultI16():number {
+ const offset = this.bb!.__offset(this.bb_pos, 20);
+ return offset ? this.bb!.readInt16(this.bb_pos + offset) : 42;
+}
+
+justU16():number {
+ const offset = this.bb!.__offset(this.bb_pos, 22);
+ return offset ? this.bb!.readUint16(this.bb_pos + offset) : 0;
+}
+
+maybeU16():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 24);
+ return offset ? this.bb!.readUint16(this.bb_pos + offset) : null;
+}
+
+defaultU16():number {
+ const offset = this.bb!.__offset(this.bb_pos, 26);
+ return offset ? this.bb!.readUint16(this.bb_pos + offset) : 42;
+}
+
+justI32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 28);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
+}
+
+maybeI32():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 30);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : null;
+}
+
+defaultI32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 32);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : 42;
+}
+
+justU32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 34);
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
+}
+
+maybeU32():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 36);
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : null;
+}
+
+defaultU32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 38);
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 42;
+}
+
+justI64():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 40);
+ return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+maybeI64():flatbuffers.Long|null {
+ const offset = this.bb!.__offset(this.bb_pos, 42);
+ return offset ? this.bb!.readInt64(this.bb_pos + offset) : null;
+}
+
+defaultI64():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 44);
+ return offset ? this.bb!.readInt64(this.bb_pos + offset) : this.bb!.createLong(42, 0);
+}
+
+justU64():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 46);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
+}
+
+maybeU64():flatbuffers.Long|null {
+ const offset = this.bb!.__offset(this.bb_pos, 48);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : null;
+}
+
+defaultU64():flatbuffers.Long {
+ const offset = this.bb!.__offset(this.bb_pos, 50);
+ return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(42, 0);
+}
+
+justF32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 52);
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 0.0;
+}
+
+maybeF32():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 54);
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : null;
+}
+
+defaultF32():number {
+ const offset = this.bb!.__offset(this.bb_pos, 56);
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 42.0;
+}
+
+justF64():number {
+ const offset = this.bb!.__offset(this.bb_pos, 58);
+ return offset ? this.bb!.readFloat64(this.bb_pos + offset) : 0.0;
+}
+
+maybeF64():number|null {
+ const offset = this.bb!.__offset(this.bb_pos, 60);
+ return offset ? this.bb!.readFloat64(this.bb_pos + offset) : null;
+}
+
+defaultF64():number {
+ const offset = this.bb!.__offset(this.bb_pos, 62);
+ return offset ? this.bb!.readFloat64(this.bb_pos + offset) : 42.0;
+}
+
+justBool():boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 64);
+ return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
+}
+
+maybeBool():boolean|null {
+ const offset = this.bb!.__offset(this.bb_pos, 66);
+ return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : null;
+}
+
+defaultBool():boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 68);
+ return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : true;
+}
+
+justEnum():OptionalByte {
+ const offset = this.bb!.__offset(this.bb_pos, 70);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : OptionalByte.None;
+}
+
+maybeEnum():OptionalByte|null {
+ const offset = this.bb!.__offset(this.bb_pos, 72);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : null;
+}
+
+defaultEnum():OptionalByte {
+ const offset = this.bb!.__offset(this.bb_pos, 74);
+ return offset ? this.bb!.readInt8(this.bb_pos + offset) : OptionalByte.One;
+}
+
+static startScalarStuff(builder:flatbuffers.Builder) {
+ builder.startObject(36);
+}
+
+static addJustI8(builder:flatbuffers.Builder, justI8:number) {
+ builder.addFieldInt8(0, justI8, 0);
+}
+
+static addMaybeI8(builder:flatbuffers.Builder, maybeI8:number) {
+ builder.addFieldInt8(1, maybeI8, 0);
+}
+
+static addDefaultI8(builder:flatbuffers.Builder, defaultI8:number) {
+ builder.addFieldInt8(2, defaultI8, 42);
+}
+
+static addJustU8(builder:flatbuffers.Builder, justU8:number) {
+ builder.addFieldInt8(3, justU8, 0);
+}
+
+static addMaybeU8(builder:flatbuffers.Builder, maybeU8:number) {
+ builder.addFieldInt8(4, maybeU8, 0);
+}
+
+static addDefaultU8(builder:flatbuffers.Builder, defaultU8:number) {
+ builder.addFieldInt8(5, defaultU8, 42);
+}
+
+static addJustI16(builder:flatbuffers.Builder, justI16:number) {
+ builder.addFieldInt16(6, justI16, 0);
+}
+
+static addMaybeI16(builder:flatbuffers.Builder, maybeI16:number) {
+ builder.addFieldInt16(7, maybeI16, 0);
+}
+
+static addDefaultI16(builder:flatbuffers.Builder, defaultI16:number) {
+ builder.addFieldInt16(8, defaultI16, 42);
+}
+
+static addJustU16(builder:flatbuffers.Builder, justU16:number) {
+ builder.addFieldInt16(9, justU16, 0);
+}
+
+static addMaybeU16(builder:flatbuffers.Builder, maybeU16:number) {
+ builder.addFieldInt16(10, maybeU16, 0);
+}
+
+static addDefaultU16(builder:flatbuffers.Builder, defaultU16:number) {
+ builder.addFieldInt16(11, defaultU16, 42);
+}
+
+static addJustI32(builder:flatbuffers.Builder, justI32:number) {
+ builder.addFieldInt32(12, justI32, 0);
+}
+
+static addMaybeI32(builder:flatbuffers.Builder, maybeI32:number) {
+ builder.addFieldInt32(13, maybeI32, 0);
+}
+
+static addDefaultI32(builder:flatbuffers.Builder, defaultI32:number) {
+ builder.addFieldInt32(14, defaultI32, 42);
+}
+
+static addJustU32(builder:flatbuffers.Builder, justU32:number) {
+ builder.addFieldInt32(15, justU32, 0);
+}
+
+static addMaybeU32(builder:flatbuffers.Builder, maybeU32:number) {
+ builder.addFieldInt32(16, maybeU32, 0);
+}
+
+static addDefaultU32(builder:flatbuffers.Builder, defaultU32:number) {
+ builder.addFieldInt32(17, defaultU32, 42);
+}
+
+static addJustI64(builder:flatbuffers.Builder, justI64:flatbuffers.Long) {
+ builder.addFieldInt64(18, justI64, builder.createLong(0, 0));
+}
+
+static addMaybeI64(builder:flatbuffers.Builder, maybeI64:flatbuffers.Long) {
+ builder.addFieldInt64(19, maybeI64, builder.createLong(0, 0));
+}
+
+static addDefaultI64(builder:flatbuffers.Builder, defaultI64:flatbuffers.Long) {
+ builder.addFieldInt64(20, defaultI64, builder.createLong(42, 0));
+}
+
+static addJustU64(builder:flatbuffers.Builder, justU64:flatbuffers.Long) {
+ builder.addFieldInt64(21, justU64, builder.createLong(0, 0));
+}
+
+static addMaybeU64(builder:flatbuffers.Builder, maybeU64:flatbuffers.Long) {
+ builder.addFieldInt64(22, maybeU64, builder.createLong(0, 0));
+}
+
+static addDefaultU64(builder:flatbuffers.Builder, defaultU64:flatbuffers.Long) {
+ builder.addFieldInt64(23, defaultU64, builder.createLong(42, 0));
+}
+
+static addJustF32(builder:flatbuffers.Builder, justF32:number) {
+ builder.addFieldFloat32(24, justF32, 0.0);
+}
+
+static addMaybeF32(builder:flatbuffers.Builder, maybeF32:number) {
+ builder.addFieldFloat32(25, maybeF32, 0);
+}
+
+static addDefaultF32(builder:flatbuffers.Builder, defaultF32:number) {
+ builder.addFieldFloat32(26, defaultF32, 42.0);
+}
+
+static addJustF64(builder:flatbuffers.Builder, justF64:number) {
+ builder.addFieldFloat64(27, justF64, 0.0);
+}
+
+static addMaybeF64(builder:flatbuffers.Builder, maybeF64:number) {
+ builder.addFieldFloat64(28, maybeF64, 0);
+}
+
+static addDefaultF64(builder:flatbuffers.Builder, defaultF64:number) {
+ builder.addFieldFloat64(29, defaultF64, 42.0);
+}
+
+static addJustBool(builder:flatbuffers.Builder, justBool:boolean) {
+ builder.addFieldInt8(30, +justBool, +false);
+}
+
+static addMaybeBool(builder:flatbuffers.Builder, maybeBool:boolean) {
+ builder.addFieldInt8(31, +maybeBool, 0);
+}
+
+static addDefaultBool(builder:flatbuffers.Builder, defaultBool:boolean) {
+ builder.addFieldInt8(32, +defaultBool, +true);
+}
+
+static addJustEnum(builder:flatbuffers.Builder, justEnum:OptionalByte) {
+ builder.addFieldInt8(33, justEnum, OptionalByte.None);
+}
+
+static addMaybeEnum(builder:flatbuffers.Builder, maybeEnum:OptionalByte) {
+ builder.addFieldInt8(34, maybeEnum, 0);
+}
+
+static addDefaultEnum(builder:flatbuffers.Builder, defaultEnum:OptionalByte) {
+ builder.addFieldInt8(35, defaultEnum, OptionalByte.One);
+}
+
+static endScalarStuff(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static finishScalarStuffBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
+ builder.finish(offset, 'NULL');
+}
+
+static finishSizePrefixedScalarStuffBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
+ builder.finish(offset, 'NULL', true);
+}
+
+static createScalarStuff(builder:flatbuffers.Builder, justI8:number, maybeI8:number|null, defaultI8:number, justU8:number, maybeU8:number|null, defaultU8:number, justI16:number, maybeI16:number|null, defaultI16:number, justU16:number, maybeU16:number|null, defaultU16:number, justI32:number, maybeI32:number|null, defaultI32:number, justU32:number, maybeU32:number|null, defaultU32:number, justI64:flatbuffers.Long, maybeI64:flatbuffers.Long|null, defaultI64:flatbuffers.Long, justU64:flatbuffers.Long, maybeU64:flatbuffers.Long|null, defaultU64:flatbuffers.Long, justF32:number, maybeF32:number|null, defaultF32:number, justF64:number, maybeF64:number|null, defaultF64:number, justBool:boolean, maybeBool:boolean|null, defaultBool:boolean, justEnum:OptionalByte, maybeEnum:OptionalByte|null, defaultEnum:OptionalByte):flatbuffers.Offset {
+ ScalarStuff.startScalarStuff(builder);
+ ScalarStuff.addJustI8(builder, justI8);
+ if (maybeI8 !== null)
+ ScalarStuff.addMaybeI8(builder, maybeI8);
+ ScalarStuff.addDefaultI8(builder, defaultI8);
+ ScalarStuff.addJustU8(builder, justU8);
+ if (maybeU8 !== null)
+ ScalarStuff.addMaybeU8(builder, maybeU8);
+ ScalarStuff.addDefaultU8(builder, defaultU8);
+ ScalarStuff.addJustI16(builder, justI16);
+ if (maybeI16 !== null)
+ ScalarStuff.addMaybeI16(builder, maybeI16);
+ ScalarStuff.addDefaultI16(builder, defaultI16);
+ ScalarStuff.addJustU16(builder, justU16);
+ if (maybeU16 !== null)
+ ScalarStuff.addMaybeU16(builder, maybeU16);
+ ScalarStuff.addDefaultU16(builder, defaultU16);
+ ScalarStuff.addJustI32(builder, justI32);
+ if (maybeI32 !== null)
+ ScalarStuff.addMaybeI32(builder, maybeI32);
+ ScalarStuff.addDefaultI32(builder, defaultI32);
+ ScalarStuff.addJustU32(builder, justU32);
+ if (maybeU32 !== null)
+ ScalarStuff.addMaybeU32(builder, maybeU32);
+ ScalarStuff.addDefaultU32(builder, defaultU32);
+ ScalarStuff.addJustI64(builder, justI64);
+ if (maybeI64 !== null)
+ ScalarStuff.addMaybeI64(builder, maybeI64);
+ ScalarStuff.addDefaultI64(builder, defaultI64);
+ ScalarStuff.addJustU64(builder, justU64);
+ if (maybeU64 !== null)
+ ScalarStuff.addMaybeU64(builder, maybeU64);
+ ScalarStuff.addDefaultU64(builder, defaultU64);
+ ScalarStuff.addJustF32(builder, justF32);
+ if (maybeF32 !== null)
+ ScalarStuff.addMaybeF32(builder, maybeF32);
+ ScalarStuff.addDefaultF32(builder, defaultF32);
+ ScalarStuff.addJustF64(builder, justF64);
+ if (maybeF64 !== null)
+ ScalarStuff.addMaybeF64(builder, maybeF64);
+ ScalarStuff.addDefaultF64(builder, defaultF64);
+ ScalarStuff.addJustBool(builder, justBool);
+ if (maybeBool !== null)
+ ScalarStuff.addMaybeBool(builder, maybeBool);
+ ScalarStuff.addDefaultBool(builder, defaultBool);
+ ScalarStuff.addJustEnum(builder, justEnum);
+ if (maybeEnum !== null)
+ ScalarStuff.addMaybeEnum(builder, maybeEnum);
+ ScalarStuff.addDefaultEnum(builder, defaultEnum);
+ return ScalarStuff.endScalarStuff(builder);
+}
+}
diff --git a/tests/ts/movie.ts b/tests/ts/movie.ts
index a07b6eaa..b3e83819 100644
--- a/tests/ts/movie.ts
+++ b/tests/ts/movie.ts
@@ -88,7 +88,7 @@ static addCharactersType(builder:flatbuffers.Builder, charactersTypeOffset:flatb
static createCharactersTypeVector(builder:flatbuffers.Builder, data:Character[]):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
+ builder.addInt8(data[i]!);
}
return builder.endVector();
}
@@ -104,7 +104,7 @@ static addCharacters(builder:flatbuffers.Builder, charactersOffset:flatbuffers.O
static createCharactersVector(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]);
+ builder.addOffset(data[i]!);
}
return builder.endVector();
}
diff --git a/tests/ts/my-game/example/monster.ts b/tests/ts/my-game/example/monster.ts
index b334782e..49e528e6 100644
--- a/tests/ts/my-game/example/monster.ts
+++ b/tests/ts/my-game/example/monster.ts
@@ -677,7 +677,7 @@ static addInventory(builder:flatbuffers.Builder, inventoryOffset:flatbuffers.Off
static createInventoryVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
+ builder.addInt8(data[i]!);
}
return builder.endVector();
}
@@ -713,7 +713,7 @@ static addTestarrayofstring(builder:flatbuffers.Builder, testarrayofstringOffset
static createTestarrayofstringVector(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]);
+ builder.addOffset(data[i]!);
}
return builder.endVector();
}
@@ -729,7 +729,7 @@ static addTestarrayoftables(builder:flatbuffers.Builder, testarrayoftablesOffset
static createTestarrayoftablesVector(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]);
+ builder.addOffset(data[i]!);
}
return builder.endVector();
}
@@ -749,7 +749,7 @@ static addTestnestedflatbuffer(builder:flatbuffers.Builder, testnestedflatbuffer
static createTestnestedflatbufferVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
+ builder.addInt8(data[i]!);
}
return builder.endVector();
}
@@ -805,7 +805,7 @@ static addTestarrayofbools(builder:flatbuffers.Builder, testarrayofboolsOffset:f
static createTestarrayofboolsVector(builder:flatbuffers.Builder, data:boolean[]):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(+data[i]);
+ builder.addInt8(+data[i]!);
}
return builder.endVector();
}
@@ -833,7 +833,7 @@ static addTestarrayofstring2(builder:flatbuffers.Builder, testarrayofstring2Offs
static createTestarrayofstring2Vector(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]);
+ builder.addOffset(data[i]!);
}
return builder.endVector();
}
@@ -857,7 +857,7 @@ static addFlex(builder:flatbuffers.Builder, flexOffset:flatbuffers.Offset) {
static createFlexVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
+ builder.addInt8(data[i]!);
}
return builder.endVector();
}
@@ -881,7 +881,7 @@ static addVectorOfLongs(builder:flatbuffers.Builder, vectorOfLongsOffset:flatbuf
static createVectorOfLongsVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
+ builder.addInt64(data[i]!);
}
return builder.endVector();
}
@@ -902,7 +902,7 @@ static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Ui
static createVectorOfDoublesVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addFloat64(data[i]);
+ builder.addFloat64(data[i]!);
}
return builder.endVector();
}
@@ -922,7 +922,7 @@ static addVectorOfReferrables(builder:flatbuffers.Builder, vectorOfReferrablesOf
static createVectorOfReferrablesVector(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]);
+ builder.addOffset(data[i]!);
}
return builder.endVector();
}
@@ -942,7 +942,7 @@ static addVectorOfWeakReferences(builder:flatbuffers.Builder, vectorOfWeakRefere
static createVectorOfWeakReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
+ builder.addInt64(data[i]!);
}
return builder.endVector();
}
@@ -958,7 +958,7 @@ static addVectorOfStrongReferrables(builder:flatbuffers.Builder, vectorOfStrongR
static createVectorOfStrongReferrablesVector(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]);
+ builder.addOffset(data[i]!);
}
return builder.endVector();
}
@@ -978,7 +978,7 @@ static addVectorOfCoOwningReferences(builder:flatbuffers.Builder, vectorOfCoOwni
static createVectorOfCoOwningReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
+ builder.addInt64(data[i]!);
}
return builder.endVector();
}
@@ -998,7 +998,7 @@ static addVectorOfNonOwningReferences(builder:flatbuffers.Builder, vectorOfNonOw
static createVectorOfNonOwningReferencesVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt64(data[i]);
+ builder.addInt64(data[i]!);
}
return builder.endVector();
}
@@ -1030,7 +1030,7 @@ static addVectorOfEnums(builder:flatbuffers.Builder, vectorOfEnumsOffset:flatbuf
static createVectorOfEnumsVector(builder:flatbuffers.Builder, data:Color[]):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
+ builder.addInt8(data[i]!);
}
return builder.endVector();
}
@@ -1050,7 +1050,7 @@ static addTestrequirednestedflatbuffer(builder:flatbuffers.Builder, testrequired
static createTestrequirednestedflatbufferVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
+ builder.addInt8(data[i]!);
}
return builder.endVector();
}
@@ -1066,7 +1066,7 @@ static addScalarKeySortedTables(builder:flatbuffers.Builder, scalarKeySortedTabl
static createScalarKeySortedTablesVector(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]);
+ builder.addOffset(data[i]!);
}
return builder.endVector();
}
diff --git a/tests/ts/my-game/example/type-aliases.ts b/tests/ts/my-game/example/type-aliases.ts
index 9409eafc..58940d01 100644
--- a/tests/ts/my-game/example/type-aliases.ts
+++ b/tests/ts/my-game/example/type-aliases.ts
@@ -272,7 +272,7 @@ static createV8Vector(builder:flatbuffers.Builder, data:number[]|Uint8Array):fla
static createV8Vector(builder:flatbuffers.Builder, data:number[]|Int8Array|Uint8Array):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addInt8(data[i]);
+ builder.addInt8(data[i]!);
}
return builder.endVector();
}
@@ -293,7 +293,7 @@ static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Uint8Array):f
static createVf64Vector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
- builder.addFloat64(data[i]);
+ builder.addFloat64(data[i]!);
}
return builder.endVector();
}
diff --git a/tests/union_vector/attacker.ts b/tests/union_vector/attacker.ts
new file mode 100644
index 00000000..af370205
--- /dev/null
+++ b/tests/union_vector/attacker.ts
@@ -0,0 +1,87 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class Attacker {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Attacker {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsAttacker(bb:flatbuffers.ByteBuffer, obj?:Attacker):Attacker {
+ return (obj || new Attacker()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsAttacker(bb:flatbuffers.ByteBuffer, obj?:Attacker):Attacker {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new Attacker()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+swordAttackDamage():number {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
+}
+
+mutate_sword_attack_damage(value:number):boolean {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+
+ if (offset === 0) {
+ return false;
+ }
+
+ this.bb!.writeInt32(this.bb_pos + offset, value);
+ return true;
+}
+
+static getFullyQualifiedName():string {
+ return 'Attacker';
+}
+
+static startAttacker(builder:flatbuffers.Builder) {
+ builder.startObject(1);
+}
+
+static addSwordAttackDamage(builder:flatbuffers.Builder, swordAttackDamage:number) {
+ builder.addFieldInt32(0, swordAttackDamage, 0);
+}
+
+static endAttacker(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static createAttacker(builder:flatbuffers.Builder, swordAttackDamage:number):flatbuffers.Offset {
+ Attacker.startAttacker(builder);
+ Attacker.addSwordAttackDamage(builder, swordAttackDamage);
+ return Attacker.endAttacker(builder);
+}
+
+unpack(): AttackerT {
+ return new AttackerT(
+ this.swordAttackDamage()
+ );
+}
+
+
+unpackTo(_o: AttackerT): void {
+ _o.swordAttackDamage = this.swordAttackDamage();
+}
+}
+
+export class AttackerT {
+constructor(
+ public swordAttackDamage: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return Attacker.createAttacker(builder,
+ this.swordAttackDamage
+ );
+}
+}
diff --git a/tests/union_vector/book-reader.ts b/tests/union_vector/book-reader.ts
new file mode 100644
index 00000000..23106006
--- /dev/null
+++ b/tests/union_vector/book-reader.ts
@@ -0,0 +1,63 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class BookReader {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):BookReader {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+booksRead():number {
+ return this.bb!.readInt32(this.bb_pos);
+}
+
+mutate_books_read(value:number):boolean {
+ this.bb!.writeInt32(this.bb_pos + 0, value);
+ return true;
+}
+
+static getFullyQualifiedName():string {
+ return 'BookReader';
+}
+
+static sizeOf():number {
+ return 4;
+}
+
+static createBookReader(builder:flatbuffers.Builder, books_read: number):flatbuffers.Offset {
+ builder.prep(4, 4);
+ builder.writeInt32(books_read);
+ return builder.offset();
+}
+
+
+unpack(): BookReaderT {
+ return new BookReaderT(
+ this.booksRead()
+ );
+}
+
+
+unpackTo(_o: BookReaderT): void {
+ _o.booksRead = this.booksRead();
+}
+}
+
+export class BookReaderT {
+constructor(
+ public booksRead: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return BookReader.createBookReader(builder,
+ this.booksRead
+ );
+}
+}
diff --git a/tests/union_vector/character.ts b/tests/union_vector/character.ts
new file mode 100644
index 00000000..dbf8d51d
--- /dev/null
+++ b/tests/union_vector/character.ts
@@ -0,0 +1,50 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import { Attacker, AttackerT } from './attacker';
+import { BookReader, BookReaderT } from './book-reader';
+import { Rapunzel, RapunzelT } from './rapunzel';
+
+
+export enum Character{
+ NONE = 0,
+ MuLan = 1,
+ Rapunzel = 2,
+ Belle = 3,
+ BookFan = 4,
+ Other = 5,
+ Unused = 6
+}
+
+export function unionToCharacter(
+ type: Character,
+ accessor: (obj:Attacker|BookReader|Rapunzel|string) => Attacker|BookReader|Rapunzel|string|null
+): Attacker|BookReader|Rapunzel|string|null {
+ switch(Character[type]) {
+ case 'NONE': return null;
+ case 'MuLan': return accessor(new Attacker())! as Attacker;
+ case 'Rapunzel': return accessor(new Rapunzel())! as Rapunzel;
+ case 'Belle': return accessor(new BookReader())! as BookReader;
+ case 'BookFan': return accessor(new BookReader())! as BookReader;
+ case 'Other': return accessor('') as string;
+ case 'Unused': return accessor('') as string;
+ default: return null;
+ }
+}
+
+export function unionListToCharacter(
+ type: Character,
+ accessor: (index: number, obj:Attacker|BookReader|Rapunzel|string) => Attacker|BookReader|Rapunzel|string|null,
+ index: number
+): Attacker|BookReader|Rapunzel|string|null {
+ switch(Character[type]) {
+ case 'NONE': return null;
+ case 'MuLan': return accessor(index, new Attacker())! as Attacker;
+ case 'Rapunzel': return accessor(index, new Rapunzel())! as Rapunzel;
+ case 'Belle': return accessor(index, new BookReader())! as BookReader;
+ case 'BookFan': return accessor(index, new BookReader())! as BookReader;
+ case 'Other': return accessor(index, '') as string;
+ case 'Unused': return accessor(index, '') as string;
+ default: return null;
+ }
+}
+
diff --git a/tests/union_vector/movie.ts b/tests/union_vector/movie.ts
new file mode 100644
index 00000000..b3e83819
--- /dev/null
+++ b/tests/union_vector/movie.ts
@@ -0,0 +1,211 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+import { Attacker, AttackerT } from './attacker';
+import { BookReader, BookReaderT } from './book-reader';
+import { Character, unionToCharacter, unionListToCharacter } from './character';
+import { Rapunzel, RapunzelT } from './rapunzel';
+
+
+export class Movie {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Movie {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+static getRootAsMovie(bb:flatbuffers.ByteBuffer, obj?:Movie):Movie {
+ return (obj || new Movie()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static getSizePrefixedRootAsMovie(bb:flatbuffers.ByteBuffer, obj?:Movie):Movie {
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
+ return (obj || new Movie()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
+}
+
+static bufferHasIdentifier(bb:flatbuffers.ByteBuffer):boolean {
+ return bb.__has_identifier('MOVI');
+}
+
+mainCharacterType():Character {
+ const offset = this.bb!.__offset(this.bb_pos, 4);
+ return offset ? this.bb!.readUint8(this.bb_pos + offset) : Character.NONE;
+}
+
+mainCharacter<T extends flatbuffers.Table>(obj:any|string):any|string|null {
+ const offset = this.bb!.__offset(this.bb_pos, 6);
+ return offset ? this.bb!.__union_with_string(obj, this.bb_pos + offset) : null;
+}
+
+charactersType(index: number):Character|null {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
+}
+
+charactersTypeLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+charactersTypeArray():Uint8Array|null {
+ const offset = this.bb!.__offset(this.bb_pos, 8);
+ 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;
+}
+
+characters(index: number, obj:any|string):any|string|null {
+ const offset = this.bb!.__offset(this.bb_pos, 10);
+ return offset ? this.bb!.__union_with_string(obj, this.bb!.__vector(this.bb_pos + offset) + index * 4) : null;
+}
+
+charactersLength():number {
+ const offset = this.bb!.__offset(this.bb_pos, 10);
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
+}
+
+static getFullyQualifiedName():string {
+ return 'Movie';
+}
+
+static startMovie(builder:flatbuffers.Builder) {
+ builder.startObject(4);
+}
+
+static addMainCharacterType(builder:flatbuffers.Builder, mainCharacterType:Character) {
+ builder.addFieldInt8(0, mainCharacterType, Character.NONE);
+}
+
+static addMainCharacter(builder:flatbuffers.Builder, mainCharacterOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(1, mainCharacterOffset, 0);
+}
+
+static addCharactersType(builder:flatbuffers.Builder, charactersTypeOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(2, charactersTypeOffset, 0);
+}
+
+static createCharactersTypeVector(builder:flatbuffers.Builder, data:Character[]):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 startCharactersTypeVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(1, numElems, 1);
+}
+
+static addCharacters(builder:flatbuffers.Builder, charactersOffset:flatbuffers.Offset) {
+ builder.addFieldOffset(3, charactersOffset, 0);
+}
+
+static createCharactersVector(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 startCharactersVector(builder:flatbuffers.Builder, numElems:number) {
+ builder.startVector(4, numElems, 4);
+}
+
+static endMovie(builder:flatbuffers.Builder):flatbuffers.Offset {
+ const offset = builder.endObject();
+ return offset;
+}
+
+static finishMovieBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
+ builder.finish(offset, 'MOVI');
+}
+
+static finishSizePrefixedMovieBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
+ builder.finish(offset, 'MOVI', true);
+}
+
+static createMovie(builder:flatbuffers.Builder, mainCharacterType:Character, mainCharacterOffset:flatbuffers.Offset, charactersTypeOffset:flatbuffers.Offset, charactersOffset:flatbuffers.Offset):flatbuffers.Offset {
+ Movie.startMovie(builder);
+ Movie.addMainCharacterType(builder, mainCharacterType);
+ Movie.addMainCharacter(builder, mainCharacterOffset);
+ Movie.addCharactersType(builder, charactersTypeOffset);
+ Movie.addCharacters(builder, charactersOffset);
+ return Movie.endMovie(builder);
+}
+
+unpack(): MovieT {
+ return new MovieT(
+ this.mainCharacterType(),
+ (() => {
+ let temp = unionToCharacter(this.mainCharacterType(), this.mainCharacter.bind(this));
+ if(temp === null) { return null; }
+ if(typeof temp === 'string') { return temp; }
+ return temp.unpack()
+ })(),
+ this.bb!.createScalarList(this.charactersType.bind(this), this.charactersTypeLength()),
+ (() => {
+ let ret = [];
+ for(let targetEnumIndex = 0; targetEnumIndex < this.charactersTypeLength(); ++targetEnumIndex) {
+ let targetEnum = this.charactersType(targetEnumIndex);
+ if(targetEnum === null || Character[targetEnum!] === 'NONE') { continue; }
+
+ let temp = unionListToCharacter(targetEnum, this.characters.bind(this), targetEnumIndex);
+ if(temp === null) { continue; }
+ if(typeof temp === 'string') { ret.push(temp); continue; }
+ ret.push(temp.unpack());
+ }
+ return ret;
+ })()
+ );
+}
+
+
+unpackTo(_o: MovieT): void {
+ _o.mainCharacterType = this.mainCharacterType();
+ _o.mainCharacter = (() => {
+ let temp = unionToCharacter(this.mainCharacterType(), this.mainCharacter.bind(this));
+ if(temp === null) { return null; }
+ if(typeof temp === 'string') { return temp; }
+ return temp.unpack()
+ })();
+ _o.charactersType = this.bb!.createScalarList(this.charactersType.bind(this), this.charactersTypeLength());
+ _o.characters = (() => {
+ let ret = [];
+ for(let targetEnumIndex = 0; targetEnumIndex < this.charactersTypeLength(); ++targetEnumIndex) {
+ let targetEnum = this.charactersType(targetEnumIndex);
+ if(targetEnum === null || Character[targetEnum!] === 'NONE') { continue; }
+
+ let temp = unionListToCharacter(targetEnum, this.characters.bind(this), targetEnumIndex);
+ if(temp === null) { continue; }
+ if(typeof temp === 'string') { ret.push(temp); continue; }
+ ret.push(temp.unpack());
+ }
+ return ret;
+ })();
+}
+}
+
+export class MovieT {
+constructor(
+ public mainCharacterType: Character = Character.NONE,
+ public mainCharacter: AttackerT|BookReaderT|RapunzelT|string|null = null,
+ public charactersType: (Character)[] = [],
+ public characters: (AttackerT|BookReaderT|RapunzelT|string)[] = []
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ const mainCharacter = builder.createObjectOffset(this.mainCharacter);
+ const charactersType = Movie.createCharactersTypeVector(builder, this.charactersType);
+ const characters = Movie.createCharactersVector(builder, builder.createObjectOffsetList(this.characters));
+
+ return Movie.createMovie(builder,
+ this.mainCharacterType,
+ mainCharacter,
+ charactersType,
+ characters
+ );
+}
+}
diff --git a/tests/union_vector/rapunzel.ts b/tests/union_vector/rapunzel.ts
new file mode 100644
index 00000000..28f6e999
--- /dev/null
+++ b/tests/union_vector/rapunzel.ts
@@ -0,0 +1,63 @@
+// automatically generated by the FlatBuffers compiler, do not modify
+
+import * as flatbuffers from 'flatbuffers';
+
+
+
+export class Rapunzel {
+ bb: flatbuffers.ByteBuffer|null = null;
+ bb_pos = 0;
+__init(i:number, bb:flatbuffers.ByteBuffer):Rapunzel {
+ this.bb_pos = i;
+ this.bb = bb;
+ return this;
+}
+
+hairLength():number {
+ return this.bb!.readInt32(this.bb_pos);
+}
+
+mutate_hair_length(value:number):boolean {
+ this.bb!.writeInt32(this.bb_pos + 0, value);
+ return true;
+}
+
+static getFullyQualifiedName():string {
+ return 'Rapunzel';
+}
+
+static sizeOf():number {
+ return 4;
+}
+
+static createRapunzel(builder:flatbuffers.Builder, hair_length: number):flatbuffers.Offset {
+ builder.prep(4, 4);
+ builder.writeInt32(hair_length);
+ return builder.offset();
+}
+
+
+unpack(): RapunzelT {
+ return new RapunzelT(
+ this.hairLength()
+ );
+}
+
+
+unpackTo(_o: RapunzelT): void {
+ _o.hairLength = this.hairLength();
+}
+}
+
+export class RapunzelT {
+constructor(
+ public hairLength: number = 0
+){}
+
+
+pack(builder:flatbuffers.Builder): flatbuffers.Offset {
+ return Rapunzel.createRapunzel(builder,
+ this.hairLength
+ );
+}
+}