cyphesis/scripts/check_class_names.sh

31 lines
722 B
Bash
Executable file

#!/bin/bash
check_header_file() {
NAMES=$(grep "^class .* {$" $@ | sed "s/^class \([A-Za-z]\+\) .*$/\1/")
FILE=$(basename $@ .h)
for name in ${NAMES}
do
if [ "$FILE" == "$name" ]
then
true
elif [ "${FILE}Base" == "$name" ]
then
true
elif [ "Python${FILE}" == "$name" ]
then
# PythonFoo is the standard python version derived from Foo
true
elif [ "$(echo ${FILE}| sed s/Factory/Kit/)" == "$name" ]
then
# FooKit is the standard base class for FooFactory
true
else
echo $1: $name
fi
done
}
for i in */*.h
do
check_header_file $i
done