Added sources files.
[nit.git] / lib / a_star.nit
index 3d8112d..c6f6329 100644 (file)
@@ -29,7 +29,7 @@
 # #  /     /
 # # c -3- d -8- e
 # #
-# var graph = new Graph[Node,WeigthedLink[Node]]
+# var graph = new Graph[Node,WeightedLink]
 #
 # var na = new Node(graph)
 # var nb = new Node(graph)
@@ -58,7 +58,7 @@ module a_star
 redef class Object
        protected fun debug_a_star: Bool do return false
        private fun debug(msg: String) do if debug_a_star then
-               stderr.write "a_star debug: {msg}\n"
+               sys.stderr.write "a_star debug: {msg}\n"
        end
 end
 
@@ -82,28 +82,27 @@ class Node
        private var last_pathfinding_evocation: Int = 0
 
        # cost up to in current evocation
-       # lifetime limited to evocation of path_to
+       # lifetime limited to evocation of `path_to`
        private var best_cost_up_to: Int = 0
 
        # source node
-       # lifetime limited to evocation of path_to
+       # lifetime limited to evocation of `path_to`
        private var best_source: nullable N = null
 
        # is in frontier or buckets
-       # lifetime limited to evocation of path_to
+       # lifetime limited to evocation of `path_to`
        private var open: Bool = false
 
-
        # Main functionnality, returns path from `self` to `dest`
-       fun path_to(dest: Node, max_cost: Int, context: PathContext): nullable Path[N]
+       fun path_to(dest: N, max_cost: Int, context: PathContext): nullable Path[N]
        do
                var cost = 0
 
                var nbr_buckets = context.worst_cost + context.worst_heuristic_cost + 1
-               var buckets = new Array[List[Node]].with_capacity(nbr_buckets)
+               var buckets = new Array[List[N]].with_capacity(nbr_buckets)
 
                for i in [0 .. nbr_buckets[ do
-                       buckets.add(new List[Node])
+                       buckets.add(new List[N])
                end
 
                graph.pathfinding_current_evocation += 1
@@ -115,7 +114,7 @@ class Node
                self.best_cost_up_to = 0
 
                loop
-                       var frontier_node: nullable Node = null
+                       var frontier_node: nullable N = null
 
                        var bucket_searched: Int = 0