diff options
Diffstat (limited to 'def')
-rwxr-xr-x | def | 45 |
1 files changed, 0 insertions, 45 deletions
@@ -1,45 +0,0 @@ -#!/bin/rc -e - -# def -- find function definition - -flagfmt=a -args='name [dir]' -if(! ifs=() eval `{aux/getflags $*} || ! ~ $#* 1 2 3){ - echo usage: $0 name [dir] >[1=2] - exit usage -} - -name=$1 -if(~ $#* 2) wdir=$2 -if not wdir=`{pwd} - -files=$wdir^/*.[ch] -if(~ $files $wdir^/'*.[ch]'){ - echo error: no c/h files found >[1=2] - exit 'not found' -} - -# ansi definition -if(~ $flaga 1){ - r=`{ - echo 'X ,x/[\n ]\**'^$name^'\(.*\)([ ]*\/\*.*\*\/)?\n{/-+=' | - sam -d $files >[2=1] | - awk -F'[ ;]' ' - /^ -\. / { file = $3; next } - /^ - / { file = $4; next } - { print file ":" $1; exit } - '} -} - -# style(1) definition -if not{ - r=`{grep -n '^'^$name^'\(' $files | awk -F: '{print $1 ":" $2; exit}'} -} - -# success -if(! ~ $r '') - echo $r - -# try to find macro instead -if not - grep -n '^#define[ ]'^$name^'\(' $files | awk -F: '{print $1 ":" $2; exit}' |