MCPcopy Create free account
hub / github.com/IfcOpenShell/IfcOpenShell / inner

Function inner

src/ifcopenshell-python/ifcopenshell/validate.py:213–228  ·  view source on GitHub ↗
(ty: select_type)

Source from the content-addressed store, hash-verified

211 return from_cache
212
213 def inner(ty: select_type) -> Iterator[str]:
214 if isinstance(ty, select_type):
215 for st in ty.select_list():
216 yield from inner(st)
217 elif isinstance(ty, entity_type):
218 yield ty.name()
219 for st in ty.subtypes():
220 yield from inner(st)
221 elif isinstance(ty, type_declaration):
222 # @todo shouldn't we list subtypes (e.g IfcPositiveLengthMeasure -> IfcLengthMeasure) here as well?
223 yield ty.name()
224 elif isinstance(ty, enumeration_type):
225 yield ty.name()
226 else:
227 # @todo raise exception?
228 pass
229
230 v = select_members_cache[cache_key] = set(inner(ty))
231 return v

Callers 4

get_select_membersFunction · 0.70
consume_bufferFunction · 0.70
evaluate_stMethod · 0.50
apply_openingsMethod · 0.50

Calls 1

nameMethod · 0.45

Tested by

no test coverage detected