from typing import Any, Sequence
from multimethod import multimethod
from visions.relations import IdentityRelation, InferenceRelation, TypeRelation
from visions.types.generic import Generic
from visions.types.object import Object
from visions.types.string import String
from visions.types.type import VisionsBaseType
[docs]class Boolean(VisionsBaseType):
"""**Boolean** implementation of :class:`visions.types.type.VisionsBaseType`.
Examples:
>>> import visions
>>> x = [True, False, False, True]
>>> x in visions.Boolean
True
>>> x = [True, False, None]
>>> x in visions.Boolean
True
"""
@staticmethod
def get_relations() -> Sequence[TypeRelation]:
relations = [
IdentityRelation(Generic),
InferenceRelation(String),
InferenceRelation(Object),
]
return relations
[docs] @staticmethod
@multimethod
def contains_op(item: Any, state: dict) -> bool:
pass