 /// Implements the majority of Dijkstra's algorithm in terms of BreadthFirstSearch.
 private struct DijkstraBFSVisitor<
 	SearchSpace: IncidenceGraph & VertexListGraph,
-	Distance: GraphDistanceMeasure,
+	PathLength: GraphDistanceMeasure,
 	EdgeWeightMap: GraphEdgePropertyMap,
 	VertexDistanceMap: MutableGraphVertexPropertyMap,
 	Visitor: DijkstraVisitor

	/// The queue of verticies to visit.
	var queue = ConfigurableHeap<
		SearchSpace.VertexId,
		Distance,
		Int32,  // TODO: make configurable!
		_IdIndexibleDictionaryHeapIndexer<SearchSpace.VertexId, _ConfigurableHeapCursor<Int32>>>()
	/// The weights of the edges.

where
	SearchSpace.VertexId: IdIndexable,
	EdgeWeightMap.Graph == SearchSpace,
	EdgeWeightMap.Value == PathLength,
	VertexDistanceMap.Graph == SearchSpace,
	VertexDistanceMap.Value == PathLength,
	Visitor.Graph == SearchSpace
{
	/// The graph we're operating on is `SearchSpace`.
