From b877e865bb7d6217c4a0d144b18352ffad7a6b2e Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Sat, 15 Jan 2022 14:00:07 +0000 Subject: [PATCH] move AsyncInit to base_obj.py --- mmgen/addr.py | 1 + mmgen/altcoins/eth/contract.py | 3 ++- mmgen/base_obj.py | 6 ++++++ mmgen/obj.py | 6 ------ mmgen/rpc.py | 2 +- mmgen/tw.py | 1 + 6 files changed, 11 insertions(+), 8 deletions(-) diff --git a/mmgen/addr.py b/mmgen/addr.py index 3fc7e716..9d995a44 100755 --- a/mmgen/addr.py +++ b/mmgen/addr.py @@ -22,6 +22,7 @@ addr.py: Address generation/display routines for the MMGen suite from hashlib import sha256,sha512 from .common import * +from .base_obj import AsyncInit from .obj import * from .baseconv import * from .protocol import init_proto,hash160 diff --git a/mmgen/altcoins/eth/contract.py b/mmgen/altcoins/eth/contract.py index 0bc01d72..bfc622f7 100755 --- a/mmgen/altcoins/eth/contract.py +++ b/mmgen/altcoins/eth/contract.py @@ -25,7 +25,8 @@ from . import rlp from mmgen.globalvars import g from mmgen.common import * -from mmgen.obj import MMGenObject,CoinAddr,TokenAddr,CoinTxID,AsyncInit +from mmgen.base_obj import AsyncInit +from mmgen.obj import MMGenObject,CoinAddr,TokenAddr,CoinTxID from mmgen.util import msg from .obj import ETHAmt diff --git a/mmgen/base_obj.py b/mmgen/base_obj.py index 397d75df..f8d209d3 100755 --- a/mmgen/base_obj.py +++ b/mmgen/base_obj.py @@ -20,6 +20,12 @@ base_obj.py: base objects with no internal imports for the MMGen suite """ +class AsyncInit(type): + async def __call__(cls,*args,**kwargs): + instance = cls.__new__(cls,*args,**kwargs) + await type(instance).__init__(instance,*args,**kwargs) + return instance + class AttrCtrlMeta(type): def __call__(cls,*args,**kwargs): instance = super().__call__(*args,**kwargs) diff --git a/mmgen/obj.py b/mmgen/obj.py index cba9dd92..e1c323d3 100755 --- a/mmgen/obj.py +++ b/mmgen/obj.py @@ -28,12 +28,6 @@ from .exception import * from .globalvars import * from .color import * -class AsyncInit(type): - async def __call__(cls,*args,**kwargs): - instance = cls.__new__(cls,*args,**kwargs) - await type(instance).__init__(instance,*args,**kwargs) - return instance - def get_obj(objname,*args,**kwargs): """ Wrapper for data objects diff --git a/mmgen/rpc.py b/mmgen/rpc.py index 6f035abb..dfa6c7ef 100755 --- a/mmgen/rpc.py +++ b/mmgen/rpc.py @@ -23,7 +23,7 @@ rpc.py: Cryptocoin RPC library for the MMGen suite import base64,json,asyncio from decimal import Decimal from .common import * -from .obj import AsyncInit +from .base_obj import AsyncInit rpc_credentials_msg = '\n'+fmt(""" Error: no {proto_name} RPC authentication method found diff --git a/mmgen/tw.py b/mmgen/tw.py index af235193..d74a923b 100755 --- a/mmgen/tw.py +++ b/mmgen/tw.py @@ -24,6 +24,7 @@ import json from collections import namedtuple from .exception import * from .common import * +from .base_obj import AsyncInit from .obj import * from .tx import is_mmgen_id,is_coin_addr from .rpc import rpc_init