blob: 4268dcfaf3f30bd5bffabba71ec5badfb39e480d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
#!/usr/bin/env bash
# ;; #!/usr/bin/env -S scsh -e main -o srfi-1 -s
# ;; !#
# ;; (define (main args)
# ;; (let* ((class-name (cadr args))
# ;; (file-names
# ;; (run/strings (find "."
# ;; -path "./cdk.out" -prune -o
# ;; -type f
# ;; -name ,(string-append class-name ".php")
# ;; -exec grep "^namespace" "{}" ";")
# ;; (> 2 "/dev/null"))))
# ;; (format #t "~s"
# ;; (delete-duplicates
# ;; (map (lambda (n)
# ;; (string-append
# ;; (match:substring
# ;; (regexp-search (rx "namespace " (submatch (+ any)) ";") n)
# ;; 1)
# ;; "\\"
# ;; class-name))
# ;; file-names)))))
main() {
local classname=$1
find . \( \
-path "./cdk.out" \
-o -path "./punt/tmp" \
-o -path "./punt/vendor" \
-o -path "./filament/storage/larastan/cache" \
-o -path "./filament/vendor" \
-o -path "./chanced/tmp" \
-o -path "./chanced/node_modules" \
-o -path "./chanced/.phpunit.cache" \
-o -path "./.git" \
-o -path "./chanced/storage" \
\) -prune \
-o -type f -name "${classname}.php" \
-exec grep '^namespace' '{}' \; \
| awk "{ print substr(\$0, 11, length(\$0) - 11) \"\\\\${classname}\" }"
# for f in "$(git ls-files | grep "${classname}.php")"; do
# grep '^namespace' "$f" | awk '{ print substr($0, 11, length($0) - 11) }'
# done
}
main "$@"
|