X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=compiler%2Fsrc%2Flib%2Ftiger%2Ftiger_map_red_black.ml;h=4713943320a25f5a59069204f4112e7651a32e11;hb=35dccbd3999a8c3bb1dc9e96e21b69a39f44fc6f;hp=30ba479e8b65f9a0bea9caef5a531dc2a32ca79d;hpb=be22952d3228b62e546756299a0f9a127ae64921;p=tiger.ml.git diff --git a/compiler/src/lib/tiger/tiger_map_red_black.ml b/compiler/src/lib/tiger/tiger_map_red_black.ml index 30ba479..4713943 100644 --- a/compiler/src/lib/tiger/tiger_map_red_black.ml +++ b/compiler/src/lib/tiger/tiger_map_red_black.ml @@ -102,3 +102,9 @@ let to_dot t ~k_to_string = let of_list pairs = List.fold_left pairs ~init:empty ~f:(fun t (k, v) -> set t ~k ~v) + +let rec to_list = function + | Leaf -> + [] + | Node (_, pair, left, right) -> + pair :: ((to_list left) @ (to_list right))