ArraysImplUpgradeable.sol 951 B

12345678910111213141516171819202122232425262728293031
  1. // SPDX-License-Identifier: MIT
  2. pragma solidity ^0.8.0;
  3. import "../utils/ArraysUpgradeable.sol";
  4. import "../proxy/utils/Initializable.sol";
  5. contract ArraysImplUpgradeable is Initializable {
  6. using ArraysUpgradeable for uint256[];
  7. uint256[] private _array;
  8. function __ArraysImpl_init(uint256[] memory array) internal onlyInitializing {
  9. __ArraysImpl_init_unchained(array);
  10. }
  11. function __ArraysImpl_init_unchained(uint256[] memory array) internal onlyInitializing {
  12. _array = array;
  13. }
  14. function findUpperBound(uint256 element) external view returns (uint256) {
  15. return _array.findUpperBound(element);
  16. }
  17. /**
  18. * @dev This empty reserved space is put in place to allow future versions to add new
  19. * variables without shifting down storage in the inheritance chain.
  20. * See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps
  21. */
  22. uint256[49] private __gap;
  23. }