class_docstr: 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 because the meaning is ambigue.
  
  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()``.
docstr_tok: ["By","purpose",",","we","do","n't","allow","bool","(","...",")","operations","directly","on","a","filter",",","because","because","the","meaning","is","ambigue",".","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):
      """
      By purpose, we don't allow bool(...) operations directly on a filter,
      because because the meaning is ambigue.
  
      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 TypeError
  
imports: from __future__ import unicode_literals
  from abc import ABCMeta, abstractmethod
  from six import with_metaclass
  from prompt_toolkit.utils import test_callable_args
label_desc: Use image node_id 5 for calling the Filter obj's underlying member method code with example usage: obj.__bool__() without return types