mirror of
git://holbrook.no/erc20-demurrage-token
synced 2026-05-20 02:51:10 +02:00
Define expiry in terms of period
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -6,13 +6,16 @@ from chainlib.eth.tx import (
|
||||
from chainlib.eth.contract import (
|
||||
ABIContractEncoder,
|
||||
ABIContractType,
|
||||
abi_decode_single,
|
||||
)
|
||||
from chainlib.eth.constant import ZERO_ADDRESS
|
||||
|
||||
|
||||
class ExpiryContract(TxFactory):
|
||||
|
||||
def set_expires(self, contract_address, sender_address, expire_timestamp, tx_format=TxFormat.JSONRPC):
|
||||
def set_expires_period(self, contract_address, sender_address, expire_timestamp, tx_format=TxFormat.JSONRPC):
|
||||
enc = ABIContractEncoder()
|
||||
enc.method('setExpires')
|
||||
enc.method('setExpirePeriod')
|
||||
enc.typ(ABIContractType.UINT256)
|
||||
enc.uint256(expire_timestamp)
|
||||
data = enc.get()
|
||||
@@ -20,3 +23,14 @@ class ExpiryContract(TxFactory):
|
||||
tx = self.set_code(tx, data)
|
||||
tx = self.finalize(tx, tx_format)
|
||||
return tx
|
||||
|
||||
|
||||
def expires(self, contract_address, sender_address=ZERO_ADDRESS):
|
||||
return self.call_noarg('expires', contract_address, sender_address=sender_address)
|
||||
|
||||
|
||||
@classmethod
|
||||
def parse_expires(self, v):
|
||||
return abi_decode_single(ABIContractType.UINT256, v)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user