@@ -50,7 +50,7 @@ Variable::TrapAssignNumberedParameter() {
50
50
local varValue=" ${varDeclaration#* =} "
51
51
# TODO: checking for parameter existence or default value
52
52
53
- if [[ ! -z $ __assign_varType ]]
53
+ if [[ " ${ __assign_varType:- null} " != " null " ]]
54
54
then
55
55
local requiredType=" $__assign_varType " # # TODO: use this information
56
56
[[ $__assign_parameters == ' -n' ]] && __assign_varType=" reference"
@@ -88,6 +88,7 @@ Variable::TrapAssignNumberedParameter() {
88
88
case " $__assign_varType " in
89
89
' params' )
90
90
# passing array:
91
+ eval " __assign_arrLength=$__assign_arrLength "
91
92
eval " $__assign_varName =( \"\$ {@:$__assign_paramNo :$__assign_arrLength }\" )"
92
93
93
94
# # TODO: foreach param expand $var: indirectAccess
@@ -100,23 +101,25 @@ Variable::TrapAssignNumberedParameter() {
100
101
;;
101
102
' boolean' )
102
103
DEBUG Log passed " ${! indirectAccess} " , default " ${__assign_varValue} "
104
+ local boolean_fingerprint=" ${__primitive_extension_fingerprint__boolean: +__primitive_extension_fingerprint__boolean: } "
105
+
103
106
if [[ ! -z " ${! indirectAccess} " ]]
104
107
then
105
- if [[ " ${! indirectAccess} " == " ${__primitive_extension_fingerprint__boolean} : " * ]]
108
+ if [[ " ${! indirectAccess} " == " ${boolean_fingerprint} " * ]]
106
109
then
107
110
__assign_varValue=" ${! indirectAccess} "
108
111
elif [[ " ${! indirectAccess} " == ' true' || " ${! indirectAccess} " == ' false' ]]
109
112
then
110
- __assign_varValue=" ${__primitive_extension_fingerprint__boolean} : ${! indirectAccess} "
113
+ __assign_varValue=" ${boolean_fingerprint} ${! indirectAccess} "
111
114
else
112
- __assign_varValue=" ${__primitive_extension_fingerprint__boolean} : false"
115
+ __assign_varValue=" ${boolean_fingerprint} false"
113
116
fi
114
117
elif [[ " ${__assign_varValue} " == ' true' || " ${__assign_varValue} " == ' false' ]]
115
118
then
116
- __assign_varValue=" ${__primitive_extension_fingerprint__boolean} : ${__assign_varValue} "
117
- elif [[ " ${__assign_varValue} " != " ${__primitive_extension_fingerprint__boolean} : true" && " ${__assign_varValue} " != " ${__primitive_extension_fingerprint__boolean} : false" ]]
119
+ __assign_varValue=" ${boolean_fingerprint} ${__assign_varValue} "
120
+ elif [[ " ${__assign_varValue} " != " ${boolean_fingerprint} true" && " ${__assign_varValue} " != " ${boolean_fingerprint} false" ]]
118
121
then
119
- __assign_varValue=" ${__primitive_extension_fingerprint__boolean} : false"
122
+ __assign_varValue=" ${boolean_fingerprint} false"
120
123
fi
121
124
eval " $__assign_varName =\" ${__assign_varValue} \" "
122
125
;;
@@ -198,10 +201,10 @@ Variable::InTrapCaptureParameters() {
198
201
# subject="parameters" Log --
199
202
200
203
__capture_type=" $_type "
201
- __capture_arrLength=" $l "
202
- __capture_valueRequired=" $_isRequired "
203
- __capture_valueReadOnly=" $_isReadOnly "
204
- __capture_noHandle=" $_noHandle "
204
+ __capture_arrLength=" ${l- ' ${#@} ' } "
205
+ __capture_valueRequired=" ${ _isRequired-false} "
206
+ __capture_valueReadOnly=" ${ _isReadOnly-false} "
207
+ __capture_noHandle=" ${ _noHandle-false} "
205
208
}
206
209
207
210
# # ARGUMENT RESOLVERS ##
0 commit comments