如何在函数中测试rebol / red中未设置的参数?

时间:2017-10-27 13:28:48

标签: rebol red

当我在没有参数的情况下调用f时,我收到错误脚本错误:如果不允许取消设置!为什么呢?

f: func['p [string! unset!]][
     if unset? 'p print "unset"
]

1 个答案:

答案 0 :(得分:3)

'p评估单词p。为了测试p引用的值的类型,您需要使用:p并为if提供正确的正文块:

f: func ['p [string! unset!]][
    if unset? :p [print "unset"]
]

>> f "123"
== none
>> f
unset