From 3817357fac76ff83b18ab2e8463bf745b33e6d87 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Wed, 8 Nov 2023 19:30:28 -0800 Subject: [PATCH] Text twiddles/red reduction --- wavinfo/wave_dbmd_reader.py | 2 +- wavinfo/wave_info_reader.py | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/wavinfo/wave_dbmd_reader.py b/wavinfo/wave_dbmd_reader.py index f37c91b..6bcb752 100644 --- a/wavinfo/wave_dbmd_reader.py +++ b/wavinfo/wave_dbmd_reader.py @@ -10,7 +10,7 @@ Unless otherwise stated, all ยง references here are to from enum import IntEnum, Enum from struct import unpack from dataclasses import dataclass, asdict -from typing import List, Optional, Tuple, Any, Union +from typing import List, Tuple, Any, Union from io import BytesIO diff --git a/wavinfo/wave_info_reader.py b/wavinfo/wave_info_reader.py index dd4de12..ca25a41 100644 --- a/wavinfo/wave_info_reader.py +++ b/wavinfo/wave_info_reader.py @@ -9,10 +9,13 @@ class WavInfoChunkReader: f.seek(0) parsed_chunks = parse_chunk(f) + assert type(parsed_chunks) == ListChunkDescriptor - list_chunks = [chunk for chunk in parsed_chunks.children if type(chunk) is ListChunkDescriptor] + list_chunks = [chunk for chunk in parsed_chunks.children + if type(chunk) is ListChunkDescriptor] - self.info_chunk = next((chunk for chunk in list_chunks if chunk.signature == b'INFO'), None) + self.info_chunk = next((chunk for chunk in list_chunks + if chunk.signature == b'INFO'), None) #: 'ICOP' Copyright self.copyright : Optional[str] = self._get_field(f, b'ICOP') @@ -49,7 +52,9 @@ class WavInfoChunkReader: self.commissioned : Optional[str] = self._get_field(f, b'ICMS') def _get_field(self, f, field_ident) -> Optional[str]: - search = next(((chunk.start, chunk.length) for chunk in self.info_chunk.children if chunk.ident == field_ident), + search = next(((chunk.start, chunk.length) \ + for chunk in self.info_chunk.children \ + if chunk.ident == field_ident), None) if search is not None: