laconicd/tests-solidity/suites/basic/contracts/Counter.sol

25 lines
496 B
Solidity
Raw Normal View History

pragma solidity ^0.5.11;
contract Counter {
uint256 counter = 0;
string internal constant ERROR_TOO_LOW = "COUNTER_TOO_LOW";
event Changed(uint256 counter);
event Added(uint256 counter);
function add() public {
counter++;
emit Added(counter);
emit Changed(counter);
}
function subtract() public {
require(counter > 0, ERROR_TOO_LOW);
counter--;
emit Changed(counter);
}
function getCounter() public view returns (uint256) {
return counter;
}
}