Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function parseTypeSection(numberOfTypes) {
var typeInstructionNodes = [];
dump([numberOfTypes], "num types");
for (var i = 0; i < numberOfTypes; i++) {
var startLoc = getPosition();
dumpSep("type " + i);
var type = readByte();
eatBytes(1);
if (type == constants.types.func) {
dump([type], "func");
var paramValtypes = parseVec(function (b) {
return constants.valtypes[b];
});
var params = paramValtypes.map(function (v) {
return t.funcParam(
/*valtype*/
v);
});
var result = parseVec(function (b) {
return constants.valtypes[b];
});
var endLoc = getPosition();
typeInstructionNodes.push(t.withLoc(t.typeInstruction(undefined, t.signature(params, result)), endLoc, startLoc));
state.typesInModule.push({
params: params,
var _leb = require("@webassemblyjs/leb128");
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 parseTypeSection(numberOfTypes) {
var typeInstructionNodes = [];
dump([numberOfTypes], "num types");
for (var i = 0; i < numberOfTypes; i++) {
var _startLoc = getPosition();
dumpSep("type " + i);
var type = readByte();
eatBytes(1);
if (type == constants.types.func) {
dump([type], "func");
var paramValtypes = parseVec(function (b) {
return constants.valtypes[b];
});
var params = paramValtypes.map(function (v) {
return t.funcParam(
/*valtype*/
v);
});
var result = parseVec(function (b) {
return constants.valtypes[b];
});
typeInstructionNodes.push(function () {
var endLoc = getPosition();
return t.withLoc(t.typeInstruction(undefined, t.signature(params, result)), endLoc, _startLoc);
}());
function parseTypeSection(numberOfTypes) {
var typeInstructionNodes = [];
dump([numberOfTypes], "num types");
for (var i = 0; i < numberOfTypes; i++) {
var _startLoc = getPosition();
dumpSep("type " + i);
var type = readByte();
eatBytes(1);
if (type == constants.types.func) {
dump([type], "func");
var paramValtypes = parseVec(function (b) {
return constants.valtypes[b];
});
var params = paramValtypes.map(function (v) {
return t.funcParam(
/*valtype*/
v);
});
var result = parseVec(function (b) {
return constants.valtypes[b];
});
typeInstructionNodes.push(function () {
var endLoc = getPosition();
return t.withLoc(t.typeInstruction(undefined, t.signature(params, result)), endLoc, _startLoc);
}());
function parseTypeSection(numberOfTypes: number) {
const typeInstructionNodes = [];
dump([numberOfTypes], "num types");
for (let i = 0; i < numberOfTypes; i++) {
const startLoc = getPosition();
dumpSep("type " + i);
const type = readByte();
eatBytes(1);
if (type == constants.types.func) {
dump([type], "func");
const paramValtypes: Array = parseVec(
b => constants.valtypes[b]
);
const params = paramValtypes.map(v => t.funcParam(/*valtype*/ v));
const result: Array = parseVec(b => constants.valtypes[b]);
typeInstructionNodes.push(
WITH_LOC(
t.typeInstruction(undefined, t.signature(params, result)),
startLoc
)
);