docs: def is_addable(self, device, automount=True):
          """Check if device can be added with ``auto_add``."""
          if not self.is_automount(device, automount):
              return False
          if device.is_filesystem:
              return not device.is_mounted
          if device.is_crypto:
              return self._prompt and not device.is_unlocked
          if device.is_partition_table:
              return any(self.is_addable(dev)
                         for dev in self.get_all_handleable()
                         if dev.partition_slave == device)
          return False