UNPKG

@openzeppelin/upgrade-safe-transpiler

Version:

Solidity preprocessor used to generate OpenZeppelin Contracts Upgrade Safe.

20 lines 955 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.newFunctionPosition = void 0; const utils_1 = require("solidity-ast/utils"); const contract_start_position_1 = require("./contract-start-position"); function newFunctionPosition(contract, tools) { const firstFunctionIndex = contract.nodes.findIndex((0, utils_1.isNodeType)('FunctionDefinition')); if (firstFunctionIndex <= 0) { return (0, contract_start_position_1.contractStartPosition)(contract, tools); } else { const prevNode = contract.nodes[firstFunctionIndex - 1]; // VariableDeclaration node bounds don't include the semicolon, so we look for it // in case prevNode is that type of node const m = tools.matchOriginalAfter(prevNode, /(\s*;)?([ \t\v\f]*[\n\r])*/); return m.start + m.length; } } exports.newFunctionPosition = newFunctionPosition; //# sourceMappingURL=new-function-position.js.map