Add sweep function

This commit is contained in:
lash
2023-02-19 09:44:25 +00:00
parent 75c16b7198
commit f9cd542e74
7 changed files with 49 additions and 5 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -443,6 +443,19 @@ class DemurrageToken(ERC20, SealedContract, ExpiryContract):
return tx
def sweep(self, contract_address, sender_address, recipient_address, tx_format=TxFormat.JSONRPC):
enc = ABIContractEncoder()
enc.method('sweep')
enc.typ(ABIContractType.ADDRESS)
enc.address(recipient_address)
data = enc.get()
tx = self.template(sender_address, contract_address, use_nonce=True)
tx = self.set_code(tx, data)
tx = self.finalize(tx, tx_format)
return tx
def apply_demurrage(self, contract_address, sender_address, limit=0, tx_format=TxFormat.JSONRPC):
if limit == 0:
return self.transact_noarg('applyDemurrage', contract_address, sender_address)
@@ -474,8 +487,6 @@ class DemurrageToken(ERC20, SealedContract, ExpiryContract):
return tx
def tax_level(self, contract_address, sender_address=ZERO_ADDRESS):
return self.call_noarg('taxLevel', contract_address, sender_address=sender_address)