docs: def generate_rst_docs(directory, classes, missing_objects=None):
      """
      Generate documentation for tri.declarative APIs
  
      :param directory: directory to write the .rst files into
      :param classes: list of classes to generate documentation for
      :param missing_objects: tuple of objects to count as missing markers, if applicable
      """
  
      doc_by_filename = _generate_rst_docs(classes=classes, missing_objects=missing_objects)  # pragma: no mutate
      for filename, doc in doc_by_filename:  # pragma: no mutate
          with open(directory + filename, 'w') as f2:  # pragma: no mutate
              f2.write(doc)