| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324 | 
							- var illegalop = "illegal";
 
- var magicModuleHeader = [0x00, 0x61, 0x73, 0x6d];
 
- var moduleVersion = [0x01, 0x00, 0x00, 0x00];
 
- function invertMap(obj) {
 
-   var keyModifierFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (k) {
 
-     return k;
 
-   };
 
-   var result = {};
 
-   var keys = Object.keys(obj);
 
-   for (var i = 0, length = keys.length; i < length; i++) {
 
-     result[keyModifierFn(obj[keys[i]])] = keys[i];
 
-   }
 
-   return result;
 
- }
 
- function createSymbolObject(name
 
- /*: string */
 
- , object
 
- /*: string */
 
- )
 
- /*: Symbol*/
 
- {
 
-   var numberOfArgs
 
-   /*: number*/
 
-   = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
 
-   return {
 
-     name: name,
 
-     object: object,
 
-     numberOfArgs: numberOfArgs
 
-   };
 
- }
 
- function createSymbol(name
 
- /*: string */
 
- )
 
- /*: Symbol*/
 
- {
 
-   var numberOfArgs
 
-   /*: number*/
 
-   = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
 
-   return {
 
-     name: name,
 
-     numberOfArgs: numberOfArgs
 
-   };
 
- }
 
- var types = {
 
-   func: 0x60,
 
-   result: 0x40
 
- };
 
- var exportTypes = {
 
-   0x00: "Func",
 
-   0x01: "Table",
 
-   0x02: "Mem",
 
-   0x03: "Global"
 
- };
 
- var exportTypesByName = invertMap(exportTypes);
 
- var valtypes = {
 
-   0x7f: "i32",
 
-   0x7e: "i64",
 
-   0x7d: "f32",
 
-   0x7c: "f64",
 
-   0x7b: "v128"
 
- };
 
- var valtypesByString = invertMap(valtypes);
 
- var tableTypes = {
 
-   0x70: "anyfunc"
 
- };
 
- var blockTypes = Object.assign({}, valtypes, {
 
-   // https://webassembly.github.io/spec/core/binary/types.html#binary-blocktype
 
-   0x40: null,
 
-   // https://webassembly.github.io/spec/core/binary/types.html#binary-valtype
 
-   0x7f: "i32",
 
-   0x7e: "i64",
 
-   0x7d: "f32",
 
-   0x7c: "f64"
 
- });
 
- var globalTypes = {
 
-   0x00: "const",
 
-   0x01: "var"
 
- };
 
- var globalTypesByString = invertMap(globalTypes);
 
- var importTypes = {
 
-   0x00: "func",
 
-   0x01: "table",
 
-   0x02: "mem",
 
-   0x03: "global"
 
- };
 
- var sections = {
 
-   custom: 0,
 
-   type: 1,
 
-   import: 2,
 
-   func: 3,
 
-   table: 4,
 
-   memory: 5,
 
-   global: 6,
 
-   export: 7,
 
-   start: 8,
 
-   element: 9,
 
-   code: 10,
 
-   data: 11
 
- };
 
