From 31d386310f55e9e9333b27f3cbe6f85d244d7dc7 Mon Sep 17 00:00:00 2001 From: andrewgryan Date: Tue, 12 Nov 2024 12:23:40 +0000 Subject: [PATCH] simplify taf encoding --- src/detaf/lib.py | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/src/detaf/lib.py b/src/detaf/lib.py index df2e229..47a2e69 100644 --- a/src/detaf/lib.py +++ b/src/detaf/lib.py @@ -91,18 +91,6 @@ class TAF: issue_time: str = None weather_conditions: list[WeatherCondition] = field(default_factory=list) - def taf_encode(self) -> str: - parts = ["TAF"] - if self.version != Version.ORIGINAL: - parts.append(self.version.taf_encode()) - if self.icao_identifier: - parts.append(self.icao_identifier) - if self.issue_time: - parts.append(encode_issue_time(self.issue_time)) - for weather in self.weather_conditions: - parts.append(weather.taf_encode()) - return " ".join(parts) - def __iter__(self): yield "TAF" if self.version != Version.ORIGINAL: @@ -113,6 +101,9 @@ def __iter__(self): yield self.issue_time yield from self.weather_conditions + def taf_encode(self) -> str: + return " ".join(encode(item) for item in self) + def parse(bulletin: str) -> TAF: words = bulletin.strip().split()