BOSL2/scripts/find_modular_asserts.sh
2022-09-03 17:00:11 -07:00

29 lines
569 B
Bash
Executable file

#!/bin/sh
awk '
/^module/{
m=1
split($2,narr,"(")
module=narr[1]"()"
}
/^function/{
m=0
module=""
}
/[^=] *assert\(/{
if(m) {
if(fname!=FILENAME) {
fname=FILENAME
print "File",fname
}
if(prevmodule!=module) {
prevmodule=module
print " Module",module
}
assertline=$0
sub(/^ */, "", assertline)
print " ",FNR,":",assertline
}
}
' *.scad