Files
Dr. David Alan Gilbert 675dd677ea hxtool: Error on missing docs
Error if a '.name' is seen after another '.name' without an intervening
SRST, this normally indicates missing or misplaced docs.

We can't check DEF (as used in command line options) because those
often have multiple DEF per doc.

Signed-off-by: Dr. David Alan Gilbert <dave@treblig.org>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
  With the two minor tidy ups from Thomas's review
Message-ID: <20260504174914.122607-4-dave@treblig.org>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
2026-05-05 13:53:03 +02:00

58 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
print_if_not_rst()
{
test $in_rst -eq 0 && printf "%s\n" "$str"
}
hxtoh()
{
in_rst=0
# .name for HMP
seen_name=0
while read -r str; do
case $str in
HXCOMM*)
;;
SRST*)
if [ $in_rst -eq 1 ]
then
echo "Error: SRST inside another RST" >&2
exit 1
fi
# consume the name
seen_name=0
in_rst=1
;;
ERST*)
if [ $in_rst -eq 0 ]
then
echo "Error: ERST already outside RST" >&2
exit 1
fi
in_rst=0
;;
# Note the space at the start - we need to exclude something.name
( .name*)
if [ $seen_name -eq 1 ]
then
echo "Error: Seen another .name, maybe missing docs?" >&2
exit 1
fi
seen_name=1
print_if_not_rst
;;
*)
print_if_not_rst
;;
esac
done
}
case "$1" in
"-h") hxtoh ;;
*) exit 1 ;;
esac < "$2"
exit 0