package tiny_libs

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module PathfindSource

Sourcetype 'node problem = {
  1. neighbors : 'node -> ('node * float) list;
  2. goal : 'node -> bool;
  3. estimate : 'node -> float;
}
Sourcetype 'node result = {
  1. path : 'node list;
  2. cost : float;
  3. visited : 'node list;
}
Sourceval breadth_first : 'node problem -> 'node -> 'node result
Sourceval dijkstra : 'node problem -> 'node -> 'node result
Sourceval astar : 'node problem -> 'node -> 'node result
Sourceval field : 'node problem -> 'node -> ('node * float) list
Sourceval downhill : 'node problem -> ('node * float) list -> 'node -> 'node option
Sourceval manhattan : (int * int) -> (int * int) -> float