Source code for visions.types.ip_address

from typing import Any, Sequence

from multimethod import multimethod

from visions.relations import IdentityRelation, InferenceRelation, TypeRelation
from visions.types.object import Object
from visions.types.string import String
from visions.types.type import VisionsBaseType


[docs]class IPAddress(VisionsBaseType): """**IP Address** (v4 and v6) implementation of :class:`visions.types.type.VisionsBaseType`. Examples: >>> from ipaddress import IPv4Address >>> import visions >>> x = [IPv4Address('127.0.0.1'), IPv4Address('128.0.1.2')] >>> x in visions.IPAddress True """ @classmethod def get_relations(cls) -> Sequence[TypeRelation]: relations = [ IdentityRelation(cls, Object), InferenceRelation( cls, String, ), ] return relations
[docs] @staticmethod @multimethod def contains_op(item: Any, state: dict) -> bool: pass