diff --git a/Makefile b/Makefile index b71f71ae4a..4d0be6d9fa 100644 --- a/Makefile +++ b/Makefile @@ -13,8 +13,8 @@ benchmark: poetry run brownie run examples/benchmark mypyc: - mypyc dank_mids/_demo_mode.py dank_mids/_eth_utils.py dank_mids/_uid.py dank_mids/brownie_patch/__init__.py dank_mids/brownie_patch/_abi.py dank_mids/brownie_patch/call.py dank_mids/brownie_patch/overloaded.py dank_mids/brownie_patch/types.py dank_mids/helpers/_codec.py dank_mids/helpers/lru_cache.py dank_mids/helpers/_weaklist.py dank_mids/constants.py dank_mids/ENVIRONMENT_VARIABLES.py --strict --pretty --disable-error-code unused-ignore + mypyc dank_mids/_demo_mode.py dank_mids/_eth_utils.py dank_mids/_mode.py dank_mids/_uid.py dank_mids/brownie_patch/__init__.py dank_mids/brownie_patch/_abi.py dank_mids/brownie_patch/call.py dank_mids/brownie_patch/overloaded.py dank_mids/brownie_patch/types.py dank_mids/helpers/_codec.py dank_mids/helpers/lru_cache.py dank_mids/helpers/_weaklist.py dank_mids/constants.py dank_mids/ENVIRONMENT_VARIABLES.py --strict --pretty --disable-error-code unused-ignore mypyc-3-8: - mypyc dank_mids/_demo_mode.py dank_mids/_eth_utils.py dank_mids/_uid.py dank_mids/brownie_patch/__init__.py dank_mids/brownie_patch/_abi.py dank_mids/brownie_patch/call.py dank_mids/brownie_patch/overloaded.py dank_mids/brownie_patch/types.py dank_mids/helpers/_codec.py dank_mids/helpers/_weaklist.py dank_mids/constants.py dank_mids/ENVIRONMENT_VARIABLES.py --strict --pretty --disable-error-code unused-ignore + mypyc dank_mids/_demo_mode.py dank_mids/_eth_utils.py dank_mids/_mode.py dank_mids/_uid.py dank_mids/brownie_patch/__init__.py dank_mids/brownie_patch/_abi.py dank_mids/brownie_patch/call.py dank_mids/brownie_patch/overloaded.py dank_mids/brownie_patch/types.py dank_mids/helpers/_codec.py dank_mids/helpers/_weaklist.py dank_mids/constants.py dank_mids/ENVIRONMENT_VARIABLES.py --strict --pretty --disable-error-code unused-ignore diff --git a/dank_mids/_mode.py b/dank_mids/_mode.py index 5c9ed23551..7428fa530f 100644 --- a/dank_mids/_mode.py +++ b/dank_mids/_mode.py @@ -1,9 +1,9 @@ -from a_sync.functools import cached_property_unsafe as cached_property +from typing import Final from typing_extensions import Self -MODES = "default", "application", "infura" +MODES: Final = "default", "application", "infura" class OperationMode(str): @@ -14,31 +14,28 @@ class OperationMode(str): with different Ethereum node providers. """ - @cached_property - def application(self): + def __init__(self) -> None: + super().__init__() + + self.application: Final = self.mode == "application" """ - Checks if the current mode is 'application'. + True if the current mode is 'application'. The 'application' mode keeps the event loop as unblocked as possible so an asyncio application can run as designed. """ - return self.mode == "application" - @cached_property - def default(self): + self.default: Final = self.mode == "default" """ - Checks if the current mode is 'default'. + True if the current mode is 'default'. """ - return self.mode == "default" - @cached_property - def infura(self): + self.infura: Final = self.mode == "infura" """ - Checks if the current mode is 'infura'. + True if the current mode is 'infura'. The 'infura' mode minimizes the total number of calls sent to the node. """ - return self.mode == "infura" @property def mode(self) -> Self: