From bcdf172982259975ab377f47e341a04b0f77685f Mon Sep 17 00:00:00 2001 From: Jonathon Broughton Date: Tue, 12 Mar 2024 08:39:45 +0000 Subject: [PATCH] Update flatten.py --- flatten.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/flatten.py b/flatten.py index 4c2d5bb..9b4ff89 100644 --- a/flatten.py +++ b/flatten.py @@ -7,7 +7,9 @@ from specklepy.objects import Base def flatten_base(base: Base) -> Iterable[Base]: """Take a base and flatten it to an iterable of bases.""" - if hasattr(base, "elements"): - for element in base["elements"]: - yield from flatten_base(element) + if hasattr(base, "elements") and base.elements is not None: + # Check if base.elements is not only present and non-None, but also an iterable + if isinstance(base.elements, Iterable): + for element in base.elements: + yield from flatten_base(element) yield base