summaryrefslogtreecommitdiff
path: root/src/rpc.main2.bash
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2023-08-27 11:55:32 -0400
committerAndrew Cady <d@jerkface.net>2023-08-27 11:55:32 -0400
commit17e91005ccedc355cb213fda0cbbe674a847ea85 (patch)
tree49644eff7c5d88ea9e84e1ad530688a03d54c595 /src/rpc.main2.bash
parentb01d26fcc596f46f20207f17636331f7916bb0ac (diff)
YES
Diffstat (limited to 'src/rpc.main2.bash')
-rw-r--r--src/rpc.main2.bash30
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
2set -e
3set -o pipefail
4case "$0" in
5 [^/]* ) PATH=$(realpath -e "$(dirname "$BASH_SOURCE")"):$PATH ;;
6esac
7source rpc.bash
8
9main()
10{
11 funcs=$(find_local_only_functions "$@" </dev/null | xargs)
12 [ ! "$funcs" ] || printf 'Local-only functions (main2): %s\n' "$funcs" >&2
13}
14
15find_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
24all_commands()
25{
26 : main
27 compgen -A command | sort -u
28}
29
30main "$@"