|
Packit Service |
7c31a4 |
# AS_CASE(WORD, [PATTERN1], [IF-MATCHED1]...[DEFAULT])
|
|
Packit Service |
7c31a4 |
# ----------------------------------------------------
|
|
Packit Service |
7c31a4 |
# Expand into
|
|
Packit Service |
7c31a4 |
# | case WORD in
|
|
Packit Service |
7c31a4 |
# | PATTERN1) IF-MATCHED1 ;;
|
|
Packit Service |
7c31a4 |
# | ...
|
|
Packit Service |
7c31a4 |
# | *) DEFAULT ;;
|
|
Packit Service |
7c31a4 |
# | esac
|
|
Packit Service |
7c31a4 |
m4_define([_AS_CASE],
|
|
Packit Service |
7c31a4 |
[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])],
|
|
Packit Service |
7c31a4 |
[$#], 1, [ *) $1 ;;],
|
|
Packit Service |
7c31a4 |
[$#], 2, [ $1) m4_default([$2], [:]) ;;],
|
|
Packit Service |
7c31a4 |
[ $1) m4_default([$2], [:]) ;;
|
|
Packit Service |
7c31a4 |
$0(m4_shiftn(2, $@))])dnl
|
|
Packit Service |
7c31a4 |
])
|
|
Packit Service |
7c31a4 |
m4_defun([AS_CASE],
|
|
Packit Service |
7c31a4 |
[m4_ifval([$2$3],
|
|
Packit Service |
7c31a4 |
[case $1 in
|
|
Packit Service |
7c31a4 |
_AS_CASE(m4_shift($@))
|
|
Packit Service |
7c31a4 |
esac])])
|
|
Packit Service |
7c31a4 |
|