erasure-protocol
erasure-protocol copied to clipboard
Solidity 0.6.2 - new selector syntax
Blockers
- [ ] Release Solidity 0.6.2 final
Issue
Currently, code is used like this:
constructor(address instanceRegistry, address templateContract) public {
CountdownGriefingEscrow template;
// set instance type
bytes4 instanceType = bytes4(keccak256(bytes('Escrow')));
// set initSelector
bytes4 initSelector = template.initialize.selector;
// initialize factory params
Factory._initialize(instanceRegistry, templateContract, instanceType, initSelector);
}
Soon this can be used instead:
constructor(address instanceRegistry, address templateContract) public {
// set instance type
bytes4 instanceType = bytes4(keccak256(bytes('Escrow')));
// set initSelector
bytes4 initSelector = CountdownGriefingEscrow.initialize.selector;
// initialize factory params
Factory._initialize(instanceRegistry, templateContract, instanceType, initSelector);
}
References
- https://github.com/ethereum/solidity/issues/3506
- https://github.com/ethereum/solidity/pull/8105