5 # -----------------------------------------------------------------------------
8 # find-placeholderDescription
11 # Search for *.[H] files with a Description that looks like it is
15 # - print filename '#' and the description
17 # -----------------------------------------------------------------------------
20 my $re_filespec = qr{^.+\.[H]$};
22 # for the convenience of &wanted calls, including -eval statements:
23 ## use vars qw( *name *dir *prune );
24 ## *name = *File::Find::name;
25 ## *dir = *File::Find::dir;
26 ## *prune = *File::Find::prune;
29 unless ( lstat($_) and -f _
and -r _
and not -l _
and /$re_filespec/ ) {
33 my ( $tag, $description );
39 ## examine the class/typedef name
40 if (/^(Class|Typedef)\s*$/) {
44 if (/^Description\s*$/) {
46 ( $description = $_ ) =~ s{^\s+|\s+$}{}g;
48 # remove trailing punctuation as being noise
49 $description =~ s{\s*[.,:]+$}{};
56 ## we have 'Class/Typedef' tag
58 # description looks like a class name
60 $description =~ m{^\w+(::\w+)+$}
62 print "$File::Find::name # $description\n";
67 ## Traverse desired filesystems
69 no warnings
'File::Find';
70 warn "(**) checking '$dir' ...\n";
71 File
::Find
::find
( { wanted
=> \
&wanted
}, $dir );