docs: def get_identifier(self):
          """
          For methods this is the return type, the name and the (non-pretty)
          argument descriptor. For fields it is simply the name.
  
          The return-type of methods is attached to the identifier when
          it is a bridge method, which can technically allow two methods
          with the same name and argument type list, but with different
          return type.
          """
  
          ident = self.get_name()
  
          if self.is_method:
              args = ",".join(self.get_arg_type_descriptors())
              if self.is_bridge():
                  ident = "%s(%s):%s" % (ident, args, self.get_descriptor())
              else:
                  ident = "%s(%s)" % (ident, args)
  
          return ident