objdiff-wasm 3.0.0-beta.4 → 3.0.0-beta.6

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.
@@ -22,6 +22,7 @@ export class Object {
22
22
  */
23
23
  private constructor();
24
24
  static parse(data: Uint8Array, config: DiffConfig): Object;
25
+ hash(): bigint;
25
26
  }
26
27
 
27
28
  export class ObjectDiff {
@@ -104,8 +104,12 @@ export interface ContextItemSeparator {
104
104
  * ## `"emphasized"`
105
105
  *
106
106
  * ## `"special"`
107
+ *
108
+ * ## `"delete"`
109
+ *
110
+ * ## `"insert"`
107
111
  */
108
- export type HoverItemColor = 'normal' | 'emphasized' | 'special';
112
+ export type HoverItemColor = 'normal' | 'emphasized' | 'special' | 'delete' | 'insert';
109
113
  export interface HoverItemText {
110
114
  label: string,
111
115
  value: string,
Binary file
package/dist/objdiff.js CHANGED
@@ -121,8 +121,6 @@ let postReturn4;
121
121
  let postReturn5;
122
122
  let postReturn6;
123
123
  let postReturn7;
124
- let postReturn8;
125
- let postReturn9;
126
124
  const handleTable0 = [
127
125
  T_FLAG,
128
126
  0
@@ -345,6 +343,14 @@ Object$1.parse = function(arg0, arg1) {
345
343
  if ('object' == typeof retVal && 'err' === retVal.tag) throw new ComponentError(retVal.val);
346
344
  return retVal.val;
347
345
  };
346
+ let diffMethodObjectHash;
347
+ Object$1.prototype.hash = function() {
348
+ var handle1 = this[symbolRscHandle];
349
+ if (!handle1 || (handleTable1[(handle1 << 1) + 1] & T_FLAG) === 0) throw new TypeError('Resource error: Not a valid "Object" resource.');
350
+ var handle0 = handleTable1[(handle1 << 1) + 1] & ~T_FLAG;
351
+ const ret = diffMethodObjectHash(handle0);
352
+ return BigInt.asUintN(64, ret);
353
+ };
348
354
  let diffMethodObjectDiffFindSymbol;
349
355
  class ObjectDiff {
350
356
  constructor(){
@@ -1043,6 +1049,12 @@ function symbolHover(arg0, arg1) {
1043
1049
  case 2:
1044
1050
  enum5 = 'special';
1045
1051
  break;
1052
+ case 3:
1053
+ enum5 = 'delete';
1054
+ break;
1055
+ case 4:
1056
+ enum5 = 'insert';
1057
+ break;
1046
1058
  default:
1047
1059
  throw new TypeError('invalid discriminant specified for HoverItemColor');
1048
1060
  }
@@ -1080,101 +1092,80 @@ function instructionContext(arg0, arg1, arg2, arg3) {
1080
1092
  if (!handle4 || (handleTable2[(handle4 << 1) + 1] & T_FLAG) === 0) throw new TypeError('Resource error: Not a valid "DiffConfig" resource.');
1081
1093
  var handle3 = handleTable2[(handle4 << 1) + 1] & ~T_FLAG;
1082
1094
  const ret = displayInstructionContext(handle0, toUint32(v2_0), v2_1 ? 1 : 0, toUint32(arg2), handle3);
1083
- let variant13;
1084
- switch(dataView(memory0).getUint8(ret + 0, true)){
1085
- case 0:
1086
- var len11 = dataView(memory0).getInt32(ret + 8, true);
1087
- var base11 = dataView(memory0).getInt32(ret + 4, true);
1088
- var result11 = [];
1089
- for(let i = 0; i < len11; i++){
1090
- const base = base11 + 24 * i;
1091
- let variant10;
1092
- switch(dataView(memory0).getUint8(base + 0, true)){
1093
- case 0:
1094
- {
1095
- var ptr5 = dataView(memory0).getInt32(base + 4, true);
1096
- var len5 = dataView(memory0).getInt32(base + 8, true);
1097
- var result5 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr5, len5));
1098
- let variant7;
1099
- switch(dataView(memory0).getUint8(base + 12, true)){
1100
- case 0:
1101
- variant7 = void 0;
1102
- break;
1103
- case 1:
1104
- var ptr6 = dataView(memory0).getInt32(base + 16, true);
1105
- var len6 = dataView(memory0).getInt32(base + 20, true);
1106
- var result6 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr6, len6));
1107
- variant7 = result6;
1108
- break;
1109
- default:
1110
- throw new TypeError('invalid variant discriminant for option');
1111
- }
1112
- variant10 = {
1113
- tag: 'copy',
1114
- val: {
1115
- value: result5,
1116
- label: variant7
1117
- }
1118
- };
1095
+ var len11 = dataView(memory0).getInt32(ret + 4, true);
1096
+ var base11 = dataView(memory0).getInt32(ret + 0, true);
1097
+ var result11 = [];
1098
+ for(let i = 0; i < len11; i++){
1099
+ const base = base11 + 24 * i;
1100
+ let variant10;
1101
+ switch(dataView(memory0).getUint8(base + 0, true)){
1102
+ case 0:
1103
+ {
1104
+ var ptr5 = dataView(memory0).getInt32(base + 4, true);
1105
+ var len5 = dataView(memory0).getInt32(base + 8, true);
1106
+ var result5 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr5, len5));
1107
+ let variant7;
1108
+ switch(dataView(memory0).getUint8(base + 12, true)){
1109
+ case 0:
1110
+ variant7 = void 0;
1111
+ break;
1112
+ case 1:
1113
+ var ptr6 = dataView(memory0).getInt32(base + 16, true);
1114
+ var len6 = dataView(memory0).getInt32(base + 20, true);
1115
+ var result6 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr6, len6));
1116
+ variant7 = result6;
1119
1117
  break;
1118
+ default:
1119
+ throw new TypeError('invalid variant discriminant for option');
1120
+ }
1121
+ variant10 = {
1122
+ tag: 'copy',
1123
+ val: {
1124
+ value: result5,
1125
+ label: variant7
1120
1126
  }
1121
- case 1:
1122
- {
1123
- var ptr8 = dataView(memory0).getInt32(base + 4, true);
1124
- var len8 = dataView(memory0).getInt32(base + 8, true);
1125
- var result8 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr8, len8));
1126
- let enum9;
1127
- switch(dataView(memory0).getUint8(base + 16, true)){
1128
- case 0:
1129
- enum9 = 'normal';
1130
- break;
1131
- case 1:
1132
- enum9 = 'extab';
1133
- break;
1134
- default:
1135
- throw new TypeError('invalid discriminant specified for SymbolNavigationKind');
1136
- }
1137
- variant10 = {
1138
- tag: 'navigate',
1139
- val: {
1140
- label: result8,
1141
- symbol: dataView(memory0).getInt32(base + 12, true) >>> 0,
1142
- kind: enum9
1143
- }
1144
- };
1127
+ };
1128
+ break;
1129
+ }
1130
+ case 1:
1131
+ {
1132
+ var ptr8 = dataView(memory0).getInt32(base + 4, true);
1133
+ var len8 = dataView(memory0).getInt32(base + 8, true);
1134
+ var result8 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr8, len8));
1135
+ let enum9;
1136
+ switch(dataView(memory0).getUint8(base + 16, true)){
1137
+ case 0:
1138
+ enum9 = 'normal';
1139
+ break;
1140
+ case 1:
1141
+ enum9 = 'extab';
1145
1142
  break;
1143
+ default:
1144
+ throw new TypeError('invalid discriminant specified for SymbolNavigationKind');
1145
+ }
1146
+ variant10 = {
1147
+ tag: 'navigate',
1148
+ val: {
1149
+ label: result8,
1150
+ symbol: dataView(memory0).getInt32(base + 12, true) >>> 0,
1151
+ kind: enum9
1146
1152
  }
1147
- case 2:
1148
- variant10 = {
1149
- tag: 'separator'
1150
- };
1151
- break;
1152
- default:
1153
- throw new TypeError('invalid variant discriminant for ContextItem');
1153
+ };
1154
+ break;
1154
1155
  }
1155
- result11.push(variant10);
1156
- }
1157
- variant13 = {
1158
- tag: 'ok',
1159
- val: result11
1160
- };
1161
- break;
1162
- case 1:
1163
- var ptr12 = dataView(memory0).getInt32(ret + 4, true);
1164
- var len12 = dataView(memory0).getInt32(ret + 8, true);
1165
- var result12 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr12, len12));
1166
- variant13 = {
1167
- tag: 'err',
1168
- val: result12
1169
- };
1170
- break;
1171
- default:
1172
- throw new TypeError('invalid variant discriminant for expected');
1156
+ case 2:
1157
+ variant10 = {
1158
+ tag: 'separator'
1159
+ };
1160
+ break;
1161
+ default:
1162
+ throw new TypeError('invalid variant discriminant for ContextItem');
1163
+ }
1164
+ result11.push(variant10);
1173
1165
  }
