tx.py,txfile.py: minor cleanups

This commit is contained in:
The MMGen Project 2022-02-03 20:40:41 +00:00
commit 5d5c1835dd
Signed by: mmgen
GPG key ID: 3F8B1861E32B7DA2
2 changed files with 9 additions and 19 deletions

View file

@ -285,26 +285,16 @@ class MMGenTxInput(MMGenTxIO):
class MMGenTxOutput(MMGenTxIO):
is_chg = ListItemAttr(bool,typeconv=False)
class MMGenTxIOList(MMGenObject):
class MMGenTxIOList(list,MMGenObject):
def __init__(self,parent,data=None):
self.parent = parent
if data:
assert isinstance(data,list), 'MMGenTxIOList_check1'
self.data = data
data = data
else:
self.data = list()
def __getitem__(self,val): return self.data.__getitem__(val)
def __setitem__(self,key,val): return self.data.__setitem__(key,val)
def __delitem__(self,val): return self.data.__delitem__(val)
def __contains__(self,val): return self.data.__contains__(val)
def __iter__(self): return self.data.__iter__()
def __len__(self): return self.data.__len__()
def __add__(self,val): return self.data.__add__(val)
def __eq__(self,val): return self.data.__eq__(val)
def append(self,val): return self.data.append(val)
def sort(self,*args,**kwargs): return self.data.sort(*args,**kwargs)
data = list()
list.__init__(self,data)
class MMGenTxInputList(MMGenTxIOList):

View file

@ -49,11 +49,11 @@ class MMGenTxFile:
assert len(d), f'no {desc}!'
for e in d:
e['amt'] = tx.proto.coin_amt(e['amt'])
io,io_list = (
(MMGenTxOutput,MMGenTxOutputList),
(MMGenTxInput,MMGenTxInputList)
)[desc=='inputs']
return io_list(tx,[io(tx.proto,**e) for e in d])
io,io_list = {
'inputs': (MMGenTxInput,MMGenTxInputList),
'outputs': (MMGenTxOutput,MMGenTxOutputList),
}[desc]
return io_list( parent=tx, data=[io(tx.proto,**e) for e in d] )
from .fileutil import get_data_from_file
tx_data = get_data_from_file(infile,tx.desc+' data',quiet=quiet_open)