Пример #1
0
    def end(self):
        if self.levels is None:
            self._rows = [['component']]

        f = self._open(self._outPath)
        f.write(list_to_aligned_text(self._rows).encode())
        self._close(f)
Пример #2
0
    def end(self):

        results = []

        for n in self.branchOrder:
            bentry = self.branchDict[n]
            centry = bentry['components']
            size = sum([e['size'] for e in centry])
            usize = sum([e['uncompressed_size'] for e in centry])
            cf = usize / size if size > 0 else 0
            row = []
            row.append(bentry['name'])
            if self.addType:
                row.append(bentry['type'])
                row.append(bentry['isarray'])
                row.append(bentry['countname'])
            if self.addSize:
                row.append(size)
                row.append(usize)
                row.append(cf)
            if self.addTitle:
                row.append(bentry['title'])
            results.append(row)

        columns = ['name']
        if self.addType: columns.extend(['type', 'isarray', 'countname'])
        if self.addSize:
            columns.extend(['size', 'uncompressed_size', 'compression_factor'])
        if self.addTitle: columns.extend(['title'])

        if self.addSize and self.sortBySize:
            results = sorted(
                results,
                key=lambda x: float(itemgetter(columns.index('size'))(x)),
                reverse=True)

        results.insert(0, columns)

        format_dict = {}
        if self.addSize:
            format_dict.update({
                'size': '{:.6f}',
                'uncompressed_size': '{:.6f}',
                'compression_factor': '{:.2f}'
            })

        left_align_last_column = False
        if self.addTitle:
            left_align_last_column = True

        f = self._open(self.outPath)
        f.write(
            list_to_aligned_text(results, format_dict, left_align_last_column))
        self._close(f)
Пример #3
0
    def end(self):
        if len(self._rows) == 1: return

        f = self._open(self._outPath)
        f.write(list_to_aligned_text(self._rows).encode())
        self._close(f)
Пример #4
0
 def end(self):
     mkdir_p(os.path.dirname(self.outPath))
     with open(self.outPath, 'w') as f:
         f.write(list_to_aligned_text(self.rows))
Пример #5
0
 def end(self):
     f = self._open(self.outPath)
     f.write(list_to_aligned_text(self._rows))
     self._close(f)