Compare commits
3 commits
30882f3fd9
...
20ad290b1b
Author | SHA1 | Date | |
---|---|---|---|
20ad290b1b | |||
667489462d | |||
f6f13a86e3 |
2 changed files with 13 additions and 6 deletions
11
sh/main.sh
11
sh/main.sh
|
@ -171,6 +171,13 @@ RWX_REGEX_BEGIN="^${RWX_REGEX_SPACES}"
|
|||
RWX_REGEX_OPEN="\
|
||||
${RWX_REGEX_SPACES}(${RWX_REGEX_SPACES})${RWX_REGEX_SPACES}{.*"
|
||||
|
||||
RWX_REGEX_TARGET_CONSTANT="\
|
||||
${RWX_REGEX_BEGIN}\\(${RWX_REGEX_CONSTANT}\\)${RWX_REGEX_SET}"
|
||||
RWX_REGEX_TARGET_DOC="\
|
||||
${RWX_REGEX_BEGIN}# \\(.*\\)${RWX_REGEX_SPACES}\$"
|
||||
RWX_REGEX_TARGET_FUNCTION="\
|
||||
${RWX_REGEX_BEGIN}\\(${RWX_REGEX_FUNCTION}\\)${RWX_REGEX_OPEN}"
|
||||
|
||||
rwx_parse_code() {
|
||||
# parse constants
|
||||
RWX_CONSTANTS="$(rwx_parse_constants)"
|
||||
|
@ -180,12 +187,12 @@ rwx_parse_code() {
|
|||
rwx_parse_constants() {
|
||||
printf "%s\n" "${RWX_CODE}" |
|
||||
grep "${RWX_REGEX_BEGIN}${RWX_REGEX_CONSTANT}${RWX_REGEX_SET}" |
|
||||
sed "s|${RWX_REGEX_BEGIN}\\(${RWX_REGEX_CONSTANT}\\)${RWX_REGEX_SET}|\\1|"
|
||||
sed "s|${RWX_REGEX_TARGET_CONSTANT}|\\1|"
|
||||
}
|
||||
rwx_parse_functions() {
|
||||
printf "%s\n" "${RWX_CODE}" |
|
||||
grep "${RWX_REGEX_BEGIN}${RWX_REGEX_FUNCTION}${RWX_REGEX_OPEN}" |
|
||||
sed "s|${RWX_REGEX_BEGIN}\\(${RWX_REGEX_FUNCTION}\\)${RWX_REGEX_OPEN}|\\1|"
|
||||
sed "s|${RWX_REGEX_TARGET_FUNCTION}|\\1|"
|
||||
}
|
||||
|
||||
# ╭──────┬─────╮
|
||||
|
|
|
@ -12,13 +12,13 @@ rwx_doc() {
|
|||
doc=""
|
||||
module="$(echo "${line}" | sed "s|#↓ \\(.*\\)|\\1|")"
|
||||
;;
|
||||
"#"*)
|
||||
*"#"*)
|
||||
[ -n "${doc}" ] && doc="${doc}
|
||||
"
|
||||
doc="${doc}${line}"
|
||||
doc="${doc}$(echo "${line}" | sed "s|${RWX_REGEX_TARGET_DOC}|\\1|")"
|
||||
;;
|
||||
*"="*)
|
||||
constant="$(echo "${line}" | sed "s|^\\(.*\\)=.*|\\1|")"
|
||||
constant="$(echo "${line}" | sed "s|${RWX_REGEX_TARGET_CONSTANT}|\\1|")"
|
||||
if [ "${constant}" = "${name}" ]; then
|
||||
echo "${doc}"
|
||||
return
|
||||
|
@ -27,7 +27,7 @@ rwx_doc() {
|
|||
fi
|
||||
;;
|
||||
*"("*")"*"{"*)
|
||||
func="$(echo "${line}" | sed "s|^\\(.*\\)() {.*|\\1|")"
|
||||
func="$(echo "${line}" | sed "s|${RWX_REGEX_TARGET_FUNCTION}|\\1|")"
|
||||
if [ "${func}" = "${name}" ]; then
|
||||
echo "${doc}"
|
||||
return
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue