diff options
author | Andrew Cady <d@jerkface.net> | 2023-08-27 11:55:32 -0400 |
---|---|---|
committer | Andrew Cady <d@jerkface.net> | 2023-08-27 11:55:32 -0400 |
commit | 17e91005ccedc355cb213fda0cbbe674a847ea85 (patch) | |
tree | 49644eff7c5d88ea9e84e1ad530688a03d54c595 /src/rpc.main2.bash | |
parent | b01d26fcc596f46f20207f17636331f7916bb0ac (diff) |
YES
Diffstat (limited to 'src/rpc.main2.bash')
-rw-r--r-- | src/rpc.main2.bash | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/rpc.main2.bash b/src/rpc.main2.bash new file mode 100644 index 0000000..ad5e15b --- /dev/null +++ b/src/rpc.main2.bash | |||
@@ -0,0 +1,30 @@ | |||
1 | #!/bin/bash | ||
2 | set -e | ||
3 | set -o pipefail | ||
4 | case "$0" in | ||
5 | [^/]* ) PATH=$(realpath -e "$(dirname "$BASH_SOURCE")"):$PATH ;; | ||
6 | esac | ||
7 | source rpc.bash | ||
8 | |||
9 | main() | ||
10 | { | ||
11 | funcs=$(find_local_only_functions "$@" </dev/null | xargs) | ||
12 | [ ! "$funcs" ] || printf 'Local-only functions (main2): %s\n' "$funcs" >&2 | ||
13 | } | ||
14 | |||
15 | find_local_only_functions() | ||
16 | { | ||
17 | remote_commands=($(remote_run_function all_commands | sort -u)) | ||
18 | printf 'remote commands: %d\n' ${#remote_commands[@]} >&2 | ||
19 | intersection <(extract_words < "$BASH_SOURCE") \ | ||
20 | <(difference <(all_commands) \ | ||
21 | <(printf '%s\n' "${remote_commands[@]}")) | ||
22 | } | ||
23 | |||
24 | all_commands() | ||
25 | { | ||
26 | : main | ||
27 | compgen -A command | sort -u | ||
28 | } | ||
29 | |||
30 | main "$@" | ||