ch1p-py/ch1p/state.py
Evgeny Zinoviev 7d4f8da59d initial
2021-04-25 23:02:49 +03:00

28 lines
639 B
Python

import os, json
from functions import _get_vars
class State:
def __init__(self, default=None, **kwargs):
file, = _get_vars([
('file', 'STATE_FILE')
], kwargs)
if default is None:
default = {}
self.file = file
self.default = default
def read(self) -> dict:
if not os.path.exists(self.file):
self.write(self.default)
return self.default
with open(self.file, 'r') as f:
return json.loads(f.read())
def write(self, state: dict):
with open(self.file, 'w') as f:
f.write(json.dumps(state))