UNPKG

@solvprotocol/upgrade-safe-transpiler

Version:

Solidity preprocessor used to generate OpenZeppelin Contracts Upgrade Safe.

27 lines 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.removeStateVarInits = void 0; const utils_1 = require("solidity-ast/utils"); const ast_utils_1 = require("../solc/ast-utils"); const upgrades_overrides_1 = require("../utils/upgrades-overrides"); function* removeStateVarInits(sourceUnit) { for (const contractNode of (0, utils_1.findAll)('ContractDefinition', sourceUnit)) { if ((0, upgrades_overrides_1.hasConstructorOverride)(contractNode)) { continue; } for (const varDecl of (0, utils_1.findAll)('VariableDeclaration', contractNode)) { if (varDecl.stateVariable && varDecl.value && !varDecl.constant) { if ((0, upgrades_overrides_1.hasOverride)(varDecl, 'state-variable-assignment')) { continue; } yield { ...(0, ast_utils_1.getNodeBounds)(varDecl), kind: 'purge-var-inits', transform: source => source.replace(/\s*=.*/s, ''), }; } } } } exports.removeStateVarInits = removeStateVarInits; //# sourceMappingURL=purge-var-inits.js.map