From b33586f8eb98a88e3dbe3075cf208d4a2771bff1 Mon Sep 17 00:00:00 2001 From: UpstreamData Date: Mon, 7 Nov 2022 10:51:34 -0700 Subject: [PATCH] feature: add fields() method to `MinerData` dataclass. --- pyasic/data/__init__.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pyasic/data/__init__.py b/pyasic/data/__init__.py index a98da54d..a033c5a7 100644 --- a/pyasic/data/__init__.py +++ b/pyasic/data/__init__.py @@ -13,7 +13,7 @@ # limitations under the License. from typing import Union, List -from dataclasses import dataclass, field, asdict +from dataclasses import dataclass, field, asdict, fields from datetime import datetime, timezone from functools import reduce import time @@ -123,6 +123,11 @@ class MinerData: fault_light: Union[bool, None] = None efficiency: int = field(init=False) + @classmethod + def fields(cls): + return [f.name for f in fields(cls)] + + def __post_init__(self): self.datetime = datetime.now(timezone.utc).astimezone()