空集文字语法

时间:2018-10-03 17:58:51

标签: crystal-lang

寻找正确的语法或是否存在错误/粗糙边缘:

Set{}

for empty hashes use '{} of KeyType => ValueType' <-wrong

Set{} of Char

expecting token '=>', not 'EOF' <-wrong

Set(Char){}

for empty hashes use '{} of KeyType => ValueType' <-wrong

Set(Char).new # not a literal

Set{'a'} # not an empty Set literal

1 个答案:

答案 0 :(得分:6)

没有一个,请使用Set(Char).new

设置文字,例如Set{'a'}实际上可以编译为:

__tmp_var = Set(typeof('a')).new
__tmp_var << 'a'
__tmp_var

因此,使用空文字而不是Set(Char).new

对性能没有好处。