From 7ea6efab3ff143a58de46014063a4a32ad12fc49 Mon Sep 17 00:00:00 2001 From: John D Pell Date: Thu, 23 Sep 2021 09:55:11 -0700 Subject: [PATCH] lib/helpers: fix `all_groups()` - Don't write to disk, just pipe. - Don't loop, just do all functions. Performance of old implementation on my system: ``` real 0m9.996s user 0m5.318s sys 0m9.126s ``` Performance of new implementation on my system: ``` real 0m0.052s user 0m0.069s sys 0m0.025s ``` --- lib/helpers.bash | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/lib/helpers.bash b/lib/helpers.bash index e99c32a1..08fe88a7 100644 --- a/lib/helpers.bash +++ b/lib/helpers.bash @@ -828,13 +828,7 @@ function all_groups() { about 'displays all unique metadata groups' group 'lib' - local func file - file=$(mktemp -t composure.XXXX) - for func in $(_typeset_functions); do - declare -f "$func" | metafor group >> "$file" - done - sort -u "$file" - rm "$file" + declare -f | metafor group | sort -u } if ! _command_exists pathmunge; then