objdiff-wasm 2.0.0 → 3.0.0-alpha.2
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 +264 -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 -698
- package/dist/main.js +0 -1410
- package/dist/main.js.map +0 -1
- package/dist/objdiff_core_bg.wasm +0 -0
- package/dist/worker.d.ts +0 -56
- package/dist/worker.js +0 -3
- 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,\n MipsAbi,\n MipsInstrCategory,\n X86Formatter\n} from '../pkg';\nimport {AnyHandlerData, InMessage, OutMessage} from './worker';\n\n// Export wasm types\nexport {ArmArchVersion, ArmR9Usage, MipsAbi, MipsInstrCategory, X86Formatter, DiffObjConfig};\n\n// Export protobuf types\nexport * from '../gen/diff_pb';\n\ninterface PromiseCallbacks<T> {\n start: number;\n resolve: (value: T | PromiseLike<T>) => void;\n reject: (reason?: string) => void;\n}\n\nlet workerInit = false;\nlet workerCallbacks: PromiseCallbacks<Worker>;\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<void>({\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 });\n return workerReady;\n}\n\nlet globalMessageId = 0;\nconst messageCallbacks = new Map<number, PromiseCallbacks<never>>();\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 as never);\n }\n } else {\n console.warn(`Unknown message ID ${messageId}`);\n }\n break;\n }\n }\n}\n\nasync function defer<T>(message: AnyHandlerData, 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 } as InMessage);\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 });\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// 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 = 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.d.ts
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
interface DiffObjConfig {
|
|
2
|
-
relax_reloc_diffs?: boolean;
|
|
3
|
-
space_between_args?: boolean;
|
|
4
|
-
combine_data_sections?: boolean;
|
|
5
|
-
x86_formatter?: X86Formatter;
|
|
6
|
-
mips_abi?: MipsAbi;
|
|
7
|
-
mips_instr_category?: MipsInstrCategory;
|
|
8
|
-
arm_arch_version?: ArmArchVersion;
|
|
9
|
-
arm_unified_syntax?: boolean;
|
|
10
|
-
arm_av_registers?: boolean;
|
|
11
|
-
arm_r9_usage?: ArmR9Usage;
|
|
12
|
-
arm_sl_usage?: boolean;
|
|
13
|
-
arm_fp_usage?: boolean;
|
|
14
|
-
arm_ip_usage?: boolean;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
type ArmR9Usage = "GeneralPurpose" | "Sb" | "Tr";
|
|
18
|
-
|
|
19
|
-
type ArmArchVersion = "Auto" | "V4T" | "V5TE" | "V6K";
|
|
20
|
-
|
|
21
|
-
type MipsInstrCategory = "Auto" | "Cpu" | "Rsp" | "R3000Gte" | "R4000Allegrex" | "R5900";
|
|
22
|
-
|
|
23
|
-
type MipsAbi = "Auto" | "O32" | "N32" | "N64";
|
|
24
|
-
|
|
25
|
-
type X86Formatter = "Intel" | "Gas" | "Nasm" | "Masm";
|
|
26
|
-
|
|
27
|
-
declare const handlers: {
|
|
28
|
-
readonly init: typeof init;
|
|
29
|
-
readonly run_diff_proto: typeof run_diff_proto;
|
|
30
|
-
};
|
|
31
|
-
type ExtractData<T> = T extends (arg: infer U) => Promise<unknown> ? U : never;
|
|
32
|
-
type HandlerData = {
|
|
33
|
-
[K in keyof typeof handlers]: {
|
|
34
|
-
type: K;
|
|
35
|
-
} & ExtractData<typeof handlers[K]>;
|
|
36
|
-
};
|
|
37
|
-
declare function init({ wasmUrl }: {
|
|
38
|
-
wasmUrl?: string;
|
|
39
|
-
}): Promise<void>;
|
|
40
|
-
declare function run_diff_proto({ left, right, config }: {
|
|
41
|
-
left: Uint8Array | undefined;
|
|
42
|
-
right: Uint8Array | undefined;
|
|
43
|
-
config?: DiffObjConfig;
|
|
44
|
-
}): Promise<Uint8Array>;
|
|
45
|
-
type AnyHandlerData = HandlerData[keyof HandlerData];
|
|
46
|
-
type InMessage = AnyHandlerData & {
|
|
47
|
-
messageId: number;
|
|
48
|
-
};
|
|
49
|
-
type OutMessage = {
|
|
50
|
-
type: 'result';
|
|
51
|
-
result: unknown | null;
|
|
52
|
-
error: string | null;
|
|
53
|
-
messageId: number;
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
export type { AnyHandlerData, InMessage, OutMessage };
|
package/dist/worker.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
var s,b=new Array(128).fill(void 0);b.push(void 0,null,!0,!1);function i(e){return b[e]}var m=b.length;function v(e){e<132||(b[e]=m,m=e)}function O(e){let n=i(e);return v(e),n}var S=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&S.decode();var p=null;function w(){return(p===null||p.byteLength===0)&&(p=new Uint8Array(s.memory.buffer)),p}function I(e,n){return e=e>>>0,S.decode(w().subarray(e,e+n))}function _(e){m===b.length&&b.push(b.length+1);let n=m;return m=b[n],b[n]=e,n}var g=0,x=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},F=typeof x.encodeInto=="function"?function(e,n){return x.encodeInto(e,n)}:function(e,n){let t=x.encode(e);return n.set(t),{read:e.length,written:t.length}};function j(e,n,t){if(t===void 0){let u=x.encode(e),l=n(u.length,1)>>>0;return w().subarray(l,l+u.length).set(u),g=u.length,l}let r=e.length,o=n(r,1)>>>0,f=w(),c=0;for(;c<r;c++){let u=e.charCodeAt(c);if(u>127)break;f[o+c]=u}if(c!==r){c!==0&&(e=e.slice(c)),o=t(o,r,r=c+e.length*3,1)>>>0;let u=w().subarray(o+c,o+r),l=F(e,u);c+=l.written,o=t(o,r,c,1)>>>0}return g=c,o}function h(e){return e==null}var d=null;function a(){return(d===null||d.buffer.detached===!0||d.buffer.detached===void 0&&d.buffer!==s.memory.buffer)&&(d=new DataView(s.memory.buffer)),d}function E(e){let n=typeof e;if(n=="number"||n=="boolean"||e==null)return`${e}`;if(n=="string")return`"${e}"`;if(n=="symbol"){let o=e.description;return o==null?"Symbol":`Symbol(${o})`}if(n=="function"){let o=e.name;return typeof o=="string"&&o.length>0?`Function(${o})`:"Function"}if(Array.isArray(e)){let o=e.length,f="[";o>0&&(f+=E(e[0]));for(let c=1;c<o;c++)f+=", "+E(e[c]);return f+="]",f}let t=/\[object ([^\]]+)\]/.exec(toString.call(e)),r;if(t.length>1)r=t[1];else return toString.call(e);if(r=="Object")try{return"Object("+JSON.stringify(e)+")"}catch{return"Object"}return e instanceof Error?`${e.name}: ${e.message}
|
|
2
|
-
${e.stack}`:r}function M(e,n){let t=n(e.length*1,1)>>>0;return w().set(e,t/1),g=e.length,t}function N(e,n){return e=e>>>0,w().subarray(e/1,e/1+n)}function k(e,n,t){try{let y=s.__wbindgen_add_to_stack_pointer(-16);var r=h(e)?0:M(e,s.__wbindgen_malloc),o=g,f=h(n)?0:M(n,s.__wbindgen_malloc),c=g;s.run_diff_proto(y,r,o,f,c,_(t));var u=a().getInt32(y+4*0,!0),l=a().getInt32(y+4*1,!0),T=a().getInt32(y+4*2,!0),$=a().getInt32(y+4*3,!0);if($)throw O(T);var R=N(u,l).slice();return s.__wbindgen_free(u,l*1,1),R}finally{s.__wbindgen_add_to_stack_pointer(16)}}async function H(e,n){if(typeof Response=="function"&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(e,n)}catch(r){if(e.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",r);else throw r}let t=await e.arrayBuffer();return await WebAssembly.instantiate(t,n)}else{let t=await WebAssembly.instantiate(e,n);return t instanceof WebAssembly.Instance?{instance:t,module:e}:t}}function L(){let e={};return e.wbg={},e.wbg.__wbindgen_boolean_get=function(n){let t=i(n);return typeof t=="boolean"?t?1:0:2},e.wbg.__wbindgen_object_drop_ref=function(n){O(n)},e.wbg.__wbindgen_error_new=function(n,t){let r=new Error(I(n,t));return _(r)},e.wbg.__wbindgen_object_clone_ref=function(n){let t=i(n);return _(t)},e.wbg.__wbindgen_string_get=function(n,t){let r=i(t),o=typeof r=="string"?r:void 0;var f=h(o)?0:j(o,s.__wbindgen_malloc,s.__wbindgen_realloc),c=g;a().setInt32(n+4*1,c,!0),a().setInt32(n+4*0,f,!0)},e.wbg.__wbindgen_is_string=function(n){return typeof i(n)=="string"},e.wbg.__wbindgen_is_object=function(n){let t=i(n);return typeof t=="object"&&t!==null},e.wbg.__wbindgen_is_undefined=function(n){return i(n)===void 0},e.wbg.__wbindgen_in=function(n,t){return i(n)in i(t)},e.wbg.__wbindgen_string_new=function(n,t){let r=I(n,t);return _(r)},e.wbg.__wbg_debug_5a33c41aeac15ee6=function(n){console.debug(i(n))},e.wbg.__wbg_error_09480e4aadca50ad=function(n){console.error(i(n))},e.wbg.__wbg_info_c261acb2deacd903=function(n){console.info(i(n))},e.wbg.__wbg_log_b103404cc5920657=function(n){console.log(i(n))},e.wbg.__wbg_warn_2b3adb99ce26c314=function(n){console.warn(i(n))},e.wbg.__wbg_new_abda76e883ba8a5f=function(){let n=new Error;return _(n)},e.wbg.__wbg_stack_658279fe44541cf6=function(n,t){let r=i(t).stack,o=j(r,s.__wbindgen_malloc,s.__wbindgen_realloc),f=g;a().setInt32(n+4*1,f,!0),a().setInt32(n+4*0,o,!0)},e.wbg.__wbg_error_f851667af71bcfc6=function(n,t){let r,o;try{r=n,o=t,console.error(I(n,t))}finally{s.__wbindgen_free(r,o,1)}},e.wbg.__wbindgen_jsval_loose_eq=function(n,t){return i(n)==i(t)},e.wbg.__wbindgen_number_get=function(n,t){let r=i(t),o=typeof r=="number"?r:void 0;a().setFloat64(n+8*1,h(o)?0:o,!0),a().setInt32(n+4*0,!h(o),!0)},e.wbg.__wbg_String_b9412f8799faab3e=function(n,t){let r=String(i(t)),o=j(r,s.__wbindgen_malloc,s.__wbindgen_realloc),f=g;a().setInt32(n+4*1,f,!0),a().setInt32(n+4*0,o,!0)},e.wbg.__wbg_getwithrefkey_edc2c8960f0f1191=function(n,t){let r=i(n)[i(t)];return _(r)},e.wbg.__wbg_get_3baa728f9d58d3f6=function(n,t){let r=i(n)[t>>>0];return _(r)},e.wbg.__wbg_length_ae22078168b726f5=function(n){return i(n).length},e.wbg.__wbg_instanceof_ArrayBuffer_61dfc3198373c902=function(n){let t;try{t=i(n)instanceof ArrayBuffer}catch{t=!1}return t},e.wbg.__wbg_entries_7a0e06255456ebcd=function(n){let t=Object.entries(i(n));return _(t)},e.wbg.__wbg_buffer_b7b08af79b0b0974=function(n){let t=i(n).buffer;return _(t)},e.wbg.__wbg_new_ea1883e1e5e86686=function(n){let t=new Uint8Array(i(n));return _(t)},e.wbg.__wbg_set_d1e79e2388520f18=function(n,t,r){i(n).set(i(t),r>>>0)},e.wbg.__wbg_length_8339fcf5d8ecd12e=function(n){return i(n).length},e.wbg.__wbg_instanceof_Uint8Array_247a91427532499e=function(n){let t;try{t=i(n)instanceof Uint8Array}catch{t=!1}return t},e.wbg.__wbindgen_debug_string=function(n,t){let r=E(i(t)),o=j(r,s.__wbindgen_malloc,s.__wbindgen_realloc),f=g;a().setInt32(n+4*1,f,!0),a().setInt32(n+4*0,o,!0)},e.wbg.__wbindgen_throw=function(n,t){throw new Error(I(n,t))},e.wbg.__wbindgen_rethrow=function(n){throw O(n)},e.wbg.__wbindgen_memory=function(){let n=s.memory;return _(n)},e}function P(e,n){return s=e.exports,D.__wbindgen_wasm_module=n,d=null,p=null,s.__wbindgen_start(),s}async function D(e){if(s!==void 0)return s;typeof e<"u"&&Object.getPrototypeOf(e)===Object.prototype?{module_or_path:e}=e:console.warn("using deprecated parameters for the initialization function; pass a single object instead"),typeof e>"u"&&(e=new URL("objdiff_core_bg.wasm",import.meta.url));let n=L();(typeof e=="string"||typeof Request=="function"&&e instanceof Request||typeof URL=="function"&&e instanceof URL)&&(e=fetch(e));let{instance:t,module:r}=await H(await e,n);return P(t,r)}var U=D;var C={init:W,run_diff_proto:q},A=null;async function W({wasmUrl:e}){if(A!=null)throw new Error("Already initialized");return A=U({module_or_path:e}).then(()=>{}),A}async function V(){return A==null&&await W({}),A}async function q({left:e,right:n,config:t}){return t=t||{},k(e,n,t)}self.onmessage=e=>{let n=e.data,t=n?.messageId;(async()=>{if(!n)throw new Error("No data");let r=C[n.type];if(r){n.type!=="init"&&await V();let o=performance.now(),f=await r(n),c=performance.now();console.debug(`Worker message ${n.messageId} took ${c-o}ms`),self.postMessage({type:"result",result:f,error:null,messageId:t})}else throw new Error(`No handler for ${n.type}`)})().catch(r=>{self.postMessage({type:"result",result:null,error:r.toString(),messageId:t})})};
|
|
3
|
-
//# 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 heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nfunction getObject(idx) { return heap[idx]; }\n\nlet heap_next = heap.length;\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\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\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\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\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 debugString(val) {\n // primitive types\n const type = typeof val;\n if (type == 'number' || type == 'boolean' || val == null) {\n return `${val}`;\n }\n if (type == 'string') {\n return `\"${val}\"`;\n }\n if (type == 'symbol') {\n const description = val.description;\n if (description == null) {\n return 'Symbol';\n } else {\n return `Symbol(${description})`;\n }\n }\n if (type == 'function') {\n const name = val.name;\n if (typeof name == 'string' && name.length > 0) {\n return `Function(${name})`;\n } else {\n return 'Function';\n }\n }\n // objects\n if (Array.isArray(val)) {\n const length = val.length;\n let debug = '[';\n if (length > 0) {\n debug += debugString(val[0]);\n }\n for(let i = 1; i < length; i++) {\n debug += ', ' + debugString(val[i]);\n }\n debug += ']';\n return debug;\n }\n // Test for built-in\n const builtInMatches = /\\[object ([^\\]]+)\\]/.exec(toString.call(val));\n let className;\n if (builtInMatches.length > 1) {\n className = builtInMatches[1];\n } else {\n // Failed to match the standard '[object ClassName]'\n return toString.call(val);\n }\n if (className == 'Object') {\n // we're a user defined class or Object\n // JSON.stringify avoids problems with cycles, and is generally much\n // easier than looping through ownProperties of `val`.\n try {\n return 'Object(' + JSON.stringify(val) + ')';\n } catch (_) {\n return 'Object';\n }\n }\n // errors\n if (val instanceof Error) {\n return `${val.name}: ${val.message}\\n${val.stack}`;\n }\n // TODO we could test for more things here, like `Set`s and `Map`s.\n return className;\n}\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 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 wasm.run_diff_proto(retptr, ptr0, len0, ptr1, len1, addHeapObject(config));\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 v3 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_free(r0, r1 * 1, 1);\n return v3;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n}\n\n/**\n*/\nexport function start() {\n wasm.start();\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_boolean_get = function(arg0) {\n const v = getObject(arg0);\n const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;\n return ret;\n };\n imports.wbg.__wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n };\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_object_clone_ref = function(arg0) {\n const ret = getObject(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_string_get = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbindgen_is_string = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'string';\n return ret;\n };\n imports.wbg.__wbindgen_is_object = function(arg0) {\n const val = getObject(arg0);\n const ret = typeof(val) === 'object' && val !== null;\n return ret;\n };\n imports.wbg.__wbindgen_is_undefined = function(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n };\n imports.wbg.__wbindgen_in = function(arg0, arg1) {\n const ret = getObject(arg0) in getObject(arg1);\n return ret;\n };\n imports.wbg.__wbindgen_string_new = function(arg0, arg1) {\n const ret = getStringFromWasm0(arg0, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_debug_5a33c41aeac15ee6 = function(arg0) {\n console.debug(getObject(arg0));\n };\n imports.wbg.__wbg_error_09480e4aadca50ad = function(arg0) {\n console.error(getObject(arg0));\n };\n imports.wbg.__wbg_info_c261acb2deacd903 = function(arg0) {\n console.info(getObject(arg0));\n };\n imports.wbg.__wbg_log_b103404cc5920657 = function(arg0) {\n console.log(getObject(arg0));\n };\n imports.wbg.__wbg_warn_2b3adb99ce26c314 = function(arg0) {\n console.warn(getObject(arg0));\n };\n imports.wbg.__wbg_new_abda76e883ba8a5f = function() {\n const ret = new Error();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) {\n const ret = getObject(arg1).stack;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.error(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbindgen_jsval_loose_eq = function(arg0, arg1) {\n const ret = getObject(arg0) == getObject(arg1);\n return ret;\n };\n imports.wbg.__wbindgen_number_get = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'number' ? obj : undefined;\n getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);\n };\n imports.wbg.__wbg_String_b9412f8799faab3e = function(arg0, arg1) {\n const ret = String(getObject(arg1));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_getwithrefkey_edc2c8960f0f1191 = function(arg0, arg1) {\n const ret = getObject(arg0)[getObject(arg1)];\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_get_3baa728f9d58d3f6 = function(arg0, arg1) {\n const ret = getObject(arg0)[arg1 >>> 0];\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_length_ae22078168b726f5 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_instanceof_ArrayBuffer_61dfc3198373c902 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof ArrayBuffer;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_entries_7a0e06255456ebcd = function(arg0) {\n const ret = Object.entries(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_buffer_b7b08af79b0b0974 = function(arg0) {\n const ret = getObject(arg0).buffer;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_ea1883e1e5e86686 = function(arg0) {\n const ret = new Uint8Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_set_d1e79e2388520f18 = function(arg0, arg1, arg2) {\n getObject(arg0).set(getObject(arg1), arg2 >>> 0);\n };\n imports.wbg.__wbg_length_8339fcf5d8ecd12e = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_instanceof_Uint8Array_247a91427532499e = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Uint8Array;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {\n const ret = debugString(getObject(arg1));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbindgen_rethrow = function(arg0) {\n throw takeObject(arg0);\n };\n imports.wbg.__wbindgen_memory = function() {\n const ret = wasm.memory;\n return addHeapObject(ret);\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 wasm.__wbindgen_start();\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';\n\nconst handlers = {\n init: init,\n // run_diff_json: run_diff_json,\n run_diff_proto: run_diff_proto,\n} as const;\ntype ExtractData<T> = T extends (arg: infer U) => Promise<unknown> ? U : never;\ntype HandlerData = {\n [K in keyof typeof handlers]: { type: K } & ExtractData<typeof handlers[K]>;\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 });\n return wasmReady;\n}\n\nasync function initIfNeeded() {\n if (wasmReady == null) {\n await init({});\n }\n return wasmReady;\n}\n\n// async function run_diff_json({left, right, config}: {\n// left: Uint8Array | undefined,\n// right: Uint8Array | undefined,\n// config?: exports.DiffObjConfig,\n// }): Promise<string> {\n// config = config || exports.default_diff_obj_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?: exports.DiffObjConfig,\n}): Promise<Uint8Array> {\n config = config || {};\n return exports.run_diff_proto(left, right, config);\n}\n\nexport type AnyHandlerData = HandlerData[keyof HandlerData];\nexport type InMessage = AnyHandlerData & { 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 as never);\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":"AAAA,IAAIA,EAEEC,EAAO,IAAI,MAAM,GAAG,EAAE,KAAK,MAAS,EAE1CA,EAAK,KAAK,OAAW,KAAM,GAAM,EAAK,EAEtC,SAASC,EAAUC,EAAK,CAAE,OAAOF,EAAKE,CAAG,CAAG,CAE5C,IAAIC,EAAYH,EAAK,OAErB,SAASI,EAAWF,EAAK,CACjBA,EAAM,MACVF,EAAKE,CAAG,EAAIC,EACZA,EAAYD,EAChB,CAEA,SAASG,EAAWH,EAAK,CACrB,IAAMI,EAAML,EAAUC,CAAG,EACzB,OAAAE,EAAWF,CAAG,EACPI,CACX,CAEA,IAAMC,EAAqB,OAAO,YAAgB,IAAc,IAAI,YAAY,QAAS,CAAE,UAAW,GAAM,MAAO,EAAK,CAAC,EAAI,CAAE,OAAQ,IAAM,CAAE,MAAM,MAAM,2BAA2B,CAAE,CAAE,EAEtL,OAAO,YAAgB,KAAeA,EAAkB,OAAO,EAEnE,IAAIC,EAA0B,KAE9B,SAASC,GAAuB,CAC5B,OAAID,IAA4B,MAAQA,EAAwB,aAAe,KAC3EA,EAA0B,IAAI,WAAWT,EAAK,OAAO,MAAM,GAExDS,CACX,CAEA,SAASE,EAAmBC,EAAKC,EAAK,CAClC,OAAAD,EAAMA,IAAQ,EACPJ,EAAkB,OAAOE,EAAqB,EAAE,SAASE,EAAKA,EAAMC,CAAG,CAAC,CACnF,CAEA,SAASC,EAAcC,EAAK,CACpBX,IAAcH,EAAK,QAAQA,EAAK,KAAKA,EAAK,OAAS,CAAC,EACxD,IAAME,EAAMC,EACZ,OAAAA,EAAYH,EAAKE,CAAG,EAEpBF,EAAKE,CAAG,EAAIY,EACLZ,CACX,CAEA,IAAIa,EAAkB,EAEhBC,EAAqB,OAAO,YAAgB,IAAc,IAAI,YAAY,OAAO,EAAI,CAAE,OAAQ,IAAM,CAAE,MAAM,MAAM,2BAA2B,CAAE,CAAE,EAElJC,EAAgB,OAAOD,EAAkB,YAAe,WACxD,SAAUE,EAAKC,EAAM,CACvB,OAAOH,EAAkB,WAAWE,EAAKC,CAAI,CACjD,EACM,SAAUD,EAAKC,EAAM,CACvB,IAAMC,EAAMJ,EAAkB,OAAOE,CAAG,EACxC,OAAAC,EAAK,IAAIC,CAAG,EACL,CACH,KAAMF,EAAI,OACV,QAASE,EAAI,MACjB,CACJ,EAEA,SAASC,EAAkBH,EAAKI,EAAQC,EAAS,CAE7C,GAAIA,IAAY,OAAW,CACvB,IAAMH,EAAMJ,EAAkB,OAAOE,CAAG,EAClCP,EAAMW,EAAOF,EAAI,OAAQ,CAAC,IAAM,EACtC,OAAAX,EAAqB,EAAE,SAASE,EAAKA,EAAMS,EAAI,MAAM,EAAE,IAAIA,CAAG,EAC9DL,EAAkBK,EAAI,OACfT,CACX,CAEA,IAAIC,EAAMM,EAAI,OACVP,EAAMW,EAAOV,EAAK,CAAC,IAAM,EAEvBY,EAAMf,EAAqB,EAE7BgB,EAAS,EAEb,KAAOA,EAASb,EAAKa,IAAU,CAC3B,IAAMC,EAAOR,EAAI,WAAWO,CAAM,EAClC,GAAIC,EAAO,IAAM,MACjBF,EAAIb,EAAMc,CAAM,EAAIC,CACxB,CAEA,GAAID,IAAWb,EAAK,CACZa,IAAW,IACXP,EAAMA,EAAI,MAAMO,CAAM,GAE1Bd,EAAMY,EAAQZ,EAAKC,EAAKA,EAAMa,EAASP,EAAI,OAAS,EAAG,CAAC,IAAM,EAC9D,IAAMC,EAAOV,EAAqB,EAAE,SAASE,EAAMc,EAAQd,EAAMC,CAAG,EAC9DN,EAAMW,EAAaC,EAAKC,CAAI,EAElCM,GAAUnB,EAAI,QACdK,EAAMY,EAAQZ,EAAKC,EAAKa,EAAQ,CAAC,IAAM,CAC3C,CAEA,OAAAV,EAAkBU,EACXd,CACX,CAEA,SAASgB,EAAWC,EAAG,CACnB,OAA0BA,GAAM,IACpC,CAEA,IAAIC,EAAwB,KAE5B,SAASC,GAAqB,CAC1B,OAAID,IAA0B,MAAQA,EAAsB,OAAO,WAAa,IAASA,EAAsB,OAAO,WAAa,QAAaA,EAAsB,SAAW9B,EAAK,OAAO,UACzL8B,EAAwB,IAAI,SAAS9B,EAAK,OAAO,MAAM,GAEpD8B,CACX,CAEA,SAASE,EAAYC,EAAK,CAEtB,IAAMC,EAAO,OAAOD,EACpB,GAAIC,GAAQ,UAAYA,GAAQ,WAAaD,GAAO,KAChD,MAAQ,GAAGA,CAAG,GAElB,GAAIC,GAAQ,SACR,MAAO,IAAID,CAAG,IAElB,GAAIC,GAAQ,SAAU,CAClB,IAAMC,EAAcF,EAAI,YACxB,OAAIE,GAAe,KACR,SAEA,UAAUA,CAAW,GAEpC,CACA,GAAID,GAAQ,WAAY,CACpB,IAAME,EAAOH,EAAI,KACjB,OAAI,OAAOG,GAAQ,UAAYA,EAAK,OAAS,EAClC,YAAYA,CAAI,IAEhB,UAEf,CAEA,GAAI,MAAM,QAAQH,CAAG,EAAG,CACpB,IAAMI,EAASJ,EAAI,OACfK,EAAQ,IACRD,EAAS,IACTC,GAASN,EAAYC,EAAI,CAAC,CAAC,GAE/B,QAAQM,EAAI,EAAGA,EAAIF,EAAQE,IACvBD,GAAS,KAAON,EAAYC,EAAIM,CAAC,CAAC,EAEtC,OAAAD,GAAS,IACFA,CACX,CAEA,IAAME,EAAiB,sBAAsB,KAAK,SAAS,KAAKP,CAAG,CAAC,EAChEQ,EACJ,GAAID,EAAe,OAAS,EACxBC,EAAYD,EAAe,CAAC,MAG5B,QAAO,SAAS,KAAKP,CAAG,EAE5B,GAAIQ,GAAa,SAIb,GAAI,CACA,MAAO,UAAY,KAAK,UAAUR,CAAG,EAAI,GAC7C,MAAY,CACR,MAAO,QACX,CAGJ,OAAIA,aAAe,MACR,GAAGA,EAAI,IAAI,KAAKA,EAAI,OAAO;AAAA,EAAKA,EAAI,KAAK,GAG7CQ,CACX,CAEA,SAASC,EAAkBvB,EAAKI,EAAQ,CACpC,IAAMX,EAAMW,EAAOJ,EAAI,OAAS,EAAG,CAAC,IAAM,EAC1C,OAAAT,EAAqB,EAAE,IAAIS,EAAKP,EAAM,CAAC,EACvCI,EAAkBG,EAAI,OACfP,CACX,CAEA,SAAS+B,EAAoB/B,EAAKC,EAAK,CACnC,OAAAD,EAAMA,IAAQ,EACPF,EAAqB,EAAE,SAASE,EAAM,EAAGA,EAAM,EAAIC,CAAG,CACjE,CAOO,SAAS+B,EAAeC,EAAMC,EAAOC,EAAQ,CAChD,GAAI,CACA,IAAMC,EAAShD,EAAK,gCAAgC,GAAG,EACvD,IAAIiD,EAAOrB,EAAWiB,CAAI,EAAI,EAAIH,EAAkBG,EAAM7C,EAAK,iBAAiB,EAC5EkD,EAAOlC,EACPmC,EAAOvB,EAAWkB,CAAK,EAAI,EAAIJ,EAAkBI,EAAO9C,EAAK,iBAAiB,EAC9EoD,EAAOpC,EACXhB,EAAK,eAAegD,EAAQC,EAAMC,EAAMC,EAAMC,EAAMtC,EAAciC,CAAM,CAAC,EACzE,IAAIM,EAAKtB,EAAmB,EAAE,SAASiB,EAAS,EAAI,EAAG,EAAI,EACvDM,EAAKvB,EAAmB,EAAE,SAASiB,EAAS,EAAI,EAAG,EAAI,EACvDO,EAAKxB,EAAmB,EAAE,SAASiB,EAAS,EAAI,EAAG,EAAI,EACvDQ,EAAKzB,EAAmB,EAAE,SAASiB,EAAS,EAAI,EAAG,EAAI,EAC3D,GAAIQ,EACA,MAAMlD,EAAWiD,CAAE,EAEvB,IAAIE,EAAKd,EAAoBU,EAAIC,CAAE,EAAE,MAAM,EAC3C,OAAAtD,EAAK,gBAAgBqD,EAAIC,EAAK,EAAG,CAAC,EAC3BG,CACX,QAAE,CACEzD,EAAK,gCAAgC,EAAE,CAC3C,CACJ,CAQA,eAAe0D,EAAWC,EAAQC,EAAS,CACvC,GAAI,OAAO,UAAa,YAAcD,aAAkB,SAAU,CAC9D,GAAI,OAAO,YAAY,sBAAyB,WAC5C,GAAI,CACA,OAAO,MAAM,YAAY,qBAAqBA,EAAQC,CAAO,CAEjE,OAASC,EAAG,CACR,GAAIF,EAAO,QAAQ,IAAI,cAAc,GAAK,mBACtC,QAAQ,KAAK,oMAAqME,CAAC,MAGnN,OAAMA,CAEd,CAGJ,IAAMC,EAAQ,MAAMH,EAAO,YAAY,EACvC,OAAO,MAAM,YAAY,YAAYG,EAAOF,CAAO,CAEvD,KAAO,CACH,IAAMG,EAAW,MAAM,YAAY,YAAYJ,EAAQC,CAAO,EAE9D,OAAIG,aAAoB,YAAY,SACzB,CAAE,SAAAA,EAAU,OAAAJ,CAAO,EAGnBI,CAEf,CACJ,CAEA,SAASC,GAAoB,CACzB,IAAMJ,EAAU,CAAC,EACjB,OAAAA,EAAQ,IAAM,CAAC,EACfA,EAAQ,IAAI,uBAAyB,SAASK,EAAM,CAChD,IAAMC,EAAIC,EAAUF,CAAI,EAExB,OADY,OAAOC,GAAO,UAAaA,EAAI,EAAI,EAAK,CAExD,EACAN,EAAQ,IAAI,2BAA6B,SAASK,EAAM,CACpDG,EAAWH,CAAI,CACnB,EACAL,EAAQ,IAAI,qBAAuB,SAASK,EAAMI,EAAM,CACpD,IAAMC,EAAM,IAAI,MAAMC,EAAmBN,EAAMI,CAAI,CAAC,EACpD,OAAOG,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,4BAA8B,SAASK,EAAM,CACrD,IAAMK,EAAMH,EAAUF,CAAI,EAC1B,OAAOO,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,sBAAwB,SAASK,EAAMI,EAAM,CACrD,IAAMI,EAAMN,EAAUE,CAAI,EACpBC,EAAM,OAAOG,GAAS,SAAWA,EAAM,OAC7C,IAAIC,EAAOC,EAAWL,CAAG,EAAI,EAAIM,EAAkBN,EAAKO,EAAK,kBAAmBA,EAAK,kBAAkB,EACnGC,EAAOC,EACXC,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGa,EAAM,EAAI,EACtDE,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGS,EAAM,EAAI,CAC1D,EACAd,EAAQ,IAAI,qBAAuB,SAASK,EAAM,CAE9C,OADY,OAAOE,EAAUF,CAAI,GAAO,QAE5C,EACAL,EAAQ,IAAI,qBAAuB,SAASK,EAAM,CAC9C,IAAMgB,EAAMd,EAAUF,CAAI,EAE1B,OADY,OAAOgB,GAAS,UAAYA,IAAQ,IAEpD,EACArB,EAAQ,IAAI,wBAA0B,SAASK,EAAM,CAEjD,OADYE,EAAUF,CAAI,IAAM,MAEpC,EACAL,EAAQ,IAAI,cAAgB,SAASK,EAAMI,EAAM,CAE7C,OADYF,EAAUF,CAAI,IAAKE,EAAUE,CAAI,CAEjD,EACAT,EAAQ,IAAI,sBAAwB,SAASK,EAAMI,EAAM,CACrD,IAAMC,EAAMC,EAAmBN,EAAMI,CAAI,EACzC,OAAOG,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,6BAA+B,SAASK,EAAM,CACtD,QAAQ,MAAME,EAAUF,CAAI,CAAC,CACjC,EACAL,EAAQ,IAAI,6BAA+B,SAASK,EAAM,CACtD,QAAQ,MAAME,EAAUF,CAAI,CAAC,CACjC,EACAL,EAAQ,IAAI,4BAA8B,SAASK,EAAM,CACrD,QAAQ,KAAKE,EAAUF,CAAI,CAAC,CAChC,EACAL,EAAQ,IAAI,2BAA6B,SAASK,EAAM,CACpD,QAAQ,IAAIE,EAAUF,CAAI,CAAC,CAC/B,EACAL,EAAQ,IAAI,4BAA8B,SAASK,EAAM,CACrD,QAAQ,KAAKE,EAAUF,CAAI,CAAC,CAChC,EACAL,EAAQ,IAAI,2BAA6B,UAAW,CAChD,IAAMU,EAAM,IAAI,MAChB,OAAOE,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,6BAA+B,SAASK,EAAMI,EAAM,CAC5D,IAAMC,EAAMH,EAAUE,CAAI,EAAE,MACtBK,EAAOE,EAAkBN,EAAKO,EAAK,kBAAmBA,EAAK,kBAAkB,EAC7EC,EAAOC,EACbC,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGa,EAAM,EAAI,EACtDE,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGS,EAAM,EAAI,CAC1D,EACAd,EAAQ,IAAI,6BAA+B,SAASK,EAAMI,EAAM,CAC5D,IAAIa,EACAC,EACJ,GAAI,CACAD,EAAcjB,EACdkB,EAAcd,EACd,QAAQ,MAAME,EAAmBN,EAAMI,CAAI,CAAC,CAChD,QAAE,CACEQ,EAAK,gBAAgBK,EAAaC,EAAa,CAAC,CACpD,CACJ,EACAvB,EAAQ,IAAI,0BAA4B,SAASK,EAAMI,EAAM,CAEzD,OADYF,EAAUF,CAAI,GAAKE,EAAUE,CAAI,CAEjD,EACAT,EAAQ,IAAI,sBAAwB,SAASK,EAAMI,EAAM,CACrD,IAAMI,EAAMN,EAAUE,CAAI,EACpBC,EAAM,OAAOG,GAAS,SAAWA,EAAM,OAC7CO,EAAmB,EAAE,WAAWf,EAAO,EAAI,EAAGU,EAAWL,CAAG,EAAI,EAAIA,EAAK,EAAI,EAC7EU,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAG,CAACU,EAAWL,CAAG,EAAG,EAAI,CACtE,EACAV,EAAQ,IAAI,8BAAgC,SAASK,EAAMI,EAAM,CAC7D,IAAMC,EAAM,OAAOH,EAAUE,CAAI,CAAC,EAC5BK,EAAOE,EAAkBN,EAAKO,EAAK,kBAAmBA,EAAK,kBAAkB,EAC7EC,EAAOC,EACbC,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGa,EAAM,EAAI,EACtDE,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGS,EAAM,EAAI,CAC1D,EACAd,EAAQ,IAAI,qCAAuC,SAASK,EAAMI,EAAM,CACpE,IAAMC,EAAMH,EAAUF,CAAI,EAAEE,EAAUE,CAAI,CAAC,EAC3C,OAAOG,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,2BAA6B,SAASK,EAAMI,EAAM,CAC1D,IAAMC,EAAMH,EAAUF,CAAI,EAAEI,IAAS,CAAC,EACtC,OAAOG,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,8BAAgC,SAASK,EAAM,CAEvD,OADYE,EAAUF,CAAI,EAAE,MAEhC,EACAL,EAAQ,IAAI,8CAAgD,SAASK,EAAM,CACvE,IAAImB,EACJ,GAAI,CACAA,EAASjB,EAAUF,CAAI,YAAa,WACxC,MAAY,CACRmB,EAAS,EACb,CAEA,OADYA,CAEhB,EACAxB,EAAQ,IAAI,+BAAiC,SAASK,EAAM,CACxD,IAAMK,EAAM,OAAO,QAAQH,EAAUF,CAAI,CAAC,EAC1C,OAAOO,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,8BAAgC,SAASK,EAAM,CACvD,IAAMK,EAAMH,EAAUF,CAAI,EAAE,OAC5B,OAAOO,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,2BAA6B,SAASK,EAAM,CACpD,IAAMK,EAAM,IAAI,WAAWH,EAAUF,CAAI,CAAC,EAC1C,OAAOO,EAAcF,CAAG,CAC5B,EACAV,EAAQ,IAAI,2BAA6B,SAASK,EAAMI,EAAMgB,EAAM,CAChElB,EAAUF,CAAI,EAAE,IAAIE,EAAUE,CAAI,EAAGgB,IAAS,CAAC,CACnD,EACAzB,EAAQ,IAAI,8BAAgC,SAASK,EAAM,CAEvD,OADYE,EAAUF,CAAI,EAAE,MAEhC,EACAL,EAAQ,IAAI,6CAA+C,SAASK,EAAM,CACtE,IAAImB,EACJ,GAAI,CACAA,EAASjB,EAAUF,CAAI,YAAa,UACxC,MAAY,CACRmB,EAAS,EACb,CAEA,OADYA,CAEhB,EACAxB,EAAQ,IAAI,wBAA0B,SAASK,EAAMI,EAAM,CACvD,IAAMC,EAAMgB,EAAYnB,EAAUE,CAAI,CAAC,EACjCK,EAAOE,EAAkBN,EAAKO,EAAK,kBAAmBA,EAAK,kBAAkB,EAC7EC,EAAOC,EACbC,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGa,EAAM,EAAI,EACtDE,EAAmB,EAAE,SAASf,EAAO,EAAI,EAAGS,EAAM,EAAI,CAC1D,EACAd,EAAQ,IAAI,iBAAmB,SAASK,EAAMI,EAAM,CAChD,MAAM,IAAI,MAAME,EAAmBN,EAAMI,CAAI,CAAC,CAClD,EACAT,EAAQ,IAAI,mBAAqB,SAASK,EAAM,CAC5C,MAAMG,EAAWH,CAAI,CACzB,EACAL,EAAQ,IAAI,kBAAoB,UAAW,CACvC,IAAMU,EAAMO,EAAK,OACjB,OAAOL,EAAcF,CAAG,CAC5B,EAEOV,CACX,CAMA,SAAS2B,EAAoBC,EAAUC,EAAQ,CAC3C,OAAAC,EAAOF,EAAS,QAChBG,EAAW,uBAAyBF,EACpCG,EAAwB,KACxBC,EAA0B,KAG1BH,EAAK,iBAAiB,EACfA,CACX,CAwBA,eAAeI,EAAWC,EAAgB,CACtC,GAAIC,IAAS,OAAW,OAAOA,EAG3B,OAAOD,EAAmB,KAAe,OAAO,eAAeA,CAAc,IAAM,OAAO,UAC7F,CAAC,eAAAA,CAAc,EAAIA,EAEpB,QAAQ,KAAK,2FAA2F,EAEpG,OAAOA,EAAmB,MAC1BA,EAAiB,IAAI,IAAI,uBAAwB,YAAY,GAAG,GAEpE,IAAME,EAAUC,EAAkB,GAE9B,OAAOH,GAAmB,UAAa,OAAO,SAAY,YAAcA,aAA0B,SAAa,OAAO,KAAQ,YAAcA,aAA0B,OACtKA,EAAiB,MAAMA,CAAc,GAKzC,GAAM,CAAE,SAAAI,EAAU,OAAAC,CAAO,EAAI,MAAMC,EAAW,MAAMN,EAAgBE,CAAO,EAE3E,OAAOK,EAAoBH,EAAUC,CAAM,CAC/C,CAGA,IAAOG,EAAQC,EC/ef,IAAMC,EAAW,CACb,KAAMC,EAEN,eAAgBC,CACpB,EAMIC,EAAkC,KAEtC,eAAeF,EAAK,CAAC,QAAAG,CAAO,EAAwC,CAChE,GAAID,GAAa,KACb,MAAM,IAAI,MAAM,qBAAqB,EAEzC,OAAAA,EAAYE,EAAS,CAAC,eAAgBD,CAAO,CAAC,EACzC,KAAK,IAAM,CACZ,CAAC,EACED,CACX,CAEA,eAAeG,GAAe,CAC1B,OAAIH,GAAa,MACb,MAAMF,EAAK,CAAC,CAAC,EAEVE,CACX,CAWA,eAAeD,EAAe,CAAC,KAAAK,EAAM,MAAAC,EAAO,OAAAC,CAAM,EAI1B,CACpB,OAAAA,EAASA,GAAU,CAAC,EACLP,EAAeK,EAAMC,EAAOC,CAAM,CACrD,CAYA,KAAK,UAAaC,GAAmC,CACjD,IAAMC,EAAOD,EAAM,KACbE,EAAYD,GAAM,WACvB,SAAY,CACT,GAAI,CAACA,EACD,MAAM,IAAI,MAAM,SAAS,EAE7B,IAAME,EAAUb,EAASW,EAAK,IAAI,EAClC,GAAIE,EAAS,CACLF,EAAK,OAAS,QACd,MAAML,EAAa,EAEvB,IAAMQ,EAAQ,YAAY,IAAI,EACxBC,EAAS,MAAMF,EAAQF,CAAa,EACpCK,EAAM,YAAY,IAAI,EAC5B,QAAQ,MAAM,kBAAkBL,EAAK,SAAS,SAASK,EAAMF,CAAK,IAAI,EACtE,KAAK,YAAY,CACb,KAAM,SACN,OAAQC,EACR,MAAO,KACP,UAAAH,CACJ,CAAe,CACnB,KACI,OAAM,IAAI,MAAM,kBAAkBD,EAAK,IAAI,EAAE,CAErD,GAAG,EAAE,MAAMM,GAAS,CAChB,KAAK,YAAY,CACb,KAAM,SACN,OAAQ,KACR,MAAOA,EAAM,SAAS,EACtB,UAAAL,CACJ,CAAe,CACnB,CAAC,CACL","names":["wasm","heap","getObject","idx","heap_next","dropObject","takeObject","ret","cachedTextDecoder","cachedUint8ArrayMemory0","getUint8ArrayMemory0","getStringFromWasm0","ptr","len","addHeapObject","obj","WASM_VECTOR_LEN","cachedTextEncoder","encodeString","arg","view","buf","passStringToWasm0","malloc","realloc","mem","offset","code","isLikeNone","x","cachedDataViewMemory0","getDataViewMemory0","debugString","val","type","description","name","length","debug","i","builtInMatches","className","passArray8ToWasm0","getArrayU8FromWasm0","run_diff_proto","left","right","config","retptr","ptr0","len0","ptr1","len1","r0","r1","r2","r3","v3","__wbg_load","module","imports","e","bytes","instance","__wbg_get_imports","arg0","v","getObject","takeObject","arg1","ret","getStringFromWasm0","addHeapObject","obj","ptr1","isLikeNone","passStringToWasm0","wasm","len1","WASM_VECTOR_LEN","getDataViewMemory0","val","deferred0_0","deferred0_1","result","arg2","debugString","__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","left","right","config","event","data","messageId","handler","start","result","end","error"]}
|