# sn_basis/functions/ly_existence_wrapper.py def layer_exists(layer) -> bool: """ Prüft, ob ein Layer-Objekt existiert (nicht None). """ return layer is not None def layer_is_valid(layer) -> bool: """ Prüft, ob ein Layer gültig ist (QGIS-konform). """ if layer is None: return False is_valid = getattr(layer, "isValid", None) if callable(is_valid): try: return bool(is_valid()) except Exception: return False return False def layer_is_usable(layer) -> bool: """ Prüft, ob ein Layer existiert und gültig ist. """ return layer_exists(layer) and layer_is_valid(layer)