If you want a Lua table you can just throw a table around your values like:
status,val=lcon:execwait([[return {get_config_value(1), get_config_value(2)}]])
Or use the rets option to execwait (see chdku.lua)
con 4> !t={};status=con:execwait([[return get_config_value(1), get_config_value(2)]],{rets=t}) ; return t
={
[1]={
value=1,
type="return",
script_id=5,
subtype="integer",
},
[2]={
value=1,
type="return",
script_id=5,
subtype="integer",
},
}
Note that the returns are the entire message, so if the value isn't a simple type you'd need to unserialize it. You can also pass a function to rets.
con 7> !t={};status=con:execwait([[return get_config_value(1), get_config_value(2)]],{rets=function(msg) table.insert(t,
util.unserialize(msg.value)) return true end }) ; return t
={
[1]=1,
[2]=1,
}
The final (chdkptp side local) return t in the above examples are just to display value.