def encode_object(obj): if hasattr(obj, "__slots__"): topic = get_topic(obj.__class__) state = {k: getattr(obj, k) for k in obj.__slots__} return {"__class__": {"topic": topic, "state": state}} elif hasattr(obj, "__dict__"): topic = get_topic(obj.__class__) state = obj.__dict__.copy() return {"__class__": {"topic": topic, "state": state}} else: raise EncoderTypeError(obj)
def encode_function(o): raise EncoderTypeError(o)
def encode_method(o): raise EncoderTypeError(o)