bin/ai/regression/completeness.sh
branchnoai
changeset 9564 cd02879048c9
child 9565 7237786c6197
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/ai/regression/completeness.sh	Tue Mar 27 13:43:02 2007 +0000
@@ -0,0 +1,43 @@
+#!/bin/sh
+
+if ! [ -f ai/regression/regression.nut ]; then
+	echo "Make sure you are in the root of OpenTTD before starting this script."
+	exit 1
+fi
+
+cat ai/regression/regression.nut | awk '
+/^function/ {
+	for (local in locals) {
+		delete locals[local]
+	}
+	if (match($0, "function Regression::Start") || match($0, "function Regression::Stop")) next
+	locals["this"] = "AIControllerSquirrel"
+}
+
+/local/ {
+	gsub(".*local", "local")
+	if (match($4, "^AI")) {
+		sub("\\(.*", "", $4)
+		locals[$2] = $4
+	}
+}
+
+/\./ {
+	for (local in locals) {
+		if (match($0, local ".")) {
+			fname = substr($0, index($0, local "."))
+			sub("\\(.*", "", fname)
+			sub("\\.", "::", fname)
+			sub(local, locals[local], fname)
+			print fname
+		}
+	}
+}
+' | sort | uniq > in_regression.txt
+
+grep 'DefSQ.*Method' ../src/ai/api/*.hpp | grep -v '::GetClassName' | sed 's/^[^,]*, &//g;s/,[^,]*//g' | sort > in_api.txt
+
+diff -u in_regression.txt in_api.txt | grep -v '^+++' | grep '^+' | sed 's/^+//'
+
+rm -f in_regression.txt in_api.txt
+