class_docstr: Base class for any filter to activate/deactivate a feature, depending on a
  condition.
  
  The return value of ``__call__`` will tell if the feature should be active.
class_docstr_tok: ["Base","class","for","any","filter","to","activate\/deactivate","a","feature",",","depending","on","a","condition",".","The","return","value","of","``","__call__","``","will","tell","if","the","feature","should","be","active","."]
docstr: By purpose, we don't allow bool(...) operations directly on a filter,
  because the meaning is ambiguous.
  
  Executing a filter has to be done always by calling it. Providing
  defaults for `None` values should be done through an `is None` check
  instead of for instance ``filter1 or Always()``.
code: def __bool__(self) -> None:
      """
      By purpose, we don't allow bool(...) operations directly on a filter,
      because the meaning is ambiguous.
  
      Executing a filter has to be done always by calling it. Providing
      defaults for `None` values should be done through an `is None` check
      instead of for instance ``filter1 or Always()``.
      """
      raise ValueError(
          "The truth value of a Filter is ambiguous. "
          "Instead, call it as a function."
      )
  
imports: from __future__ import annotations
  from abc import ABCMeta, abstractmethod
  from typing import Callable, Iterable, Union
label_desc: Use image node_id 6 for calling the Filter obj's underlying member method code with example usage: obj.__bool__() without return types