1174
- const retVal = variant13;
1175
- postReturn8(ret);
1176
- if ('object' == typeof retVal && 'err' === retVal.tag) throw new ComponentError(retVal.val);
1177
- return retVal.val;
1166
+ const retVal = result11;
1167
+ postReturn6(ret);
1168
+ return retVal;
1178
1169
  }
1179
1170
  let displayInstructionHover;
1180
1171
  function instructionHover(arg0, arg1, arg2, arg3) {
@@ -1186,85 +1177,70 @@ function instructionHover(arg0, arg1, arg2, arg3) {
1186
1177
  if (!handle4 || (handleTable2[(handle4 << 1) + 1] & T_FLAG) === 0) throw new TypeError('Resource error: Not a valid "DiffConfig" resource.');
1187
1178
  var handle3 = handleTable2[(handle4 << 1) + 1] & ~T_FLAG;
1188
1179
  const ret = displayInstructionHover(handle0, toUint32(v2_0), v2_1 ? 1 : 0, toUint32(arg2), handle3);
1189
- let variant11;
1190
- switch(dataView(memory0).getUint8(ret + 0, true)){
1191
- case 0:
1192
- var len9 = dataView(memory0).getInt32(ret + 8, true);
1193
- var base9 = dataView(memory0).getInt32(ret + 4, true);
1194
- var result9 = [];
1195
- for(let i = 0; i < len9; i++){
1196
- const base = base9 + 24 * i;
1197
- let variant8;
1198
- switch(dataView(memory0).getUint8(base + 0, true)){
1199
- case 0:
1200
- {
1201
- var ptr5 = dataView(memory0).getInt32(base + 4, true);
1202
- var len5 = dataView(memory0).getInt32(base + 8, true);
1203
- var result5 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr5, len5));
1204
- var ptr6 = dataView(memory0).getInt32(base + 12, true);
1205
- var len6 = dataView(memory0).getInt32(base + 16, true);
1206
- var result6 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr6, len6));
1207
- let enum7;
1208
- switch(dataView(memory0).getUint8(base + 20, true)){
1209
- case 0:
1210
- enum7 = 'normal';
1211
- break;
1212
- case 1:
1213
- enum7 = 'emphasized';
1214
- break;
1215
- case 2:
1216
- enum7 = 'special';
1217
- break;
1218
- default:
1219
- throw new TypeError('invalid discriminant specified for HoverItemColor');
1220
- }
1221
- variant8 = {
1222
- tag: 'text',
1223
- val: {
1224
- label: result5,
1225
- value: result6,
1226
- color: enum7
1227
- }
1228
- };
1180
+ var len9 = dataView(memory0).getInt32(ret + 4, true);
1181
+ var base9 = dataView(memory0).getInt32(ret + 0, true);
1182
+ var result9 = [];
1183
+ for(let i = 0; i < len9; i++){
1184
+ const base = base9 + 24 * i;
1185
+ let variant8;
1186
+ switch(dataView(memory0).getUint8(base + 0, true)){
1187
+ case 0:
1188
+ {
1189
+ var ptr5 = dataView(memory0).getInt32(base + 4, true);
1190
+ var len5 = dataView(memory0).getInt32(base + 8, true);
1191
+ var result5 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr5, len5));
1192
+ var ptr6 = dataView(memory0).getInt32(base + 12, true);
1193
+ var len6 = dataView(memory0).getInt32(base + 16, true);
1194
+ var result6 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr6, len6));
1195
+ let enum7;
1196
+ switch(dataView(memory0).getUint8(base + 20, true)){
1197
+ case 0:
1198
+ enum7 = 'normal';
1199
+ break;
1200
+ case 1:
1201
+ enum7 = 'emphasized';
1229
1202
  break;
1203
+ case 2:
1204
+ enum7 = 'special';
1205
+ break;
1206
+ case 3:
1207
+ enum7 = 'delete';
1208
+ break;
1209
+ case 4:
1210
+ enum7 = 'insert';
1211
+ break;
1212
+ default:
1213
+ throw new TypeError('invalid discriminant specified for HoverItemColor');
1214
+ }
1215
+ variant8 = {
1216
+ tag: 'text',
1217
+ val: {
1218
+ label: result5,
1219
+ value: result6,
1220
+ color: enum7
1230
1221
  }
1231
- case 1:
1232
- variant8 = {
1233
- tag: 'separator'
1234
- };
1235
- break;
1236
- default:
1237
- throw new TypeError('invalid variant discriminant for HoverItem');
1222
+ };
1223
+ break;
1238
1224
  }