- var symbolsByByte = {
 
-   0x00: createSymbol("unreachable"),
 
-   0x01: createSymbol("nop"),
 
-   0x02: createSymbol("block"),
 
-   0x03: createSymbol("loop"),
 
-   0x04: createSymbol("if"),
 
-   0x05: createSymbol("else"),
 
-   0x06: illegalop,
 
-   0x07: illegalop,
 
-   0x08: illegalop,
 
-   0x09: illegalop,
 
-   0x0a: illegalop,
 
-   0x0b: createSymbol("end"),
 
-   0x0c: createSymbol("br", 1),
 
-   0x0d: createSymbol("br_if", 1),
 
-   0x0e: createSymbol("br_table"),
 
-   0x0f: createSymbol("return"),
 
-   0x10: createSymbol("call", 1),
 
-   0x11: createSymbol("call_indirect", 2),
 
-   0x12: illegalop,
 
-   0x13: illegalop,
 
-   0x14: illegalop,
 
-   0x15: illegalop,
 
-   0x16: illegalop,
 
-   0x17: illegalop,
 
-   0x18: illegalop,
 
-   0x19: illegalop,
 
-   0x1a: createSymbol("drop"),
 
-   0x1b: createSymbol("select"),
 
-   0x1c: illegalop,
 
-   0x1d: illegalop,
 
-   0x1e: illegalop,
 
-   0x1f: illegalop,
 
-   0x20: createSymbol("get_local", 1),
 
-   0x21: createSymbol("set_local", 1),
 
-   0x22: createSymbol("tee_local", 1),
 
-   0x23: createSymbol("get_global", 1),
 
-   0x24: createSymbol("set_global", 1),
 
-   0x25: illegalop,
 
-   0x26: illegalop,
 
-   0x27: illegalop,
 
-   0x28: createSymbolObject("load", "u32", 1),
 
-   0x29: createSymbolObject("load", "u64", 1),
 
-   0x2a: createSymbolObject("load", "f32", 1),
 
-   0x2b: createSymbolObject("load", "f64", 1),
 
-   0x2c: createSymbolObject("load8_s", "u32", 1),
 
-   0x2d: createSymbolObject("load8_u", "u32", 1),
 
-   0x2e: createSymbolObject("load16_s", "u32", 1),
 
-   0x2f: createSymbolObject("load16_u", "u32", 1),
 
-   0x30: createSymbolObject("load8_s", "u64", 1),
 
-   0x31: createSymbolObject("load8_u", "u64", 1),
 
-   0x32: createSymbolObject("load16_s", "u64", 1),
 
-   0x33: createSymbolObject("load16_u", "u64", 1),
 
-   0x34: createSymbolObject("load32_s", "u64", 1),
 
-   0x35: createSymbolObject("load32_u", "u64", 1),
 
-   0x36: createSymbolObject("store", "u32", 1),
 
-   0x37: createSymbolObject("store", "u64", 1),
 
-   0x38: createSymbolObject("store", "f32", 1),
 
-   0x39: createSymbolObject("store", "f64", 1),
 
-   0x3a: createSymbolObject("store8", "u32", 1),
 
-   0x3b: createSymbolObject("store16", "u32", 1),
 
-   0x3c: createSymbolObject("store8", "u64", 1),
 
-   0x3d: createSymbolObject("store16", "u64", 1),
 
-   0x3e: createSymbolObject("store32", "u64", 1),
 
-   0x3f: createSymbolObject("current_memory"),
 
-   0x40: createSymbolObject("grow_memory"),
 
-   0x41: createSymbolObject("const", "i32", 1),
 
-   0x42: createSymbolObject("const", "i64", 1),
 
-   0x43: createSymbolObject("const", "f32", 1),
 
-   0x44: createSymbolObject("const", "f64", 1),
 
-   0x45: createSymbolObject("eqz", "i32"),
 
-   0x46: createSymbolObject("eq", "i32"),
 
-   0x47: createSymbolObject("ne", "i32"),
 
-   0x48: createSymbolObject("lt_s", "i32"),
 
-   0x49: createSymbolObject("lt_u", "i32"),
 
-   0x4a: createSymbolObject("gt_s", "i32"),
 
-   0x4b: createSymbolObject("gt_u", "i32"),
 
-   0x4c: createSymbolObject("le_s", "i32"),
 
-   0x4d: createSymbolObject("le_u", "i32"),
 
-   0x4e: createSymbolObject("ge_s", "i32"),
 
-   0x4f: createSymbolObject("ge_u", "i32"),
 
-   0x50: createSymbolObject("eqz", "i64"),
 
-   0x51: createSymbolObject("eq", "i64"),
 
-   0x52: createSymbolObject("ne", "i64"),
 
-   0x53: createSymbolObject("lt_s", "i64"),
 
-   0x54: createSymbolObject("lt_u", "i64"),
 
-   0x55: createSymbolObject("gt_s", "i64"),
 
-   0x56: createSymbolObject("gt_u", "i64"),
 
-   0x57: createSymbolObject("le_s", "i64"),
 
-   0x58: createSymbolObject("le_u", "i64"),
 
-   0x59: createSymbolObject("ge_s", "i64"),
 
-   0x5a: createSymbolObject("ge_u", "i64"),
 
-   0x5b: createSymbolObject("eq", "f32"),
 
-   0x5c: createSymbolObject("ne", "f32"),
 
-   0x5d: createSymbolObject("lt", "f32"),
 
-   0x5e: createSymbolObject("gt", "f32"),
 
-   0x5f: createSymbolObject("le", "f32"),
 
-   0x60: createSymbolObject("ge", "f32"),
 
-   0x61: createSymbolObject("eq", "f64"),
 
-   0x62: createSymbolObject("ne", "f64"),
 
-   0x63: createSymbolObject("lt", "f64"),
 
-   0x64: createSymbolObject("gt", "f64"),
 
-   0x65: createSymbolObject("le", "f64"),
 
-   0x66: createSymbolObject("ge", "f64"),
 
-   0x67: createSymbolObject("clz", "i32"),
 
-   0x68: createSymbolObject("ctz", "i32"),
 
-   0x69: createSymbolObject("popcnt", "i32"),
 
-   0x6a: createSymbolObject("add", "i32"),
 
-   0x6b: createSymbolObject("sub", "i32"),
 
-   0x6c: createSymbolObject("mul", "i32"),
 
-   0x6d: createSymbolObject("div_s", "i32"),
 
-   0x6e: createSymbolObject("div_u", "i32"),
 
-   0x6f: createSymbolObject("rem_s", "i32"),
 
-   0x70: createSymbolObject("rem_u", "i32"),
 
-   0x71: createSymbolObject("and", "i32"),
 
-   0x72: createSymbolObject("or", "i32"),
 
-   0x73: createSymbolObject("xor", "i32"),
 
-   0x74: createSymbolObject("shl", "i32"),
 
-   0x75: createSymbolObject("shr_s", "i32"),
 
-   0x76: createSymbolObject("shr_u", "i32"),
 
-   0x77: createSymbolObject("rotl", "i32"),
 
-   0x78: createSymbolObject("rotr", "i32"),
 
-   0x79: createSymbolObject("clz", "i64"),
 
-   0x7a: createSymbolObject("ctz", "i64"),
 
-   0x7b: createSymbolObject("popcnt", "i64"),
 
-   0x7c: createSymbolObject("add", "i64"),
 
-   0x7d: createSymbolObject("sub", "i64"),
 
-   0x7e: createSymbolObject("mul", "i64"),
 
-   0x7f: createSymbolObject("div_s", "i64"),
 
-   0x80: createSymbolObject("div_u", "i64"),
 
-   0x81: createSymbolObject("rem_s", "i64"),
 
-   0x82: createSymbolObject("rem_u", "i64"),
 
-   0x83: createSymbolObject("and", "i64"),
 
-   0x84: createSymbolObject("or", "i64"),
 
-   0x85: createSymbolObject("xor", "i64"),
 
-   0x86: createSymbolObject("shl", "i64"),
 
-   0x87: createSymbolObject("shr_s", "i64"),
 
-   0x88: createSymbolObject("shr_u", "i64"),
 
-   0x89: createSymbolObject("rotl", "i64"),
 
-   0x8a: createSymbolObject("rotr", "i64"),
 
-   0x8b: createSymbolObject("abs", "f32"),
 
-   0x8c: createSymbolObject("neg", "f32"),
 
-   0x8d: createSymbolObject("ceil", "f32"),
 
-   0x8e: createSymbolObject("floor", "f32"),
 
-   0x8f: createSymbolObject("trunc", "f32"),
 
-   0x90: createSymbolObject("nearest", "f32"),
 
-   0x91: createSymbolObject("sqrt", "f32"),
 
-   0x92: createSymbolObject("add", "f32"),
 
-   0x93: createSymbolObject("sub", "f32"),
 
-   0x94: createSymbolObject("mul", "f32"),
 
-   0x95: createSymbolObject("div", "f32"),
 
-   0x96: createSymbolObject("min", "f32"),
 
-   0x97: createSymbolObject("max", "f32"),
 
-   0x98: createSymbolObject("copysign", "f32"),
 
-   0x99: createSymbolObject("abs", "f64"),
 
-   0x9a: createSymbolObject("neg", "f64"),
 
-   0x9b: createSymbolObject("ceil", "f64"),
 
-   0x9c: createSymbolObject("floor", "f64"),
 
-   0x9d: createSymbolObject("trunc", "f64"),
 
-   0x9e: createSymbolObject("nearest", "f64"),
 
-   0x9f: createSymbolObject("sqrt", "f64"),
 
-   0xa0: createSymbolObject("add", "f64"),
 
-   0xa1: createSymbolObject("sub", "f64"),
 
-   0xa2: createSymbolObject("mul", "f64"),
 
-   0xa3: createSymbolObject("div", "f64"),
 
-   0xa4: createSymbolObject("min", "f64"),
 
-   0xa5: createSymbolObject("max", "f64"),
 
-   0xa6: createSymbolObject("copysign", "f64"),
 
-   0xa7: createSymbolObject("wrap/i64", "i32"),
 
-   0xa8: createSymbolObject("trunc_s/f32", "i32"),
 
-   0xa9: createSymbolObject("trunc_u/f32", "i32"),
 
-   0xaa: createSymbolObject("trunc_s/f64", "i32"),
 
-   0xab: createSymbolObject("trunc_u/f64", "i32"),
 
-   0xac: createSymbolObject("extend_s/i32", "i64"),
 
-   0xad: createSymbolObject("extend_u/i32", "i64"),
 
-   0xae: createSymbolObject("trunc_s/f32", "i64"),
 
-   0xaf: createSymbolObject("trunc_u/f32", "i64"),
 
-   0xb0: createSymbolObject("trunc_s/f64", "i64"),
 
-   0xb1: createSymbolObject("trunc_u/f64", "i64"),
 
-   0xb2: createSymbolObject("convert_s/i32", "f32"),
 
-   0xb3: createSymbolObject("convert_u/i32", "f32"),
 
-   0xb4: createSymbolObject("convert_s/i64", "f32"),
 
-   0xb5: createSymbolObject("convert_u/i64", "f32"),
 
-   0xb6: createSymbolObject("demote/f64", "f32"),
 
-   0xb7: createSymbolObject("convert_s/i32", "f64"),
 
-   0xb8: createSymbolObject("convert_u/i32", "f64"),
 
-   0xb9: createSymbolObject("convert_s/i64", "f64"),
 
-   0xba: createSymbolObject("convert_u/i64", "f64"),
 
-   0xbb: createSymbolObject("promote/f32", "f64"),
 
-   0xbc: createSymbolObject("reinterpret/f32", "i32"),
 
-   0xbd: createSymbolObject("reinterpret/f64", "i64"),
 
-   0xbe: createSymbolObject("reinterpret/i32", "f32"),
 
-   0xbf: createSymbolObject("reinterpret/i64", "f64")
 
- };
 
- var symbolsByName = invertMap(symbolsByByte, function (obj) {
 
-   if (typeof obj.object === "string") {
 
-     return "".concat(obj.object, ".").concat(obj.name);
 
-   }
 
-   return obj.name;
 
- });
 
- export default {
 
-   symbolsByByte: symbolsByByte,
 
-   sections: sections,
 
-   magicModuleHeader: magicModuleHeader,
 
-   moduleVersion: moduleVersion,
 
-   types: types,
 
-   valtypes: valtypes,
 
-   exportTypes: exportTypes,
 
-   blockTypes: blockTypes,
 
-   tableTypes: tableTypes,
 
-   globalTypes: globalTypes,
 
-   importTypes: importTypes,
 
-   valtypesByString: valtypesByString,
 
-   globalTypesByString: globalTypesByString,
 
-   exportTypesByName: exportTypesByName,
 
-   symbolsByName: symbolsByName
 
- };
 
- export { getSectionForNode } from "./section";
 
 
  |