721 self.trailer = self.trailer._replace(**{ |
721 self.trailer = self.trailer._replace(**{ |
722 'offsetSize': self.intSize(len(output)), |
722 'offsetSize': self.intSize(len(output)), |
723 'offsetCount': len(self.computedUniques), |
723 'offsetCount': len(self.computedUniques), |
724 'offsetTableOffset': len(output), |
724 'offsetTableOffset': len(output), |
725 'topLevelObjectNumber': 0 |
725 'topLevelObjectNumber': 0 |
726 }) |
726 }) |
727 |
727 |
728 output = self.writeOffsetTable(output) |
728 output = self.writeOffsetTable(output) |
729 output += pack('!xxxxxxBBQQQ', *self.trailer) |
729 output += pack('!xxxxxxBBQQQ', *self.trailer) |
730 self.file.write(output) |
730 self.file.write(output) |
731 |
731 |
864 """ |
864 """ |
865 position = self.positionOfObjectReference(obj) |
865 position = self.positionOfObjectReference(obj) |
866 if position is None: |
866 if position is None: |
867 self.writtenReferences[obj] = len(self.writtenReferences) |
867 self.writtenReferences[obj] = len(self.writtenReferences) |
868 output += self.binaryInt(len(self.writtenReferences) - 1, |
868 output += self.binaryInt(len(self.writtenReferences) - 1, |
869 bytes=self.trailer.objectRefSize) |
869 bytes=self.trailer.objectRefSize) |
870 return (True, output) |
870 return (True, output) |
871 else: |
871 else: |
872 output += self.binaryInt( |
872 output += self.binaryInt( |
873 position, bytes=self.trailer.objectRefSize) |
873 position, bytes=self.trailer.objectRefSize) |
874 return (False, output) |
874 return (False, output) |