gdb: gdbarch.py: remove Info.__init__
authorSimon Marchi <simon.marchi@polymtl.ca>
Mon, 27 Feb 2023 01:13:57 +0000 (20:13 -0500)
committerSimon Marchi <simon.marchi@efficios.com>
Mon, 27 Feb 2023 18:28:32 +0000 (13:28 -0500)
Info.__init__ currently assigns `self.predicate = None`.  This was
helpful to ensure that all component types had a `predicate` attribute.
The generator code could then avoid having code like "if the component
is anything but Info, use predicate".  Since the previous commit, all
component types have a predicate attribute which defaults to False.  We
can therefore remove the assignment in Info.__init__, and in turn remove
Info.__init__.  We however need to make the printer parameter of
_Component.__init__ optional, as Info don't need a printer.

Change-Id: I611edeca9cc9837eb49dddfe038595e1ff3b7239
Reviewed-By: Andrew Burgess <aburgess@redhat.com>
gdb/gdbarch.py

index 63c3aee1dc0e41fb29648f1886c524e0b1b361bf..f97f39b6db0fb8b8aebbed71c4b30f6d9bcb9d56 100755 (executable)
@@ -53,7 +53,7 @@ class _Component:
         self,
         name,
         type,
-        printer,
+        printer=None,
         comment=None,
         predicate=False,
         predefault=None,
@@ -97,11 +97,6 @@ class _Component:
 class Info(_Component):
     "An Info component is copied from the gdbarch_info."
 
-    def __init__(self, *, name, type, printer=None):
-        super().__init__(name=name, type=type, printer=printer)
-        # This little hack makes the generator a bit simpler.
-        self.predicate = None
-
 
 class Value(_Component):
     "A Value component is just a data member."