def represent_type()

in torchbiggraph/schema.py [0:0]


    def represent_type(cls, type_):
        try:
            base_type = unpack_optional(type_)
        except TypeError:
            pass
        else:
            return "?%s" % cls.represent_type(base_type)
        if isclass(type_) and issubclass(type_, Enum):
            return "(%s)" % "|".join(member.name.lower() for member in type_)
        if has_origin(type_, list):
            (element_type,) = type_.__args__
            return "[%s]" % cls.represent_type(element_type)
        if has_origin(type_, dict):
            key_type, value_type = type_.__args__
            return "{%s: %s}" % (
                cls.represent_type(key_type),
                cls.represent_type(value_type),
            )
        if isclass(type_) and issubclass(type_, Schema):
            return "%s" % type_.NAME
        return type_.__name__