def register(self, settings_class=NoSwitcher, *simple_checks,
                 **conditions):
        if settings_class is NoSwitcher:
            def decorator(cls):
                self.register(cls, *simple_checks, **conditions)
                return cls
            return decorator
        available_checks = self.checks.keys()
        for condition in conditions.keys():
            if condition not in available_checks:
                raise InvalidCondition(
                    'There is no check for the condition "%s"' % condition)
        self._registry.append((settings_class, simple_checks, conditions))