예제 #1
0
    def _create_registers_section(self, previous_context, context):
        registers_section = Section('registers')
        for _, register_dict in context.registers():
            reg_size = 0
            for name in register_dict.keys():
                reg_size = max(reg_size, len(name))

            table = Table()
            for name, register in register_dict.items():
                contents = [
                    ('%(face-identifier)s' + (('%%-%ds: ' % reg_size) % name))
                ]

                value = register.value()
                face = '%(face-constant)s'
                if previous_context.register(register.name()).value() != value:
                    face = '%(face-special)s'

                if value is not None:
                    contents += [('%s%s' % (face, register.str()))]

                else:
                    contents += [
                        ('%(face-comment)s' + (' %(register)s ' % {
                            'register': register.str()
                        }))
                    ]

                cell = Cell(''.join(contents))
                table.add_cell(cell)

            registers_section.add_component(table)

        return registers_section
예제 #2
0
    def _create_registers_section(self, previous_context, context):
        registers_section = Section('registers')
        for _, register_dict in context.registers():
            reg_size = 0
            for name in register_dict.keys():
                reg_size = max(reg_size, len(name))

            table = Table()
            for name, register in register_dict.items():
                contents = [('%(face-identifier)s' +
                             (('%%-%ds: ' % reg_size) % name))]

                value = register.value()
                face = '%(face-constant)s'
                if previous_context.register(register.name()).value() != value:
                    face = '%(face-special)s'

                if value is not None:
                    contents += [('%s%s' % (face, register.str()))]

                else:
                    contents += [('%(face-comment)s' +
                                  (' %(register)s ' %
                                   {'register': register.str()}))]

                cell = Cell(''.join(contents))
                table.add_cell(cell)

            registers_section.add_component(table)

        return registers_section