from simplegeneric import generic @generic def serialize(typeinfo, value): """Serialize a value based on typeinfo""" raise NotImplementedError("Unrecognized type:", typeinfo) @serialize.when_type(IntType): def serialize_int(typeinfo, value): return str(value)