docs: def __decl_types(decl):
          """implementation details"""
          types = []
          bases = list(decl.__class__.__bases__)
          if 'pygccxml' in decl.__class__.__module__:
              types.append(decl.__class__)
          while bases:
              base = bases.pop()
              if base is declaration.declaration_t:
                  continue
              if base is byte_info.byte_info:
                  continue
              if base is elaborated_info.elaborated_info:
                  continue
              if 'pygccxml' not in base.__module__:
                  continue
              types.append(base)
              bases.extend(base.__bases__)
          return types