diff options
author | Dana Powers <dana.powers@rd.io> | 2015-11-29 23:53:23 +0800 |
---|---|---|
committer | Zack Dever <zack.dever@rd.io> | 2015-12-04 11:25:40 -0800 |
commit | 389fa20423eb7c553298aab47d79bfec989c72e2 (patch) | |
tree | f5c279d4d174c3f772cdd5576179037126563c50 /kafka/protocol/struct.py | |
parent | 51227eae4f71565cf7abae51a91a6c037f705076 (diff) | |
download | kafka-python-389fa20423eb7c553298aab47d79bfec989c72e2.tar.gz |
Recursive repr, display all field names and values for Structs
Diffstat (limited to 'kafka/protocol/struct.py')
-rw-r--r-- | kafka/protocol/struct.py | 8 |
1 files changed, 5 insertions, 3 deletions
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): |