Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
var result = parseVec(function (b) {
return constants.valtypes[b];
});
typeInstructionNodes.push(function () {
const result: Array = parseVec(b => constants.valtypes[b]);
var paramValtypes = parseVec(function (b) {
return constants.valtypes[b];
});
var params = paramValtypes.map(function (v) {
var funcLocalNumU32 = readU32();
var funcLocalNum = funcLocalNumU32.value;
eatBytes(funcLocalNumU32.nextIndex);
dump([funcLocalNum], "num locals");
var locals = [];
for (var _i = 0; _i < funcLocalNum; _i++) {
var _startLoc5 = getPosition();
var localCountU32 = readU32();
var localCount = localCountU32.value;
eatBytes(localCountU32.nextIndex);
dump([localCount], "num local");
var valtypeByte = readByte();
eatBytes(1);
var type = constants.valtypes[valtypeByte];
var args = [];
for (var _i2 = 0; _i2 < localCount; _i2++) {
args.push(t.valtypeLiteral(type));
}
var localNode = function () {
var endLoc = getPosition();
return t.withLoc(t.instruction("local", args), endLoc, _startLoc5);
}();
locals.push(localNode);
dump([valtypeByte], type);
if (typeof type === "undefined") {
throw new CompileError("Unexpected valtype: " + toHex(valtypeByte));
var result = parseVec(function (b) {
return constants.valtypes[b];
});
typeInstructionNodes.push(function () {
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
var t = require("@webassemblyjs/ast");
var _require = require("@webassemblyjs/helper-wasm-bytecode"),
importTypes = _require.importTypes,
symbolsByByte = _require.symbolsByByte,
blockTypes = _require.blockTypes,
tableTypes = _require.tableTypes,
globalTypes = _require.globalTypes,
exportTypes = _require.exportTypes,
types = _require.types,
magicModuleHeader = _require.magicModuleHeader,
valtypes = _require.valtypes,
moduleVersion = _require.moduleVersion,
sections = _require.sections;
/**
* FIXME(sven): we can't do that because number > 2**53 will fail here
* because they cannot be represented in js.
*/
function badI32ToI64Conversion(value) {
return {
high: value < 0 ? -1 : 0,
low: value >>> 0
};
}
function toHex(n) {
const locals = [];
for (let i = 0; i < funcLocalNum; i++) {
const startLoc = getPosition();
const localCountU32 = readU32();
const localCount = localCountU32.value;
eatBytes(localCountU32.nextIndex);
dump([localCount], "num local");
const valtypeByte = readByte();
eatBytes(1);
const type = constants.valtypes[valtypeByte];
const args = [];
for (let i = 0; i < localCount; i++) {
args.push(t.valtypeLiteral(type));
}
const localNode = WITH_LOC(t.instruction("local", args), startLoc);
locals.push(localNode);
dump([valtypeByte], type);
if (typeof type === "undefined") {
throw new CompileError("Unexpected valtype: " + toHex(valtypeByte));
}
}
var result = parseVec(function (b) {
return constants.valtypes[b];
});
var endLoc = getPosition();
function parseGlobalType() {
var valtypeByte = readByte();
eatBytes(1);
var type = constants.valtypes[valtypeByte];
dump([valtypeByte], type);
if (typeof type === "undefined") {
throw new CompileError("Unknown valtype: " + toHex(valtypeByte));
}
var globalTypeByte = readByte();
eatBytes(1);
var globalType = constants.globalTypes[globalTypeByte];
dump([globalTypeByte], "global type (".concat(globalType, ")"));
if (typeof globalType === "undefined") {
throw new CompileError("Invalid mutability: " + toHex(globalTypeByte));
}
return t.globalType(type, globalType);