From 9efc9d20440032f54ba5e42f10c7f5d66e66234e Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Wed, 18 Dec 2024 11:45:47 +0100 Subject: [PATCH] Fix iteration over indeterminate in rule execution --- src/ifcopenshell-python/ifcopenshell/express/rule_compiler.py | 2 ++ src/ifcopenshell-python/ifcopenshell/express/rules/IFC2X3.py | 3 +++ src/ifcopenshell-python/ifcopenshell/express/rules/IFC4.py | 3 +++ src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X1.py | 3 +++ src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X2.py | 3 +++ src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3.py | 3 +++ .../ifcopenshell/express/rules/IFC4X3_ADD1.py | 3 +++ .../ifcopenshell/express/rules/IFC4X3_ADD2.py | 3 +++ .../ifcopenshell/express/rules/IFC4X3_RC1.py | 3 +++ .../ifcopenshell/express/rules/IFC4X3_RC2.py | 3 +++ .../ifcopenshell/express/rules/IFC4X3_RC3.py | 3 +++ .../ifcopenshell/express/rules/IFC4X3_RC4.py | 3 +++ .../ifcopenshell/express/rules/IFC4X3_TC1.py | 3 +++ 13 files changed, 38 insertions(+) diff --git a/src/ifcopenshell-python/ifcopenshell/express/rule_compiler.py b/src/ifcopenshell-python/ifcopenshell/express/rule_compiler.py index c49146ad33..ab6caf93f8 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rule_compiler.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rule_compiler.py @@ -988,6 +988,8 @@ class indeterminate_type: __pos__= bop __getitem__ = bop __getattr__ = bop + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC2X3.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC2X3.py index 3d11ee521f..345620bdae 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC2X3.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC2X3.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4.py index c93ed6fc21..b973c2e484 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X1.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X1.py index 9e7b4ff535..ca0e5ef130 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X1.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X1.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X2.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X2.py index 20dccc22ed..4c0a82ba74 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X2.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X2.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3.py index b8075fcda6..6271263953 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD1.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD1.py index 789b936646..53ca078c98 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD1.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD1.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD2.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD2.py index f40b66c9e5..2b09aad1cf 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD2.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_ADD2.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC1.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC1.py index 9355c0b196..e4488d8c2e 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC1.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC1.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC2.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC2.py index f609e02f19..7b8fa6f30b 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC2.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC2.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC3.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC3.py index 2a1c28b7ae..787b376787 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC3.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC3.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC4.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC4.py index 06a5a6d06b..ac69924453 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC4.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_RC4.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: diff --git a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_TC1.py b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_TC1.py index d9224c2551..b607cf8b3a 100644 --- a/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_TC1.py +++ b/src/ifcopenshell-python/ifcopenshell/express/rules/IFC4X3_TC1.py @@ -132,6 +132,9 @@ class indeterminate_type: __pos__ = bop __getitem__ = bop __getattr__ = bop + + def __iter__(self): + return iter(()) INDETERMINATE = indeterminate_type() class enum_namespace: