docs: def add_edge(self, u_vertex, v_vertex):
          """Adds the edge ``u_vertex -> v_vertex`` to the graph if the edge is not already present.
  
          :param u_vertex: Vertex
          :param v_vertex: Vertex
          :return: ``True`` if a new edge was added. ``False`` otherwise.
          """
          self._vertices.add(u_vertex)
          self._vertices.add(v_vertex)
          if not self.is_edge(u_vertex, v_vertex):
              self.indegrees[v_vertex] += 1
              self.adj_dict[u_vertex].append(v_vertex)
              return True
  
          return False