class_docstr: A collection of protobufs dynamically constructed by descriptor protos.
class_docstr_tok: ["A","collection","of","protobufs","dynamically","constructed","by","descriptor","protos","."]
docstr: Gets all the known extensions of a given message.
  
  Extensions have to be registered to this pool by build related
  :func:`Add` or :func:`AddExtensionDescriptor`.
  
  Args:
    message_descriptor (Descriptor): Descriptor of the extended message.
  
  Returns:
    list[FieldDescriptor]: Field descriptors describing the extensions.
code: def FindAllExtensions(self, message_descriptor):
      """Gets all the known extensions of a given message.
  
      Extensions have to be registered to this pool by build related
      :func:`Add` or :func:`AddExtensionDescriptor`.
  
      Args:
        message_descriptor (Descriptor): Descriptor of the extended message.
  
      Returns:
        list[FieldDescriptor]: Field descriptors describing the extensions.
      """
      # Fallback to descriptor db if FindAllExtensionNumbers is provided.
      if self._descriptor_db and hasattr(
          self._descriptor_db, "FindAllExtensionNumbers"
      ):
          full_name = message_descriptor.full_name
          all_numbers = self._descriptor_db.FindAllExtensionNumbers(
              full_name
          )
          for number in all_numbers:
              if (
                  number
                  in self._extensions_by_number[message_descriptor]
              ):
                  continue
              self._TryLoadExtensionFromDB(message_descriptor, number)
  
      return list(
          self._extensions_by_number[message_descriptor].values()
      )
  
imports: import collections
  import warnings
  from google.protobuf import descriptor
  from google.protobuf import descriptor_database
  from google.protobuf import text_encoding
label_desc: Use image node_id 25 for calling the DescriptorPool obj's underlying member method code with example usage: obj.FindAllExtensions(message_descriptor) and returns: list