1239
- result9.push(variant8);
1240
- }
1241
- variant11 = {
1242
- tag: 'ok',
1243
- val: result9
1244
- };
1245
- break;
1246
- case 1:
1247
- var ptr10 = dataView(memory0).getInt32(ret + 4, true);
1248
- var len10 = dataView(memory0).getInt32(ret + 8, true);
1249
- var result10 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr10, len10));
1250
- variant11 = {
1251
- tag: 'err',
1252
- val: result10
1253
- };
1254
- break;
1255
- default:
1256
- throw new TypeError('invalid variant discriminant for expected');
1225
+ case 1:
1226
+ variant8 = {
1227
+ tag: 'separator'
1228
+ };
1229
+ break;
1230
+ default:
1231
+ throw new TypeError('invalid variant discriminant for HoverItem');
1232
+ }
1233
+ result9.push(variant8);
1257
1234
  }
1258
- const retVal = variant11;
1259
- postReturn9(ret);
1260
- if ('object' == typeof retVal && 'err' === retVal.tag) throw new ComponentError(retVal.val);
1261
- return retVal.val;
1235
+ const retVal = result9;
1236
+ postReturn7(ret);
1237
+ return retVal;
1262
1238
  }
1263
1239
  const $init = (()=>{
1264
1240
  let gen = function*() {
1265
1241
  const module0 = fetchCompile(new URL('./objdiff.core.wasm', import.meta.url));
1266
- const module1 = base64Compile('AGFzbQEAAAABDQJgAX8AYAV/f39/fwADBQQBAAAABAUBcAEEBAccBQEwAAABMQABATIAAgEzAAMIJGltcG9ydHMBAAoxBBEAIAAgASACIAMgBEEAEQEACwkAIABBAREAAAsJACAAQQIRAAALCQAgAEEDEQAACwAvCXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AQ13aXQtY29tcG9uZW50BzAuMjIzLjA');
1267
- const module2 = base64Compile('AGFzbQEAAAABDQJgAX8AYAV/f39/fwACJAUAATAAAQABMQAAAAEyAAAAATMAAAAIJGltcG9ydHMBcAEEBAkKAQBBAAsEAAECAwAvCXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AQ13aXQtY29tcG9uZW50BzAuMjIzLjA');
1242
+ const module1 = base64Compile('AGFzbQEAAAABDQJgAX8AYAV/f39/fwADBQQBAAAABAUBcAEEBAccBQEwAAABMQABATIAAgEzAAMIJGltcG9ydHMBAAoxBBEAIAAgASACIAMgBEEAEQEACwkAIABBAREAAAsJACAAQQIRAAALCQAgAEEDEQAACwAvCXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AQ13aXQtY29tcG9uZW50BzAuMjI5LjA');
1243
+ const module2 = base64Compile('AGFzbQEAAAABDQJgAX8AYAV/f39/fwACJAUAATAAAQABMQAAAAEyAAAAATMAAAAIJGltcG9ydHMBcAEEBAkKAQBBAAsEAAECAwAvCXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AQ13aXQtY29tcG9uZW50BzAuMjI5LjA');
1268
1244
  ({ exports: exports0 } = yield instantiateCore((yield module1)));
1269
1245
  ({ exports: exports1 } = yield instantiateCore((yield module0), {
1270
1246
  '[export]objdiff:core/diff': {
@@ -1294,15 +1270,14 @@ const $init = (()=>{
1294
1270
  postReturn4 = exports1['cabi_post_objdiff:core/display#display-symbol'];
1295
1271
  postReturn5 = exports1['cabi_post_objdiff:core/display#display-instruction-row'];
1296
1272
  postReturn6 = exports1['cabi_post_objdiff:core/display#symbol-context'];
1297
- postReturn7 = exports1['cabi_post_objdiff:core/display#symbol-hover'];
1298
- postReturn8 = exports1['cabi_post_objdiff:core/display#instruction-context'];
1299
- postReturn9 = exports1['cabi_post_objdiff:core/display#instruction-hover'];
1273
+ postReturn7 = exports1['cabi_post_objdiff:core/display#instruction-hover'];
1300
1274
  exports1Init = exports1.init;
1301
1275
  exports1Version = exports1.version;
1302
1276
  diffConstructorDiffConfig = exports1['objdiff:core/diff#[constructor]diff-config'];
1303
1277
  diffMethodDiffConfigSetProperty = exports1['objdiff:core/diff#[method]diff-config.set-property'];
1304
1278
  diffMethodDiffConfigGetProperty = exports1['objdiff:core/diff#[method]diff-config.get-property'];
1305
1279
  diffStaticObjectParse = exports1['objdiff:core/diff#[static]object.parse'];
1280
+ diffMethodObjectHash = exports1['objdiff:core/diff#[method]object.hash'];
1306
1281
  diffMethodObjectDiffFindSymbol = exports1['objdiff:core/diff#[method]object-diff.find-symbol'];
1307
1282
  diffRunDiff = exports1['objdiff:core/diff#run-diff'];
1308
1283
  displayDisplaySections = exports1['objdiff:core/display#display-sections'];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "objdiff-wasm",
3
- "version": "3.0.0-beta.4",
3
+ "version": "3.0.0-beta.6",
4
4
  "description": "A local diffing tool for decompilation projects.",
5
5
  "author": {
6
6
  "name": "Luke Street",