From 389fa20423eb7c553298aab47d79bfec989c72e2 Mon Sep 17 00:00:00 2001 From: Dana Powers Date: Sun, 29 Nov 2015 23:53:23 +0800 Subject: Recursive repr, display all field names and values for Structs --- kafka/protocol/struct.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'kafka/protocol/struct.py') diff --git a/kafka/protocol/struct.py b/kafka/protocol/struct.py index 77f5fe7..30e233c 100644 --- a/kafka/protocol/struct.py +++ b/kafka/protocol/struct.py @@ -1,4 +1,4 @@ -from collections import namedtuple +#from collections import namedtuple from io import BytesIO from .abstract import AbstractType @@ -39,10 +39,12 @@ class Struct(AbstractType): return cls(*[field.decode(data) for field in cls.SCHEMA.fields]) def __repr__(self): - key_vals =['%s=%r' % (name, self.__dict__[name]) - for name in self.SCHEMA.names] + key_vals = [] + for name, field in zip(self.SCHEMA.names, self.SCHEMA.fields): + key_vals.append('%s=%s' % (name, field.repr(self.__dict__[name]))) return self.__class__.__name__ + '(' + ', '.join(key_vals) + ')' + """ class MetaStruct(type): def __new__(cls, clsname, bases, dct): -- cgit v1.2.1