Luau是我们的新语言,你可以在下面这个网址了解更多有关信息https://luau-lang.org 。
这个月的更新不多,我们主要为您提供一些小的优化和错误修复。
现在,您可以在具有字符串索引器的密封表上定义函数。这些函数将根据索引器类型进行类型检查。例如,以下内容现在是有效的:
local a : {[string]: () → number} = {}
function a.y () return 4 end – OK
自动完成功能现在将为单例类型提供字符串文字建议,例如:
local function f (x: “a” | “b”) end
f("_") – suggest “a” and “b”
当我们在不允许的地方遇到类型包变量时改进错误恢复,例如: type Foo<A…> = { value: A… }
当代码没有向变量函数传递足够的参数时,错误反馈也得到了改进。
例如,下面的脚本现在会发出一条更好的错误消息:
type A = { [number]: number }
type B = { [number]: string }
local a: A = { 1, 2, 3 }
– ERROR: Type ‘A’ could not be converted into ‘B’
– caused by:
– Property ‘[indexer value]’ is not compatible. Type ‘number’ could not be converted into ‘string’
local b: B = a
如果下面的代码因为Hello未定义而出错,我们会错误地将注释包含在错误范围内。但现在这个问题已经解决了。
type Foo = Hello – some comment over here
修复了严格模式脚本包含循环命令()依赖关系时可能发生的崩溃。
添加了一个自动完成的选项,使其在一定时间后中止处理。