From 335560d2c0420a363942d3368dec0b04dd8bf62b Mon Sep 17 00:00:00 2001 From: Daniil Baturin Date: Tue, 5 Jun 2018 16:35:12 +0700 Subject: Add a function for getting sorted children from a node and use it for sorting set commands. --- src/config_tree.ml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/config_tree.ml') diff --git a/src/config_tree.ml b/src/config_tree.ml index c6fddb4..9b630d9 100644 --- a/src/config_tree.ml +++ b/src/config_tree.ml @@ -331,12 +331,15 @@ let render_at_level let child_configs = List.map (render ~indent:indent ~reftree:reftree ~cmp:cmp ~showephemeral:showephemeral ~showinactive:showinactive) children in List.fold_left (Printf.sprintf "%s\n%s") "" child_configs -let render_commands ?(reftree=None) ?(alwayssort=false) node path = +let render_commands ?(reftree=None) ?(alwayssort=false) ?(sortchildren=false) node path = let node = match path with | [] -> node | _ -> Vytree.get node path in - let children = Vytree.children_of_node node in + let children = + if sortchildren then Vytree.sorted_children_of_node (BatString.numeric_compare) node + else Vytree.children_of_node node + in let commands = List.map (Renderer.render_commands ~reftree:reftree ~alwayssort:alwayssort path) children in String.concat "\n" commands -- cgit v1.2.3