diff --git a/src/idl_gen_ts.cpp b/src/idl_gen_ts.cpp index c7371686b..298349d58 100644 --- a/src/idl_gen_ts.cpp +++ b/src/idl_gen_ts.cpp @@ -1975,8 +1975,7 @@ class TsGenerator : public BaseGenerator { GenDocComment(code_ptr); code += "static " + namer_.Method("add", field); code += "(builder:flatbuffers.Builder, " + argname + ":" + - GetArgType(imports, struct_def, field, /* allow null */ true) + - ") {\n"; + GetArgType(imports, struct_def, field, false) + ") {\n"; code += " builder.addField" + GenWriteMethod(field.value.type) + "("; code += NumToString(it - struct_def.fields.vec.begin()) + ", "; if (field.value.type.base_type == BASE_TYPE_BOOL) { code += "+"; } diff --git a/ts/builder.ts b/ts/builder.ts index 4ba340352..15394cfe4 100644 --- a/ts/builder.ts +++ b/ts/builder.ts @@ -1,6 +1,6 @@ import { ByteBuffer } from "./byte-buffer.js" -import { SIZEOF_SHORT, SIZE_PREFIX_LENGTH, SIZEOF_INT, FILE_IDENTIFIER_LENGTH } from "./constants.js" -import { Offset, IGeneratedObject } from "./types.js" +import { FILE_IDENTIFIER_LENGTH, SIZEOF_INT, SIZEOF_SHORT, SIZE_PREFIX_LENGTH } from "./constants.js" +import { IGeneratedObject, Offset } from "./types.js" export class Builder { private bb: ByteBuffer @@ -202,42 +202,42 @@ export class Builder { this.writeFloat64(value); } - addFieldInt8(voffset: number, value: number, defaultValue: number): void { + addFieldInt8(voffset: number, value: number, defaultValue: number|null): void { if (this.force_defaults || value != defaultValue) { this.addInt8(value); this.slot(voffset); } } - addFieldInt16(voffset: number, value: number, defaultValue: number): void { + addFieldInt16(voffset: number, value: number, defaultValue: number|null): void { if (this.force_defaults || value != defaultValue) { this.addInt16(value); this.slot(voffset); } } - addFieldInt32(voffset: number, value: number, defaultValue: number): void { + addFieldInt32(voffset: number, value: number, defaultValue: number|null): void { if (this.force_defaults || value != defaultValue) { this.addInt32(value); this.slot(voffset); } } - addFieldInt64(voffset: number, value: bigint, defaultValue: bigint): void { + addFieldInt64(voffset: number, value: bigint, defaultValue: bigint|null): void { if (this.force_defaults || value !== defaultValue) { this.addInt64(value); this.slot(voffset); } } - addFieldFloat32(voffset: number, value: number, defaultValue: number): void { + addFieldFloat32(voffset: number, value: number, defaultValue: number|null): void { if (this.force_defaults || value != defaultValue) { this.addFloat32(value); this.slot(voffset); } } - addFieldFloat64(voffset: number, value: number, defaultValue: number): void { + addFieldFloat64(voffset: number, value: number, defaultValue: number|null): void { if (this.force_defaults || value != defaultValue) { this.addFloat64(value); this.slot(voffset);