@gnus.ai/upgrade-safe-transpiler-diamond
Version:
Solidity preprocessor used to generate OpenZeppelin Contracts Upgrade Safe using Diamond Pattern (EIP-2535).
31 lines • 926 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.prevNodeBounds = exports.prevContractNode = void 0;
const ast_utils_1 = require("../../solc/ast-utils");
/**
* Find the previous sub-node of a contract
* @param contract the contract definition node
* @param id id of the current node
*/
function prevContractNode(contract, id) {
let prevNode = undefined;
for (const node of contract.nodes) {
if (node.id == id) {
break;
}
else {
prevNode = node;
}
}
return prevNode;
}
exports.prevContractNode = prevContractNode;
function prevNodeBounds(contract, id) {
const prevNode = prevContractNode(contract, id);
if (prevNode !== undefined) {
return (0, ast_utils_1.getNodeBounds)(prevNode);
}
return undefined;
}
exports.prevNodeBounds = prevNodeBounds;
//# sourceMappingURL=prev-contract-node.js.map