objdiff-wasm 2.0.0-beta.9 → 3.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config-schema.json +256 -0
- package/dist/interfaces/objdiff-core-diff.d.ts +33 -0
- package/dist/interfaces/objdiff-core-display.d.ts +224 -0
- package/dist/interfaces/wasi-logging-logging.d.ts +18 -0
- package/dist/objdiff.core.wasm +0 -0
- package/dist/objdiff.d.ts +7 -0
- package/dist/objdiff.js +1351 -0
- package/dist/wasi-logging.js +24 -0
- package/package.json +11 -18
- package/dist/main.d.ts +0 -765
- package/dist/main.js +0 -1415
- package/dist/main.js.map +0 -1
- package/dist/objdiff_core_bg.wasm +0 -0
- package/dist/worker.js +0 -2
- package/dist/worker.js.map +0 -1
package/dist/main.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../gen/diff_pb.ts","../src/main.ts"],"sourcesContent":["/* eslint-disable */\n// @generated by protobuf-ts 2.9.4 with parameter add_pb_suffix,eslint_disable,ts_nocheck,use_proto_field_name\n// @generated from protobuf file \"diff.proto\" (package \"objdiff.diff\", syntax proto3)\n// tslint:disable\n// @ts-nocheck\nimport type { BinaryWriteOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryWriter } from \"@protobuf-ts/runtime\";\nimport { WireType } from \"@protobuf-ts/runtime\";\nimport type { BinaryReadOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryReader } from \"@protobuf-ts/runtime\";\nimport { UnknownFieldHandler } from \"@protobuf-ts/runtime\";\nimport type { PartialMessage } from \"@protobuf-ts/runtime\";\nimport { reflectionMergePartial } from \"@protobuf-ts/runtime\";\nimport { MessageType } from \"@protobuf-ts/runtime\";\n/**\n * A symbol\n *\n * @generated from protobuf message objdiff.diff.Symbol\n */\nexport interface Symbol {\n /**\n * Name of the symbol\n *\n * @generated from protobuf field: string name = 1;\n */\n name: string;\n /**\n * Demangled name of the symbol\n *\n * @generated from protobuf field: optional string demangled_name = 2;\n */\n demangled_name?: string;\n /**\n * Symbol address\n *\n * @generated from protobuf field: uint64 address = 3;\n */\n address: bigint;\n /**\n * Symbol size\n *\n * @generated from protobuf field: uint64 size = 4;\n */\n size: bigint;\n /**\n * Bitmask of SymbolFlag\n *\n * @generated from protobuf field: uint32 flags = 5;\n */\n flags: number;\n}\n/**\n * A single parsed instruction\n *\n * @generated from protobuf message objdiff.diff.Instruction\n */\nexport interface Instruction {\n /**\n * Instruction address\n *\n * @generated from protobuf field: uint64 address = 1;\n */\n address: bigint;\n /**\n * Instruction size\n *\n * @generated from protobuf field: uint32 size = 2;\n */\n size: number;\n /**\n * Instruction opcode\n *\n * @generated from protobuf field: uint32 opcode = 3;\n */\n opcode: number;\n /**\n * Instruction mnemonic\n *\n * @generated from protobuf field: string mnemonic = 4;\n */\n mnemonic: string;\n /**\n * Instruction formatted string\n *\n * @generated from protobuf field: string formatted = 5;\n */\n formatted: string;\n /**\n * Original (unsimplified) instruction string\n *\n * @generated from protobuf field: optional string original = 6;\n */\n original?: string;\n /**\n * Instruction arguments\n *\n * @generated from protobuf field: repeated objdiff.diff.Argument arguments = 7;\n */\n arguments: Argument[];\n /**\n * Instruction relocation\n *\n * @generated from protobuf field: optional objdiff.diff.Relocation relocation = 8;\n */\n relocation?: Relocation;\n /**\n * Instruction branch destination\n *\n * @generated from protobuf field: optional uint64 branch_dest = 9;\n */\n branch_dest?: bigint;\n /**\n * Instruction line number\n *\n * @generated from protobuf field: optional uint32 line_number = 10;\n */\n line_number?: number;\n}\n/**\n * An instruction argument\n *\n * @generated from protobuf message objdiff.diff.Argument\n */\nexport interface Argument {\n /**\n * @generated from protobuf oneof: value\n */\n value: {\n oneofKind: \"plain_text\";\n /**\n * Plain text\n *\n * @generated from protobuf field: string plain_text = 1;\n */\n plain_text: string;\n } | {\n oneofKind: \"argument\";\n /**\n * Value\n *\n * @generated from protobuf field: objdiff.diff.ArgumentValue argument = 2;\n */\n argument: ArgumentValue;\n } | {\n oneofKind: \"relocation\";\n /**\n * Relocation\n *\n * @generated from protobuf field: objdiff.diff.ArgumentRelocation relocation = 3;\n */\n relocation: ArgumentRelocation;\n } | {\n oneofKind: \"branch_dest\";\n /**\n * Branch destination\n *\n * @generated from protobuf field: uint64 branch_dest = 4;\n */\n branch_dest: bigint;\n } | {\n oneofKind: undefined;\n };\n}\n/**\n * An instruction argument value\n *\n * @generated from protobuf message objdiff.diff.ArgumentValue\n */\nexport interface ArgumentValue {\n /**\n * @generated from protobuf oneof: value\n */\n value: {\n oneofKind: \"signed\";\n /**\n * Signed integer\n *\n * @generated from protobuf field: int64 signed = 1;\n */\n signed: bigint;\n } | {\n oneofKind: \"unsigned\";\n /**\n * Unsigned integer\n *\n * @generated from protobuf field: uint64 unsigned = 2;\n */\n unsigned: bigint;\n } | {\n oneofKind: \"opaque\";\n /**\n * Opaque value\n *\n * @generated from protobuf field: string opaque = 3;\n */\n opaque: string;\n } | {\n oneofKind: undefined;\n };\n}\n/**\n * Marker type for relocation arguments\n *\n * @generated from protobuf message objdiff.diff.ArgumentRelocation\n */\nexport interface ArgumentRelocation {\n}\n/**\n * @generated from protobuf message objdiff.diff.Relocation\n */\nexport interface Relocation {\n /**\n * @generated from protobuf field: uint32 type = 1;\n */\n type: number;\n /**\n * @generated from protobuf field: string type_name = 2;\n */\n type_name: string;\n /**\n * @generated from protobuf field: objdiff.diff.RelocationTarget target = 3;\n */\n target?: RelocationTarget;\n}\n/**\n * @generated from protobuf message objdiff.diff.RelocationTarget\n */\nexport interface RelocationTarget {\n /**\n * @generated from protobuf field: objdiff.diff.Symbol symbol = 1;\n */\n symbol?: Symbol;\n /**\n * @generated from protobuf field: int64 addend = 2;\n */\n addend: bigint;\n}\n/**\n * @generated from protobuf message objdiff.diff.InstructionDiff\n */\nexport interface InstructionDiff {\n /**\n * @generated from protobuf field: objdiff.diff.DiffKind diff_kind = 1;\n */\n diff_kind: DiffKind;\n /**\n * @generated from protobuf field: optional objdiff.diff.Instruction instruction = 2;\n */\n instruction?: Instruction;\n /**\n * @generated from protobuf field: optional objdiff.diff.InstructionBranchFrom branch_from = 3;\n */\n branch_from?: InstructionBranchFrom;\n /**\n * @generated from protobuf field: optional objdiff.diff.InstructionBranchTo branch_to = 4;\n */\n branch_to?: InstructionBranchTo;\n /**\n * @generated from protobuf field: repeated objdiff.diff.ArgumentDiff arg_diff = 5;\n */\n arg_diff: ArgumentDiff[];\n}\n/**\n * @generated from protobuf message objdiff.diff.ArgumentDiff\n */\nexport interface ArgumentDiff {\n /**\n * @generated from protobuf field: optional uint32 diff_index = 1;\n */\n diff_index?: number;\n}\n/**\n * @generated from protobuf message objdiff.diff.InstructionBranchFrom\n */\nexport interface InstructionBranchFrom {\n /**\n * @generated from protobuf field: repeated uint32 instruction_index = 1;\n */\n instruction_index: number[];\n /**\n * @generated from protobuf field: uint32 branch_index = 2;\n */\n branch_index: number;\n}\n/**\n * @generated from protobuf message objdiff.diff.InstructionBranchTo\n */\nexport interface InstructionBranchTo {\n /**\n * @generated from protobuf field: uint32 instruction_index = 1;\n */\n instruction_index: number;\n /**\n * @generated from protobuf field: uint32 branch_index = 2;\n */\n branch_index: number;\n}\n/**\n * @generated from protobuf message objdiff.diff.FunctionDiff\n */\nexport interface FunctionDiff {\n /**\n * @generated from protobuf field: objdiff.diff.Symbol symbol = 1;\n */\n symbol?: Symbol;\n /**\n * @generated from protobuf field: repeated objdiff.diff.InstructionDiff instructions = 2;\n */\n instructions: InstructionDiff[];\n /**\n * @generated from protobuf field: optional float match_percent = 3;\n */\n match_percent?: number;\n}\n/**\n * @generated from protobuf message objdiff.diff.DataDiff\n */\nexport interface DataDiff {\n /**\n * @generated from protobuf field: objdiff.diff.DiffKind kind = 1;\n */\n kind: DiffKind;\n /**\n * @generated from protobuf field: bytes data = 2;\n */\n data: Uint8Array;\n /**\n * May be larger than data\n *\n * @generated from protobuf field: uint64 size = 3;\n */\n size: bigint;\n}\n/**\n * @generated from protobuf message objdiff.diff.SectionDiff\n */\nexport interface SectionDiff {\n /**\n * @generated from protobuf field: string name = 1;\n */\n name: string;\n /**\n * @generated from protobuf field: objdiff.diff.SectionKind kind = 2;\n */\n kind: SectionKind;\n /**\n * @generated from protobuf field: uint64 size = 3;\n */\n size: bigint;\n /**\n * @generated from protobuf field: uint64 address = 4;\n */\n address: bigint;\n /**\n * @generated from protobuf field: repeated objdiff.diff.FunctionDiff functions = 5;\n */\n functions: FunctionDiff[];\n /**\n * @generated from protobuf field: repeated objdiff.diff.DataDiff data = 6;\n */\n data: DataDiff[];\n /**\n * @generated from protobuf field: optional float match_percent = 7;\n */\n match_percent?: number;\n}\n/**\n * @generated from protobuf message objdiff.diff.ObjectDiff\n */\nexport interface ObjectDiff {\n /**\n * @generated from protobuf field: repeated objdiff.diff.SectionDiff sections = 1;\n */\n sections: SectionDiff[];\n}\n/**\n * @generated from protobuf message objdiff.diff.DiffResult\n */\nexport interface DiffResult {\n /**\n * @generated from protobuf field: optional objdiff.diff.ObjectDiff left = 1;\n */\n left?: ObjectDiff;\n /**\n * @generated from protobuf field: optional objdiff.diff.ObjectDiff right = 2;\n */\n right?: ObjectDiff;\n}\n/**\n * Symbol visibility flags\n *\n * @generated from protobuf enum objdiff.diff.SymbolFlag\n */\nexport enum SymbolFlag {\n /**\n * @generated from protobuf enum value: SYMBOL_NONE = 0;\n */\n SYMBOL_NONE = 0,\n /**\n * @generated from protobuf enum value: SYMBOL_GLOBAL = 1;\n */\n SYMBOL_GLOBAL = 1,\n /**\n * @generated from protobuf enum value: SYMBOL_LOCAL = 2;\n */\n SYMBOL_LOCAL = 2,\n /**\n * @generated from protobuf enum value: SYMBOL_WEAK = 3;\n */\n SYMBOL_WEAK = 3,\n /**\n * @generated from protobuf enum value: SYMBOL_COMMON = 4;\n */\n SYMBOL_COMMON = 4,\n /**\n * @generated from protobuf enum value: SYMBOL_HIDDEN = 5;\n */\n SYMBOL_HIDDEN = 5\n}\n/**\n * @generated from protobuf enum objdiff.diff.DiffKind\n */\nexport enum DiffKind {\n /**\n * @generated from protobuf enum value: DIFF_NONE = 0;\n */\n DIFF_NONE = 0,\n /**\n * @generated from protobuf enum value: DIFF_REPLACE = 1;\n */\n DIFF_REPLACE = 1,\n /**\n * @generated from protobuf enum value: DIFF_DELETE = 2;\n */\n DIFF_DELETE = 2,\n /**\n * @generated from protobuf enum value: DIFF_INSERT = 3;\n */\n DIFF_INSERT = 3,\n /**\n * @generated from protobuf enum value: DIFF_OP_MISMATCH = 4;\n */\n DIFF_OP_MISMATCH = 4,\n /**\n * @generated from protobuf enum value: DIFF_ARG_MISMATCH = 5;\n */\n DIFF_ARG_MISMATCH = 5\n}\n/**\n * @generated from protobuf enum objdiff.diff.SectionKind\n */\nexport enum SectionKind {\n /**\n * @generated from protobuf enum value: SECTION_UNKNOWN = 0;\n */\n SECTION_UNKNOWN = 0,\n /**\n * @generated from protobuf enum value: SECTION_TEXT = 1;\n */\n SECTION_TEXT = 1,\n /**\n * @generated from protobuf enum value: SECTION_DATA = 2;\n */\n SECTION_DATA = 2,\n /**\n * @generated from protobuf enum value: SECTION_BSS = 3;\n */\n SECTION_BSS = 3,\n /**\n * @generated from protobuf enum value: SECTION_COMMON = 4;\n */\n SECTION_COMMON = 4\n}\n// @generated message type with reflection information, may provide speed optimized methods\nclass Symbol$Type extends MessageType<Symbol> {\n constructor() {\n super(\"objdiff.diff.Symbol\", [\n { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"demangled_name\", kind: \"scalar\", localName: \"demangled_name\", opt: true, T: 9 /*ScalarType.STRING*/ },\n { no: 3, name: \"address\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 4, name: \"size\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 5, name: \"flags\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ }\n ]);\n }\n create(value?: PartialMessage<Symbol>): Symbol {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.name = \"\";\n message.address = 0n;\n message.size = 0n;\n message.flags = 0;\n if (value !== undefined)\n reflectionMergePartial<Symbol>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Symbol): Symbol {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string name */ 1:\n message.name = reader.string();\n break;\n case /* optional string demangled_name */ 2:\n message.demangled_name = reader.string();\n break;\n case /* uint64 address */ 3:\n message.address = reader.uint64().toBigInt();\n break;\n case /* uint64 size */ 4:\n message.size = reader.uint64().toBigInt();\n break;\n case /* uint32 flags */ 5:\n message.flags = reader.uint32();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Symbol, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string name = 1; */\n if (message.name !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.name);\n /* optional string demangled_name = 2; */\n if (message.demangled_name !== undefined)\n writer.tag(2, WireType.LengthDelimited).string(message.demangled_name);\n /* uint64 address = 3; */\n if (message.address !== 0n)\n writer.tag(3, WireType.Varint).uint64(message.address);\n /* uint64 size = 4; */\n if (message.size !== 0n)\n writer.tag(4, WireType.Varint).uint64(message.size);\n /* uint32 flags = 5; */\n if (message.flags !== 0)\n writer.tag(5, WireType.Varint).uint32(message.flags);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.Symbol\n */\nexport const Symbol = new Symbol$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Instruction$Type extends MessageType<Instruction> {\n constructor() {\n super(\"objdiff.diff.Instruction\", [\n { no: 1, name: \"address\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 2, name: \"size\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n { no: 3, name: \"opcode\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n { no: 4, name: \"mnemonic\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 5, name: \"formatted\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 6, name: \"original\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n { no: 7, name: \"arguments\", kind: \"message\", repeat: 1 /*RepeatType.PACKED*/, T: () => Argument },\n { no: 8, name: \"relocation\", kind: \"message\", T: () => Relocation },\n { no: 9, name: \"branch_dest\", kind: \"scalar\", localName: \"branch_dest\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 10, name: \"line_number\", kind: \"scalar\", localName: \"line_number\", opt: true, T: 13 /*ScalarType.UINT32*/ }\n ]);\n }\n create(value?: PartialMessage<Instruction>): Instruction {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.address = 0n;\n message.size = 0;\n message.opcode = 0;\n message.mnemonic = \"\";\n message.formatted = \"\";\n message.arguments = [];\n if (value !== undefined)\n reflectionMergePartial<Instruction>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Instruction): Instruction {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint64 address */ 1:\n message.address = reader.uint64().toBigInt();\n break;\n case /* uint32 size */ 2:\n message.size = reader.uint32();\n break;\n case /* uint32 opcode */ 3:\n message.opcode = reader.uint32();\n break;\n case /* string mnemonic */ 4:\n message.mnemonic = reader.string();\n break;\n case /* string formatted */ 5:\n message.formatted = reader.string();\n break;\n case /* optional string original */ 6:\n message.original = reader.string();\n break;\n case /* repeated objdiff.diff.Argument arguments */ 7:\n message.arguments.push(Argument.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* optional objdiff.diff.Relocation relocation */ 8:\n message.relocation = Relocation.internalBinaryRead(reader, reader.uint32(), options, message.relocation);\n break;\n case /* optional uint64 branch_dest */ 9:\n message.branch_dest = reader.uint64().toBigInt();\n break;\n case /* optional uint32 line_number */ 10:\n message.line_number = reader.uint32();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Instruction, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint64 address = 1; */\n if (message.address !== 0n)\n writer.tag(1, WireType.Varint).uint64(message.address);\n /* uint32 size = 2; */\n if (message.size !== 0)\n writer.tag(2, WireType.Varint).uint32(message.size);\n /* uint32 opcode = 3; */\n if (message.opcode !== 0)\n writer.tag(3, WireType.Varint).uint32(message.opcode);\n /* string mnemonic = 4; */\n if (message.mnemonic !== \"\")\n writer.tag(4, WireType.LengthDelimited).string(message.mnemonic);\n /* string formatted = 5; */\n if (message.formatted !== \"\")\n writer.tag(5, WireType.LengthDelimited).string(message.formatted);\n /* optional string original = 6; */\n if (message.original !== undefined)\n writer.tag(6, WireType.LengthDelimited).string(message.original);\n /* repeated objdiff.diff.Argument arguments = 7; */\n for (let i = 0; i < message.arguments.length; i++)\n Argument.internalBinaryWrite(message.arguments[i], writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n /* optional objdiff.diff.Relocation relocation = 8; */\n if (message.relocation)\n Relocation.internalBinaryWrite(message.relocation, writer.tag(8, WireType.LengthDelimited).fork(), options).join();\n /* optional uint64 branch_dest = 9; */\n if (message.branch_dest !== undefined)\n writer.tag(9, WireType.Varint).uint64(message.branch_dest);\n /* optional uint32 line_number = 10; */\n if (message.line_number !== undefined)\n writer.tag(10, WireType.Varint).uint32(message.line_number);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.Instruction\n */\nexport const Instruction = new Instruction$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Argument$Type extends MessageType<Argument> {\n constructor() {\n super(\"objdiff.diff.Argument\", [\n { no: 1, name: \"plain_text\", kind: \"scalar\", localName: \"plain_text\", oneof: \"value\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"argument\", kind: \"message\", oneof: \"value\", T: () => ArgumentValue },\n { no: 3, name: \"relocation\", kind: \"message\", oneof: \"value\", T: () => ArgumentRelocation },\n { no: 4, name: \"branch_dest\", kind: \"scalar\", localName: \"branch_dest\", oneof: \"value\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n ]);\n }\n create(value?: PartialMessage<Argument>): Argument {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.value = { oneofKind: undefined };\n if (value !== undefined)\n reflectionMergePartial<Argument>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Argument): Argument {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string plain_text */ 1:\n message.value = {\n oneofKind: \"plain_text\",\n plain_text: reader.string()\n };\n break;\n case /* objdiff.diff.ArgumentValue argument */ 2:\n message.value = {\n oneofKind: \"argument\",\n argument: ArgumentValue.internalBinaryRead(reader, reader.uint32(), options, (message.value as any).argument)\n };\n break;\n case /* objdiff.diff.ArgumentRelocation relocation */ 3:\n message.value = {\n oneofKind: \"relocation\",\n relocation: ArgumentRelocation.internalBinaryRead(reader, reader.uint32(), options, (message.value as any).relocation)\n };\n break;\n case /* uint64 branch_dest */ 4:\n message.value = {\n oneofKind: \"branch_dest\",\n branch_dest: reader.uint64().toBigInt()\n };\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Argument, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string plain_text = 1; */\n if (message.value.oneofKind === \"plain_text\")\n writer.tag(1, WireType.LengthDelimited).string(message.value.plain_text);\n /* objdiff.diff.ArgumentValue argument = 2; */\n if (message.value.oneofKind === \"argument\")\n ArgumentValue.internalBinaryWrite(message.value.argument, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n /* objdiff.diff.ArgumentRelocation relocation = 3; */\n if (message.value.oneofKind === \"relocation\")\n ArgumentRelocation.internalBinaryWrite(message.value.relocation, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* uint64 branch_dest = 4; */\n if (message.value.oneofKind === \"branch_dest\")\n writer.tag(4, WireType.Varint).uint64(message.value.branch_dest);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.Argument\n */\nexport const Argument = new Argument$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ArgumentValue$Type extends MessageType<ArgumentValue> {\n constructor() {\n super(\"objdiff.diff.ArgumentValue\", [\n { no: 1, name: \"signed\", kind: \"scalar\", oneof: \"value\", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 2, name: \"unsigned\", kind: \"scalar\", oneof: \"value\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 3, name: \"opaque\", kind: \"scalar\", oneof: \"value\", T: 9 /*ScalarType.STRING*/ }\n ]);\n }\n create(value?: PartialMessage<ArgumentValue>): ArgumentValue {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.value = { oneofKind: undefined };\n if (value !== undefined)\n reflectionMergePartial<ArgumentValue>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ArgumentValue): ArgumentValue {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* int64 signed */ 1:\n message.value = {\n oneofKind: \"signed\",\n signed: reader.int64().toBigInt()\n };\n break;\n case /* uint64 unsigned */ 2:\n message.value = {\n oneofKind: \"unsigned\",\n unsigned: reader.uint64().toBigInt()\n };\n break;\n case /* string opaque */ 3:\n message.value = {\n oneofKind: \"opaque\",\n opaque: reader.string()\n };\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: ArgumentValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* int64 signed = 1; */\n if (message.value.oneofKind === \"signed\")\n writer.tag(1, WireType.Varint).int64(message.value.signed);\n /* uint64 unsigned = 2; */\n if (message.value.oneofKind === \"unsigned\")\n writer.tag(2, WireType.Varint).uint64(message.value.unsigned);\n /* string opaque = 3; */\n if (message.value.oneofKind === \"opaque\")\n writer.tag(3, WireType.LengthDelimited).string(message.value.opaque);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.ArgumentValue\n */\nexport const ArgumentValue = new ArgumentValue$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ArgumentRelocation$Type extends MessageType<ArgumentRelocation> {\n constructor() {\n super(\"objdiff.diff.ArgumentRelocation\", []);\n }\n create(value?: PartialMessage<ArgumentRelocation>): ArgumentRelocation {\n const message = globalThis.Object.create((this.messagePrototype!));\n if (value !== undefined)\n reflectionMergePartial<ArgumentRelocation>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ArgumentRelocation): ArgumentRelocation {\n return target ?? this.create();\n }\n internalBinaryWrite(message: ArgumentRelocation, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.ArgumentRelocation\n */\nexport const ArgumentRelocation = new ArgumentRelocation$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Relocation$Type extends MessageType<Relocation> {\n constructor() {\n super(\"objdiff.diff.Relocation\", [\n { no: 1, name: \"type\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n { no: 2, name: \"type_name\", kind: \"scalar\", localName: \"type_name\", T: 9 /*ScalarType.STRING*/ },\n { no: 3, name: \"target\", kind: \"message\", T: () => RelocationTarget }\n ]);\n }\n create(value?: PartialMessage<Relocation>): Relocation {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.type = 0;\n message.type_name = \"\";\n if (value !== undefined)\n reflectionMergePartial<Relocation>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Relocation): Relocation {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint32 type */ 1:\n message.type = reader.uint32();\n break;\n case /* string type_name */ 2:\n message.type_name = reader.string();\n break;\n case /* objdiff.diff.RelocationTarget target */ 3:\n message.target = RelocationTarget.internalBinaryRead(reader, reader.uint32(), options, message.target);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Relocation, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint32 type = 1; */\n if (message.type !== 0)\n writer.tag(1, WireType.Varint).uint32(message.type);\n /* string type_name = 2; */\n if (message.type_name !== \"\")\n writer.tag(2, WireType.LengthDelimited).string(message.type_name);\n /* objdiff.diff.RelocationTarget target = 3; */\n if (message.target)\n RelocationTarget.internalBinaryWrite(message.target, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.Relocation\n */\nexport const Relocation = new Relocation$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass RelocationTarget$Type extends MessageType<RelocationTarget> {\n constructor() {\n super(\"objdiff.diff.RelocationTarget\", [\n { no: 1, name: \"symbol\", kind: \"message\", T: () => Symbol },\n { no: 2, name: \"addend\", kind: \"scalar\", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }\n ]);\n }\n create(value?: PartialMessage<RelocationTarget>): RelocationTarget {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.addend = 0n;\n if (value !== undefined)\n reflectionMergePartial<RelocationTarget>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RelocationTarget): RelocationTarget {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* objdiff.diff.Symbol symbol */ 1:\n message.symbol = Symbol.internalBinaryRead(reader, reader.uint32(), options, message.symbol);\n break;\n case /* int64 addend */ 2:\n message.addend = reader.int64().toBigInt();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: RelocationTarget, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* objdiff.diff.Symbol symbol = 1; */\n if (message.symbol)\n Symbol.internalBinaryWrite(message.symbol, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* int64 addend = 2; */\n if (message.addend !== 0n)\n writer.tag(2, WireType.Varint).int64(message.addend);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.RelocationTarget\n */\nexport const RelocationTarget = new RelocationTarget$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass InstructionDiff$Type extends MessageType<InstructionDiff> {\n constructor() {\n super(\"objdiff.diff.InstructionDiff\", [\n { no: 1, name: \"diff_kind\", kind: \"enum\", localName: \"diff_kind\", T: () => [\"objdiff.diff.DiffKind\", DiffKind] },\n { no: 2, name: \"instruction\", kind: \"message\", T: () => Instruction },\n { no: 3, name: \"branch_from\", kind: \"message\", localName: \"branch_from\", T: () => InstructionBranchFrom },\n { no: 4, name: \"branch_to\", kind: \"message\", localName: \"branch_to\", T: () => InstructionBranchTo },\n { no: 5, name: \"arg_diff\", kind: \"message\", localName: \"arg_diff\", repeat: 1 /*RepeatType.PACKED*/, T: () => ArgumentDiff }\n ]);\n }\n create(value?: PartialMessage<InstructionDiff>): InstructionDiff {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.diff_kind = 0;\n message.arg_diff = [];\n if (value !== undefined)\n reflectionMergePartial<InstructionDiff>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InstructionDiff): InstructionDiff {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* objdiff.diff.DiffKind diff_kind */ 1:\n message.diff_kind = reader.int32();\n break;\n case /* optional objdiff.diff.Instruction instruction */ 2:\n message.instruction = Instruction.internalBinaryRead(reader, reader.uint32(), options, message.instruction);\n break;\n case /* optional objdiff.diff.InstructionBranchFrom branch_from */ 3:\n message.branch_from = InstructionBranchFrom.internalBinaryRead(reader, reader.uint32(), options, message.branch_from);\n break;\n case /* optional objdiff.diff.InstructionBranchTo branch_to */ 4:\n message.branch_to = InstructionBranchTo.internalBinaryRead(reader, reader.uint32(), options, message.branch_to);\n break;\n case /* repeated objdiff.diff.ArgumentDiff arg_diff */ 5:\n message.arg_diff.push(ArgumentDiff.internalBinaryRead(reader, reader.uint32(), options));\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: InstructionDiff, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* objdiff.diff.DiffKind diff_kind = 1; */\n if (message.diff_kind !== 0)\n writer.tag(1, WireType.Varint).int32(message.diff_kind);\n /* optional objdiff.diff.Instruction instruction = 2; */\n if (message.instruction)\n Instruction.internalBinaryWrite(message.instruction, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n /* optional objdiff.diff.InstructionBranchFrom branch_from = 3; */\n if (message.branch_from)\n InstructionBranchFrom.internalBinaryWrite(message.branch_from, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* optional objdiff.diff.InstructionBranchTo branch_to = 4; */\n if (message.branch_to)\n InstructionBranchTo.internalBinaryWrite(message.branch_to, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n /* repeated objdiff.diff.ArgumentDiff arg_diff = 5; */\n for (let i = 0; i < message.arg_diff.length; i++)\n ArgumentDiff.internalBinaryWrite(message.arg_diff[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.InstructionDiff\n */\nexport const InstructionDiff = new InstructionDiff$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ArgumentDiff$Type extends MessageType<ArgumentDiff> {\n constructor() {\n super(\"objdiff.diff.ArgumentDiff\", [\n { no: 1, name: \"diff_index\", kind: \"scalar\", localName: \"diff_index\", opt: true, T: 13 /*ScalarType.UINT32*/ }\n ]);\n }\n create(value?: PartialMessage<ArgumentDiff>): ArgumentDiff {\n const message = globalThis.Object.create((this.messagePrototype!));\n if (value !== undefined)\n reflectionMergePartial<ArgumentDiff>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ArgumentDiff): ArgumentDiff {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* optional uint32 diff_index */ 1:\n message.diff_index = reader.uint32();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: ArgumentDiff, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* optional uint32 diff_index = 1; */\n if (message.diff_index !== undefined)\n writer.tag(1, WireType.Varint).uint32(message.diff_index);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.ArgumentDiff\n */\nexport const ArgumentDiff = new ArgumentDiff$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass InstructionBranchFrom$Type extends MessageType<InstructionBranchFrom> {\n constructor() {\n super(\"objdiff.diff.InstructionBranchFrom\", [\n { no: 1, name: \"instruction_index\", kind: \"scalar\", localName: \"instruction_index\", repeat: 1 /*RepeatType.PACKED*/, T: 13 /*ScalarType.UINT32*/ },\n { no: 2, name: \"branch_index\", kind: \"scalar\", localName: \"branch_index\", T: 13 /*ScalarType.UINT32*/ }\n ]);\n }\n create(value?: PartialMessage<InstructionBranchFrom>): InstructionBranchFrom {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.instruction_index = [];\n message.branch_index = 0;\n if (value !== undefined)\n reflectionMergePartial<InstructionBranchFrom>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InstructionBranchFrom): InstructionBranchFrom {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* repeated uint32 instruction_index */ 1:\n if (wireType === WireType.LengthDelimited)\n for (let e = reader.int32() + reader.pos; reader.pos < e;)\n message.instruction_index.push(reader.uint32());\n else\n message.instruction_index.push(reader.uint32());\n break;\n case /* uint32 branch_index */ 2:\n message.branch_index = reader.uint32();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: InstructionBranchFrom, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* repeated uint32 instruction_index = 1; */\n if (message.instruction_index.length) {\n writer.tag(1, WireType.LengthDelimited).fork();\n for (let i = 0; i < message.instruction_index.length; i++)\n writer.uint32(message.instruction_index[i]);\n writer.join();\n }\n /* uint32 branch_index = 2; */\n if (message.branch_index !== 0)\n writer.tag(2, WireType.Varint).uint32(message.branch_index);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.InstructionBranchFrom\n */\nexport const InstructionBranchFrom = new InstructionBranchFrom$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass InstructionBranchTo$Type extends MessageType<InstructionBranchTo> {\n constructor() {\n super(\"objdiff.diff.InstructionBranchTo\", [\n { no: 1, name: \"instruction_index\", kind: \"scalar\", localName: \"instruction_index\", T: 13 /*ScalarType.UINT32*/ },\n { no: 2, name: \"branch_index\", kind: \"scalar\", localName: \"branch_index\", T: 13 /*ScalarType.UINT32*/ }\n ]);\n }\n create(value?: PartialMessage<InstructionBranchTo>): InstructionBranchTo {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.instruction_index = 0;\n message.branch_index = 0;\n if (value !== undefined)\n reflectionMergePartial<InstructionBranchTo>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InstructionBranchTo): InstructionBranchTo {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint32 instruction_index */ 1:\n message.instruction_index = reader.uint32();\n break;\n case /* uint32 branch_index */ 2:\n message.branch_index = reader.uint32();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: InstructionBranchTo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint32 instruction_index = 1; */\n if (message.instruction_index !== 0)\n writer.tag(1, WireType.Varint).uint32(message.instruction_index);\n /* uint32 branch_index = 2; */\n if (message.branch_index !== 0)\n writer.tag(2, WireType.Varint).uint32(message.branch_index);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.InstructionBranchTo\n */\nexport const InstructionBranchTo = new InstructionBranchTo$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass FunctionDiff$Type extends MessageType<FunctionDiff> {\n constructor() {\n super(\"objdiff.diff.FunctionDiff\", [\n { no: 1, name: \"symbol\", kind: \"message\", T: () => Symbol },\n { no: 2, name: \"instructions\", kind: \"message\", repeat: 1 /*RepeatType.PACKED*/, T: () => InstructionDiff },\n { no: 3, name: \"match_percent\", kind: \"scalar\", localName: \"match_percent\", opt: true, T: 2 /*ScalarType.FLOAT*/ }\n ]);\n }\n create(value?: PartialMessage<FunctionDiff>): FunctionDiff {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.instructions = [];\n if (value !== undefined)\n reflectionMergePartial<FunctionDiff>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FunctionDiff): FunctionDiff {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* objdiff.diff.Symbol symbol */ 1:\n message.symbol = Symbol.internalBinaryRead(reader, reader.uint32(), options, message.symbol);\n break;\n case /* repeated objdiff.diff.InstructionDiff instructions */ 2:\n message.instructions.push(InstructionDiff.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* optional float match_percent */ 3:\n message.match_percent = reader.float();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: FunctionDiff, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* objdiff.diff.Symbol symbol = 1; */\n if (message.symbol)\n Symbol.internalBinaryWrite(message.symbol, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* repeated objdiff.diff.InstructionDiff instructions = 2; */\n for (let i = 0; i < message.instructions.length; i++)\n InstructionDiff.internalBinaryWrite(message.instructions[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n /* optional float match_percent = 3; */\n if (message.match_percent !== undefined)\n writer.tag(3, WireType.Bit32).float(message.match_percent);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.FunctionDiff\n */\nexport const FunctionDiff = new FunctionDiff$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DataDiff$Type extends MessageType<DataDiff> {\n constructor() {\n super(\"objdiff.diff.DataDiff\", [\n { no: 1, name: \"kind\", kind: \"enum\", T: () => [\"objdiff.diff.DiffKind\", DiffKind] },\n { no: 2, name: \"data\", kind: \"scalar\", T: 12 /*ScalarType.BYTES*/ },\n { no: 3, name: \"size\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n ]);\n }\n create(value?: PartialMessage<DataDiff>): DataDiff {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.kind = 0;\n message.data = new Uint8Array(0);\n message.size = 0n;\n if (value !== undefined)\n reflectionMergePartial<DataDiff>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataDiff): DataDiff {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* objdiff.diff.DiffKind kind */ 1:\n message.kind = reader.int32();\n break;\n case /* bytes data */ 2:\n message.data = reader.bytes();\n break;\n case /* uint64 size */ 3:\n message.size = reader.uint64().toBigInt();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: DataDiff, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* objdiff.diff.DiffKind kind = 1; */\n if (message.kind !== 0)\n writer.tag(1, WireType.Varint).int32(message.kind);\n /* bytes data = 2; */\n if (message.data.length)\n writer.tag(2, WireType.LengthDelimited).bytes(message.data);\n /* uint64 size = 3; */\n if (message.size !== 0n)\n writer.tag(3, WireType.Varint).uint64(message.size);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.DataDiff\n */\nexport const DataDiff = new DataDiff$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SectionDiff$Type extends MessageType<SectionDiff> {\n constructor() {\n super(\"objdiff.diff.SectionDiff\", [\n { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"kind\", kind: \"enum\", T: () => [\"objdiff.diff.SectionKind\", SectionKind] },\n { no: 3, name: \"size\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 4, name: \"address\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 5, name: \"functions\", kind: \"message\", repeat: 1 /*RepeatType.PACKED*/, T: () => FunctionDiff },\n { no: 6, name: \"data\", kind: \"message\", repeat: 1 /*RepeatType.PACKED*/, T: () => DataDiff },\n { no: 7, name: \"match_percent\", kind: \"scalar\", localName: \"match_percent\", opt: true, T: 2 /*ScalarType.FLOAT*/ }\n ]);\n }\n create(value?: PartialMessage<SectionDiff>): SectionDiff {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.name = \"\";\n message.kind = 0;\n message.size = 0n;\n message.address = 0n;\n message.functions = [];\n message.data = [];\n if (value !== undefined)\n reflectionMergePartial<SectionDiff>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SectionDiff): SectionDiff {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string name */ 1:\n message.name = reader.string();\n break;\n case /* objdiff.diff.SectionKind kind */ 2:\n message.kind = reader.int32();\n break;\n case /* uint64 size */ 3:\n message.size = reader.uint64().toBigInt();\n break;\n case /* uint64 address */ 4:\n message.address = reader.uint64().toBigInt();\n break;\n case /* repeated objdiff.diff.FunctionDiff functions */ 5:\n message.functions.push(FunctionDiff.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* repeated objdiff.diff.DataDiff data */ 6:\n message.data.push(DataDiff.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* optional float match_percent */ 7:\n message.match_percent = reader.float();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: SectionDiff, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string name = 1; */\n if (message.name !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.name);\n /* objdiff.diff.SectionKind kind = 2; */\n if (message.kind !== 0)\n writer.tag(2, WireType.Varint).int32(message.kind);\n /* uint64 size = 3; */\n if (message.size !== 0n)\n writer.tag(3, WireType.Varint).uint64(message.size);\n /* uint64 address = 4; */\n if (message.address !== 0n)\n writer.tag(4, WireType.Varint).uint64(message.address);\n /* repeated objdiff.diff.FunctionDiff functions = 5; */\n for (let i = 0; i < message.functions.length; i++)\n FunctionDiff.internalBinaryWrite(message.functions[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n /* repeated objdiff.diff.DataDiff data = 6; */\n for (let i = 0; i < message.data.length; i++)\n DataDiff.internalBinaryWrite(message.data[i], writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n /* optional float match_percent = 7; */\n if (message.match_percent !== undefined)\n writer.tag(7, WireType.Bit32).float(message.match_percent);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.SectionDiff\n */\nexport const SectionDiff = new SectionDiff$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ObjectDiff$Type extends MessageType<ObjectDiff> {\n constructor() {\n super(\"objdiff.diff.ObjectDiff\", [\n { no: 1, name: \"sections\", kind: \"message\", repeat: 1 /*RepeatType.PACKED*/, T: () => SectionDiff }\n ]);\n }\n create(value?: PartialMessage<ObjectDiff>): ObjectDiff {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.sections = [];\n if (value !== undefined)\n reflectionMergePartial<ObjectDiff>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ObjectDiff): ObjectDiff {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* repeated objdiff.diff.SectionDiff sections */ 1:\n message.sections.push(SectionDiff.internalBinaryRead(reader, reader.uint32(), options));\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: ObjectDiff, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* repeated objdiff.diff.SectionDiff sections = 1; */\n for (let i = 0; i < message.sections.length; i++)\n SectionDiff.internalBinaryWrite(message.sections[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.ObjectDiff\n */\nexport const ObjectDiff = new ObjectDiff$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DiffResult$Type extends MessageType<DiffResult> {\n constructor() {\n super(\"objdiff.diff.DiffResult\", [\n { no: 1, name: \"left\", kind: \"message\", T: () => ObjectDiff },\n { no: 2, name: \"right\", kind: \"message\", T: () => ObjectDiff }\n ]);\n }\n create(value?: PartialMessage<DiffResult>): DiffResult {\n const message = globalThis.Object.create((this.messagePrototype!));\n if (value !== undefined)\n reflectionMergePartial<DiffResult>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DiffResult): DiffResult {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* optional objdiff.diff.ObjectDiff left */ 1:\n message.left = ObjectDiff.internalBinaryRead(reader, reader.uint32(), options, message.left);\n break;\n case /* optional objdiff.diff.ObjectDiff right */ 2:\n message.right = ObjectDiff.internalBinaryRead(reader, reader.uint32(), options, message.right);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: DiffResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* optional objdiff.diff.ObjectDiff left = 1; */\n if (message.left)\n ObjectDiff.internalBinaryWrite(message.left, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* optional objdiff.diff.ObjectDiff right = 2; */\n if (message.right)\n ObjectDiff.internalBinaryWrite(message.right, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message objdiff.diff.DiffResult\n */\nexport const DiffResult = new DiffResult$Type();\n","import {ArgumentValue, DiffResult, InstructionDiff, RelocationTarget} from \"../gen/diff_pb\";\nimport type {\n ArmArchVersion,\n ArmR9Usage,\n DiffObjConfig as WasmDiffObjConfig,\n MipsAbi,\n MipsInstrCategory,\n X86Formatter\n} from '../pkg';\nimport {HandlerData, InMessage, OutMessage} from './worker';\n\n// Export wasm types\nexport type DiffObjConfig = Omit<Partial<WasmDiffObjConfig>, 'free'>;\nexport {ArmArchVersion, ArmR9Usage, MipsAbi, MipsInstrCategory, X86Formatter};\n\n// Export protobuf types\nexport * from '../gen/diff_pb';\n\ninterface PromiseCallbacks<T> {\n start: number;\n resolve: (value: T) => void;\n reject: (reason?: string) => void;\n}\n\nlet workerInit = false;\nlet workerCallbacks: PromiseCallbacks<Worker> | null = null;\nconst workerReady = new Promise<Worker>((resolve, reject) => {\n workerCallbacks = {start: performance.now(), resolve, reject};\n});\n\nexport async function initialize(data?: {\n workerUrl?: string | URL,\n wasmUrl?: string | URL, // Relative to worker URL\n}): Promise<Worker> {\n if (workerInit) {\n return workerReady;\n }\n workerInit = true;\n let {workerUrl, wasmUrl} = data || {};\n if (!workerUrl) {\n try {\n // Bundlers will convert this into an asset URL\n workerUrl = new URL('./worker.js', import.meta.url);\n } catch (_) {\n workerUrl = 'worker.js';\n }\n }\n if (!wasmUrl) {\n try {\n // Bundlers will convert this into an asset URL\n wasmUrl = new URL('./objdiff_core_bg.wasm', import.meta.url);\n } catch (_) {\n wasmUrl = 'objdiff_core_bg.js';\n }\n }\n const worker = new Worker(workerUrl, {\n name: 'objdiff',\n type: 'module',\n });\n worker.onmessage = onMessage;\n worker.onerror = (event) => {\n console.error(\"Worker error\", event);\n workerCallbacks.reject(\"Worker failed to initialize, wrong URL?\");\n };\n defer<boolean>({\n type: 'init',\n // URL can't be sent directly\n wasmUrl: wasmUrl.toString(),\n }, worker).then(() => {\n workerCallbacks.resolve(worker);\n }, (e) => {\n workerCallbacks.reject(e);\n throw e;\n });\n return workerReady;\n}\n\nlet globalMessageId = 0;\nconst messageCallbacks = new Map<number, PromiseCallbacks<unknown>>();\n\nfunction onMessage(event: MessageEvent<OutMessage>) {\n switch (event.data.type) {\n case 'result': {\n const {result, error, messageId} = event.data;\n const callbacks = messageCallbacks.get(messageId);\n if (callbacks) {\n const end = performance.now();\n console.debug(`Message ${messageId} took ${end - callbacks.start}ms`);\n messageCallbacks.delete(messageId);\n if (error != null) {\n callbacks.reject(error);\n } else {\n callbacks.resolve(result);\n }\n } else {\n console.warn(`Unknown message ID ${messageId}`);\n }\n break;\n }\n }\n}\n\nasync function defer<T>(message: HandlerData, worker?: Worker): Promise<T> {\n worker = worker || await initialize();\n const messageId = globalMessageId++;\n const promise = new Promise<T>((resolve, reject) => {\n messageCallbacks.set(messageId, {start: performance.now(), resolve, reject});\n });\n worker.postMessage({\n ...message,\n messageId\n });\n return promise;\n}\n\nexport async function runDiff(left: Uint8Array | undefined, right: Uint8Array | undefined, config?: DiffObjConfig): Promise<DiffResult> {\n const data = await defer<Uint8Array>({\n type: 'run_diff_proto',\n left,\n right,\n config\n } as InMessage);\n const parseStart = performance.now();\n const result = DiffResult.fromBinary(data, {readUnknownField: false});\n const end = performance.now();\n console.debug(`Parsing message took ${end - parseStart}ms`);\n return result;\n}\n\nexport type DiffText =\n DiffTextBasic\n | DiffTextBasicColor\n | DiffTextAddress\n | DiffTextLine\n | DiffTextOpcode\n | DiffTextArgument\n | DiffTextSymbol\n | DiffTextBranchDest\n | DiffTextSpacing;\n\ntype DiffTextBase = {\n diff_index?: number,\n};\nexport type DiffTextBasic = DiffTextBase & {\n type: 'basic',\n text: string,\n};\nexport type DiffTextBasicColor = DiffTextBase & {\n type: 'basic_color',\n text: string,\n index: number,\n};\nexport type DiffTextAddress = DiffTextBase & {\n type: 'address',\n address: bigint,\n};\nexport type DiffTextLine = DiffTextBase & {\n type: 'line',\n line_number: number,\n};\nexport type DiffTextOpcode = DiffTextBase & {\n type: 'opcode',\n mnemonic: string,\n opcode: number,\n};\nexport type DiffTextArgument = DiffTextBase & {\n type: 'argument',\n value: ArgumentValue,\n};\nexport type DiffTextSymbol = DiffTextBase & {\n type: 'symbol',\n target: RelocationTarget,\n};\nexport type DiffTextBranchDest = DiffTextBase & {\n type: 'branch_dest',\n address: bigint,\n};\nexport type DiffTextSpacing = DiffTextBase & {\n type: 'spacing',\n count: number,\n};\n\n// TypeScript workaround for oneof types\nexport function oneof<T extends { oneofKind: string }>(type: T): T & { oneofKind: string } {\n return type as T & { oneofKind: string };\n}\n\n// Native JavaScript implementation of objdiff_core::diff::display::display_diff\nexport function displayDiff(diff: InstructionDiff, baseAddr: bigint, cb: (text: DiffText) => void) {\n const ins = diff.instruction;\n if (!ins) {\n return;\n }\n if (ins.line_number != null) {\n cb({type: 'line', line_number: ins.line_number});\n }\n cb({type: 'address', address: ins.address - baseAddr});\n if (diff.branch_from) {\n cb({type: 'basic_color', text: ' ~> ', index: diff.branch_from.branch_index});\n } else {\n cb({type: 'spacing', count: 4});\n }\n cb({type: 'opcode', mnemonic: ins.mnemonic, opcode: ins.opcode});\n for (let i = 0; i < ins.arguments.length; i++) {\n if (i === 0) {\n cb({type: 'spacing', count: 1});\n }\n const arg = oneof(ins.arguments[i].value);\n const diff_index = diff.arg_diff[i]?.diff_index;\n switch (arg.oneofKind) {\n case \"plain_text\":\n cb({type: 'basic', text: arg.plain_text, diff_index});\n break;\n case \"argument\":\n cb({type: 'argument', value: arg.argument, diff_index});\n break;\n case \"relocation\": {\n const reloc = ins.relocation!;\n cb({type: 'symbol', target: reloc.target, diff_index});\n break;\n }\n case \"branch_dest\":\n if (arg.branch_dest < baseAddr) {\n cb({type: 'basic', text: '<unknown>', diff_index});\n } else {\n cb({type: 'branch_dest', address: arg.branch_dest - baseAddr, diff_index});\n }\n break;\n }\n }\n if (diff.branch_to) {\n cb({type: 'basic_color', text: ' ~> ', index: diff.branch_to.branch_index});\n }\n}\n"],"mappings":"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","names":["SymbolFlag","DiffKind","SectionKind"]}
|
|
Binary file
|
package/dist/worker.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var r,O=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&O.decode();var a=null;function l(){return(a===null||a.byteLength===0)&&(a=new Uint8Array(r.memory.buffer)),a}function h(t,e){return t=t>>>0,O.decode(l().subarray(t,t+e))}var i=new Array(128).fill(void 0);i.push(void 0,null,!0,!1);var f=i.length;function k(t){f===i.length&&i.push(i.length+1);let e=f;return f=i[e],i[e]=t,e}var d=0;function j(t,e){let n=e(t.length*1,1)>>>0;return l().set(t,n/1),d=t.length,n}function x(t){return t==null}function z(t,e){if(!(t instanceof e))throw new Error(`expected instance of ${e.name}`);return t.ptr}var s=null;function c(){return(s===null||s.buffer.detached===!0||s.buffer.detached===void 0&&s.buffer!==r.memory.buffer)&&(s=new DataView(r.memory.buffer)),s}function C(t){return i[t]}function N(t){t<132||(i[t]=f,f=t)}function P(t){let e=C(t);return N(t),e}function V(t,e){return t=t>>>0,l().subarray(t/1,t/1+e)}function v(t,e,n){try{let o=r.__wbindgen_add_to_stack_pointer(-16);var _=x(t)?0:j(t,r.__wbindgen_malloc),u=d,p=x(e)?0:j(e,r.__wbindgen_malloc),w=d;z(n,b);var D=n.__destroy_into_raw();r.run_diff_proto(o,_,u,p,w,D);var m=c().getInt32(o+4*0,!0),y=c().getInt32(o+4*1,!0),E=c().getInt32(o+4*2,!0),W=c().getInt32(o+4*3,!0);if(W)throw P(E);var U=V(m,y).slice();return r.__wbindgen_free(m,y*1,1),U}finally{r.__wbindgen_add_to_stack_pointer(16)}}function M(){let t=r.default_diff_obj_config();return b.__wrap(t)}var B=Object.freeze({Auto:0,0:"Auto",O32:1,1:"O32",N32:2,2:"N32",N64:3,3:"N64"}),X=Object.freeze({GeneralPurpose:0,0:"GeneralPurpose",Sb:1,1:"Sb",Tr:2,2:"Tr"}),J=Object.freeze({Auto:0,0:"Auto",Cpu:1,1:"Cpu",Rsp:2,2:"Rsp",R3000Gte:3,3:"R3000Gte",R4000Allegrex:4,4:"R4000Allegrex",R5900:5,5:"R5900"}),Q=Object.freeze({Intel:0,0:"Intel",Gas:1,1:"Gas",Nasm:2,2:"Nasm",Masm:3,3:"Masm"}),Y=Object.freeze({Auto:0,0:"Auto",V4T:1,1:"V4T",V5TE:2,2:"V5TE",V6K:3,3:"V6K"}),A=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(t=>r.__wbg_diffobjconfig_free(t>>>0,1)),b=class t{static __wrap(e){e=e>>>0;let n=Object.create(t.prototype);return n.__wbg_ptr=e,A.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,A.unregister(this),e}free(){let e=this.__destroy_into_raw();r.__wbg_diffobjconfig_free(e,0)}get relax_reloc_diffs(){return r.__wbg_get_diffobjconfig_relax_reloc_diffs(this.__wbg_ptr)!==0}set relax_reloc_diffs(e){r.__wbg_set_diffobjconfig_relax_reloc_diffs(this.__wbg_ptr,e)}get space_between_args(){return r.__wbg_get_diffobjconfig_space_between_args(this.__wbg_ptr)!==0}set space_between_args(e){r.__wbg_set_diffobjconfig_space_between_args(this.__wbg_ptr,e)}get combine_data_sections(){return r.__wbg_get_diffobjconfig_combine_data_sections(this.__wbg_ptr)!==0}set combine_data_sections(e){r.__wbg_set_diffobjconfig_combine_data_sections(this.__wbg_ptr,e)}get x86_formatter(){return r.__wbg_get_diffobjconfig_x86_formatter(this.__wbg_ptr)}set x86_formatter(e){r.__wbg_set_diffobjconfig_x86_formatter(this.__wbg_ptr,e)}get mips_abi(){return r.__wbg_get_diffobjconfig_mips_abi(this.__wbg_ptr)}set mips_abi(e){r.__wbg_set_diffobjconfig_mips_abi(this.__wbg_ptr,e)}get mips_instr_category(){return r.__wbg_get_diffobjconfig_mips_instr_category(this.__wbg_ptr)}set mips_instr_category(e){r.__wbg_set_diffobjconfig_mips_instr_category(this.__wbg_ptr,e)}get arm_arch_version(){return r.__wbg_get_diffobjconfig_arm_arch_version(this.__wbg_ptr)}set arm_arch_version(e){r.__wbg_set_diffobjconfig_arm_arch_version(this.__wbg_ptr,e)}get arm_unified_syntax(){return r.__wbg_get_diffobjconfig_arm_unified_syntax(this.__wbg_ptr)!==0}set arm_unified_syntax(e){r.__wbg_set_diffobjconfig_arm_unified_syntax(this.__wbg_ptr,e)}get arm_av_registers(){return r.__wbg_get_diffobjconfig_arm_av_registers(this.__wbg_ptr)!==0}set arm_av_registers(e){r.__wbg_set_diffobjconfig_arm_av_registers(this.__wbg_ptr,e)}get arm_r9_usage(){return r.__wbg_get_diffobjconfig_arm_r9_usage(this.__wbg_ptr)}set arm_r9_usage(e){r.__wbg_set_diffobjconfig_arm_r9_usage(this.__wbg_ptr,e)}get arm_sl_usage(){return r.__wbg_get_diffobjconfig_arm_sl_usage(this.__wbg_ptr)!==0}set arm_sl_usage(e){r.__wbg_set_diffobjconfig_arm_sl_usage(this.__wbg_ptr,e)}get arm_fp_usage(){return r.__wbg_get_diffobjconfig_arm_fp_usage(this.__wbg_ptr)!==0}set arm_fp_usage(e){r.__wbg_set_diffobjconfig_arm_fp_usage(this.__wbg_ptr,e)}get arm_ip_usage(){return r.__wbg_get_diffobjconfig_arm_ip_usage(this.__wbg_ptr)!==0}set arm_ip_usage(e){r.__wbg_set_diffobjconfig_arm_ip_usage(this.__wbg_ptr,e)}};async function S(t,e){if(typeof Response=="function"&&t instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(t,e)}catch(_){if(t.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",_);else throw _}let n=await t.arrayBuffer();return await WebAssembly.instantiate(n,e)}else{let n=await WebAssembly.instantiate(t,e);return n instanceof WebAssembly.Instance?{instance:n,module:t}:n}}function F(){let t={};return t.wbg={},t.wbg.__wbindgen_error_new=function(e,n){let _=new Error(h(e,n));return k(_)},t.wbg.__wbindgen_throw=function(e,n){throw new Error(h(e,n))},t}function G(t,e){return r=t.exports,R.__wbindgen_wasm_module=e,s=null,a=null,r}async function R(t){if(r!==void 0)return r;typeof t<"u"&&Object.getPrototypeOf(t)===Object.prototype?{module_or_path:t}=t:console.warn("using deprecated parameters for the initialization function; pass a single object instead"),typeof t>"u"&&(t=new URL("objdiff_core_bg.wasm",import.meta.url));let e=F();(typeof t=="string"||typeof Request=="function"&&t instanceof Request||typeof URL=="function"&&t instanceof URL)&&(t=fetch(t));let{instance:n,module:_}=await S(await t,e);return G(n,_)}var I=R;var L={init:T,run_diff_proto:q},g=null;async function T({wasmUrl:t}){if(g!=null)throw new Error("Already initialized");return g=I({module_or_path:t}).then(()=>{}),g}async function H(){return g==null&&await T({}),g}function $(t){let e=M();if(t)for(let n in t)n in t&&(e[n]=t[n]);return e}async function q({left:t,right:e,config:n}){let _=$(n);return v(t,e,_)}self.onmessage=t=>{let e=t.data,n=e?.messageId;(async()=>{if(!e)throw new Error("No data");let _=L[e.type];if(_){e.type!=="init"&&await H();let u=performance.now(),p=await _(e),w=performance.now();console.debug(`Worker message ${e.messageId} took ${w-u}ms`),self.postMessage({type:"result",result:p,error:null,messageId:n})}else throw new Error(`No handler for ${e.type}`)})().catch(_=>{self.postMessage({type:"result",result:null,error:_.toString(),messageId:n})})};
|
|
2
|
-
//# sourceMappingURL=worker.js.map
|
package/dist/worker.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../pkg/objdiff_core.js","../src/worker.ts"],"sourcesContent":["let wasm;\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };\n\nlet cachedUint8ArrayMemory0 = null;\n\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));\n}\n\nconst heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nlet heap_next = heap.length;\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nfunction passArray8ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 1, 1) >>> 0;\n getUint8ArrayMemory0().set(arg, ptr / 1);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nfunction _assertClass(instance, klass) {\n if (!(instance instanceof klass)) {\n throw new Error(`expected instance of ${klass.name}`);\n }\n return instance.ptr;\n}\n\nlet cachedDataViewMemory0 = null;\n\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nfunction getObject(idx) { return heap[idx]; }\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n/**\n* @param {Uint8Array | undefined} left\n* @param {Uint8Array | undefined} right\n* @param {DiffObjConfig} config\n* @returns {Uint8Array}\n*/\nexport function run_diff_proto(left, right, config) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n var ptr0 = isLikeNone(left) ? 0 : passArray8ToWasm0(left, wasm.__wbindgen_malloc);\n var len0 = WASM_VECTOR_LEN;\n var ptr1 = isLikeNone(right) ? 0 : passArray8ToWasm0(right, wasm.__wbindgen_malloc);\n var len1 = WASM_VECTOR_LEN;\n _assertClass(config, DiffObjConfig);\n var ptr2 = config.__destroy_into_raw();\n wasm.run_diff_proto(retptr, ptr0, len0, ptr1, len1, ptr2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v4 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_free(r0, r1 * 1, 1);\n return v4;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n}\n\n/**\n* @returns {DiffObjConfig}\n*/\nexport function default_diff_obj_config() {\n const ret = wasm.default_diff_obj_config();\n return DiffObjConfig.__wrap(ret);\n}\n\n/**\n*/\nexport const MipsAbi = Object.freeze({ Auto:0,\"0\":\"Auto\",O32:1,\"1\":\"O32\",N32:2,\"2\":\"N32\",N64:3,\"3\":\"N64\", });\n/**\n*/\nexport const ArmR9Usage = Object.freeze({ GeneralPurpose:0,\"0\":\"GeneralPurpose\",Sb:1,\"1\":\"Sb\",Tr:2,\"2\":\"Tr\", });\n/**\n*/\nexport const MipsInstrCategory = Object.freeze({ Auto:0,\"0\":\"Auto\",Cpu:1,\"1\":\"Cpu\",Rsp:2,\"2\":\"Rsp\",R3000Gte:3,\"3\":\"R3000Gte\",R4000Allegrex:4,\"4\":\"R4000Allegrex\",R5900:5,\"5\":\"R5900\", });\n/**\n*/\nexport const X86Formatter = Object.freeze({ Intel:0,\"0\":\"Intel\",Gas:1,\"1\":\"Gas\",Nasm:2,\"2\":\"Nasm\",Masm:3,\"3\":\"Masm\", });\n/**\n*/\nexport const ArmArchVersion = Object.freeze({ Auto:0,\"0\":\"Auto\",V4T:1,\"1\":\"V4T\",V5TE:2,\"2\":\"V5TE\",V6K:3,\"3\":\"V6K\", });\n\nconst DiffObjConfigFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_diffobjconfig_free(ptr >>> 0, 1));\n/**\n*/\nexport class DiffObjConfig {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(DiffObjConfig.prototype);\n obj.__wbg_ptr = ptr;\n DiffObjConfigFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n DiffObjConfigFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_diffobjconfig_free(ptr, 0);\n }\n /**\n * @returns {boolean}\n */\n get relax_reloc_diffs() {\n const ret = wasm.__wbg_get_diffobjconfig_relax_reloc_diffs(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set relax_reloc_diffs(arg0) {\n wasm.__wbg_set_diffobjconfig_relax_reloc_diffs(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {boolean}\n */\n get space_between_args() {\n const ret = wasm.__wbg_get_diffobjconfig_space_between_args(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set space_between_args(arg0) {\n wasm.__wbg_set_diffobjconfig_space_between_args(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {boolean}\n */\n get combine_data_sections() {\n const ret = wasm.__wbg_get_diffobjconfig_combine_data_sections(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set combine_data_sections(arg0) {\n wasm.__wbg_set_diffobjconfig_combine_data_sections(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {X86Formatter}\n */\n get x86_formatter() {\n const ret = wasm.__wbg_get_diffobjconfig_x86_formatter(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {X86Formatter} arg0\n */\n set x86_formatter(arg0) {\n wasm.__wbg_set_diffobjconfig_x86_formatter(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {MipsAbi}\n */\n get mips_abi() {\n const ret = wasm.__wbg_get_diffobjconfig_mips_abi(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {MipsAbi} arg0\n */\n set mips_abi(arg0) {\n wasm.__wbg_set_diffobjconfig_mips_abi(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {MipsInstrCategory}\n */\n get mips_instr_category() {\n const ret = wasm.__wbg_get_diffobjconfig_mips_instr_category(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {MipsInstrCategory} arg0\n */\n set mips_instr_category(arg0) {\n wasm.__wbg_set_diffobjconfig_mips_instr_category(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {ArmArchVersion}\n */\n get arm_arch_version() {\n const ret = wasm.__wbg_get_diffobjconfig_arm_arch_version(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {ArmArchVersion} arg0\n */\n set arm_arch_version(arg0) {\n wasm.__wbg_set_diffobjconfig_arm_arch_version(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {boolean}\n */\n get arm_unified_syntax() {\n const ret = wasm.__wbg_get_diffobjconfig_arm_unified_syntax(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set arm_unified_syntax(arg0) {\n wasm.__wbg_set_diffobjconfig_arm_unified_syntax(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {boolean}\n */\n get arm_av_registers() {\n const ret = wasm.__wbg_get_diffobjconfig_arm_av_registers(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set arm_av_registers(arg0) {\n wasm.__wbg_set_diffobjconfig_arm_av_registers(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {ArmR9Usage}\n */\n get arm_r9_usage() {\n const ret = wasm.__wbg_get_diffobjconfig_arm_r9_usage(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {ArmR9Usage} arg0\n */\n set arm_r9_usage(arg0) {\n wasm.__wbg_set_diffobjconfig_arm_r9_usage(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {boolean}\n */\n get arm_sl_usage() {\n const ret = wasm.__wbg_get_diffobjconfig_arm_sl_usage(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set arm_sl_usage(arg0) {\n wasm.__wbg_set_diffobjconfig_arm_sl_usage(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {boolean}\n */\n get arm_fp_usage() {\n const ret = wasm.__wbg_get_diffobjconfig_arm_fp_usage(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set arm_fp_usage(arg0) {\n wasm.__wbg_set_diffobjconfig_arm_fp_usage(this.__wbg_ptr, arg0);\n }\n /**\n * @returns {boolean}\n */\n get arm_ip_usage() {\n const ret = wasm.__wbg_get_diffobjconfig_arm_ip_usage(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @param {boolean} arg0\n */\n set arm_ip_usage(arg0) {\n wasm.__wbg_set_diffobjconfig_arm_ip_usage(this.__wbg_ptr, arg0);\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n imports.wbg.__wbindgen_error_new = function(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, memory) {\n\n}\n\nfunction __wbg_finalize_init(instance, module) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedDataViewMemory0 = null;\n cachedUint8ArrayMemory0 = null;\n\n\n\n return wasm;\n}\n\nfunction initSync(module) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module !== 'undefined' && Object.getPrototypeOf(module) === Object.prototype)\n ({module} = module)\n else\n console.warn('using deprecated parameters for `initSync()`; pass a single object instead')\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nasync function __wbg_init(module_or_path) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module_or_path !== 'undefined' && Object.getPrototypeOf(module_or_path) === Object.prototype)\n ({module_or_path} = module_or_path)\n else\n console.warn('using deprecated parameters for the initialization function; pass a single object instead')\n\n if (typeof module_or_path === 'undefined') {\n module_or_path = new URL('objdiff_core_bg.wasm', import.meta.url);\n }\n const imports = __wbg_get_imports();\n\n if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {\n module_or_path = fetch(module_or_path);\n }\n\n __wbg_init_memory(imports);\n\n const { instance, module } = await __wbg_load(await module_or_path, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nexport { initSync };\nexport default __wbg_init;\n","import wasmInit, * as exports from '../pkg';\nimport {DiffObjConfig} from \"./main\";\n\ntype ExtractParam<T> = {\n [K in keyof T]: T[K] extends (arg1: infer U, ...args: unknown[]) => Promise<unknown> ? U & { type: K } : never;\n}[keyof T];\nexport type HandlerData = ExtractParam<{\n init: typeof init,\n // run_diff_json: typeof run_diff_json,\n run_diff_proto: typeof run_diff_proto,\n}>;\nconst handlers: {\n [K in HandlerData['type']]: (data: Omit<HandlerData, 'type'>) => Promise<unknown>\n} = {\n init: init,\n // run_diff_json: run_diff_json,\n run_diff_proto: run_diff_proto,\n};\n\nlet wasmReady: Promise<void> | null = null;\n\nasync function init({wasmUrl}: { wasmUrl?: string }): Promise<void> {\n if (wasmReady != null) {\n throw new Error('Already initialized');\n }\n wasmReady = wasmInit({module_or_path: wasmUrl})\n .then(() => {});\n return wasmReady;\n}\n\nasync function initIfNeeded() {\n if (wasmReady == null) {\n await init({});\n }\n return wasmReady;\n}\n\nfunction createConfig(config: DiffObjConfig): exports.DiffObjConfig {\n const cfg = exports.default_diff_obj_config();\n if (config) {\n for (const key in config) {\n if (key in config) {\n cfg[key] = config[key];\n }\n }\n }\n return cfg;\n}\n\n// async function run_diff_json({left, right, config}: {\n// left: Uint8Array | undefined,\n// right: Uint8Array | undefined,\n// config?: DiffObjConfig\n// }): Promise<string> {\n// const cfg = createConfig(config);\n// return exports.run_diff_json(left, right, cfg);\n// }\n\nasync function run_diff_proto({left, right, config}: {\n left: Uint8Array | undefined,\n right: Uint8Array | undefined,\n config?: DiffObjConfig\n}): Promise<Uint8Array> {\n const cfg = createConfig(config);\n return exports.run_diff_proto(left, right, cfg);\n}\n\nexport type InMessage = HandlerData & { messageId: number };\n\nexport type OutMessage = {\n type: 'result',\n result: unknown | null,\n error: string | null,\n messageId: number,\n};\n\nself.onmessage = (event: MessageEvent<InMessage>) => {\n const data = event.data;\n const messageId = data?.messageId;\n (async () => {\n if (!data) {\n throw new Error('No data');\n }\n const handler = handlers[data.type];\n if (handler) {\n if (data.type !== 'init') {\n await initIfNeeded();\n }\n const start = performance.now();\n const result = await handler(data);\n const end = performance.now();\n console.debug(`Worker message ${data.messageId} took ${end - start}ms`);\n self.postMessage({\n type: 'result',\n result: result,\n error: null,\n messageId,\n } as OutMessage);\n } else {\n throw new Error(`No handler for ${data.type}`);\n }\n })().catch(error => {\n self.postMessage({\n type: 'result',\n result: null,\n error: error.toString(),\n messageId,\n } as OutMessage);\n });\n};\n"],"mappings":"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","names":["wasm","cachedTextDecoder","cachedUint8ArrayMemory0","getUint8ArrayMemory0","getStringFromWasm0","ptr","len","heap","heap_next","addHeapObject","obj","idx","WASM_VECTOR_LEN","passArray8ToWasm0","arg","malloc","isLikeNone","x","_assertClass","instance","klass","cachedDataViewMemory0","getDataViewMemory0","getObject","dropObject","takeObject","ret","getArrayU8FromWasm0","run_diff_proto","left","right","config","retptr","ptr0","len0","ptr1","len1","DiffObjConfig","ptr2","r0","r1","r2","r3","v4","default_diff_obj_config","MipsAbi","ArmR9Usage","MipsInstrCategory","X86Formatter","ArmArchVersion","DiffObjConfigFinalization","_DiffObjConfig","arg0","__wbg_load","module","imports","e","bytes","__wbg_get_imports","arg1","__wbg_finalize_init","instance","module","wasm","__wbg_init","cachedDataViewMemory0","cachedUint8ArrayMemory0","__wbg_init","module_or_path","wasm","imports","__wbg_get_imports","instance","module","__wbg_load","__wbg_finalize_init","objdiff_core_default","__wbg_init","handlers","init","run_diff_proto","wasmReady","wasmUrl","objdiff_core_default","initIfNeeded","createConfig","config","cfg","default_diff_obj_config","key","left","right","event","data","messageId","handler","start","result","end","error"]}
|