Catala_utils.Mark
AST node annotations (used for position, type, etc.)
The type of Mark.ed
values. Everything related to the source code should keep at least its position stored, to improve error messages. Typing, etc. also leverage this.
val add : 'm -> 'a -> ( 'a, 'm ) ed
val remove : ( 'a, 'm ) ed -> 'a
val get : ( 'a, 'm ) ed -> 'm
val fold : ( 'a -> 'b ) -> ( 'a, _ ) ed -> 'b
Compares two marked values ignoring marks
Tests equality of two marked values ignoring marks
Visitors
class 'self marked_map : object ... end
class 'self marked_iter : object ... end
class 'self pos_map : object ... end
class 'self pos_iter : object ... end