读取一个dict :return:
(self)
| 340 | |
| 341 | @ranges(ord('H'), ord('M')) |
| 342 | def read_map(self): |
| 343 | """ |
| 344 | 读取一个dict |
| 345 | :return: |
| 346 | """ |
| 347 | value = self.read_byte() |
| 348 | |
| 349 | if value == ord('M') or value == ord('H'): |
| 350 | result = {} |
| 351 | self.objects.append(result) |
| 352 | while self.get_byte() != ord('Z'): |
| 353 | key = self.read_next() |
| 354 | value = self.read_next() |
| 355 | result[key] = value |
| 356 | self.read_byte() # 干掉最后一个'Z'字符 |
| 357 | return result |
| 358 | else: |
| 359 | raise HessianTypeError('{0} is not a map.'.format(value)) |
| 360 | |
| 361 | @ranges(0x4a, 0x4b) |
| 362 | def read_date(self): |
nothing calls this directly
no test coverage detected