Coverage for tarjinja/dictio.py: 100%
20 statements
« prev ^ index » next coverage.py v7.16.0, created at 2026-09-05 14:24 +0000
« prev ^ index » next coverage.py v7.16.0, created at 2026-09-05 14:24 +0000
1import time
2from collections.abc import Generator
3from logging import getLogger
5from .iface import Input, Output
7log = getLogger(__name__)
10class MemInput(Input, dict):
11 def __init__(self, fn: str):
12 super().__init__(fn)
13 self.mode = 0o644
14 self.ts = time.time()
16 def walk(self) -> Generator[tuple[str, int, float], None, None]:
17 for k in self.keys():
18 yield k, self.mode, self.ts
20 def readfile(self, fn: str) -> str:
21 return self.get(fn)
24class MemOutput(Output, dict):
25 def __init__(self, fn: str):
26 super().__init__(fn)
28 def writefile(self, fn: str, content: str, mode: int, ts: float | None = None):
29 self[fn] = content