Как мне документировать, что входным параметром является таблица какого-то типа в Lua Development Tools?
Как в Lua Development Tools документировать, что входной параметр - это таблица какого-то типа?
mynamespace = {}
---
-- @type mynamespace.MyClass
-- @field #number var1
mynamespace.MyClass = {}
---
-- @param #number param1
-- @return #mynamespace.MyClass
function mynamespace.MyClass.new(param1)
local self = mynamespace.MyClass
self.var1 = param1
return self
end
---
-- @param WHAT_DO_I_WRITE_HERE arrayOfMyClass
function processArrayOfMyClass(arrayOfMyClass)
for i=1, #arrayOfMyClass do
instanceOfMyClass = arrayOfMyClass[i]
-- ... do something with an element of the array
end
end
РЕДАКТИРОВАТЬ: Извините, ребята. Кажется, эта документация была эксклюзивной для LDT (Lua Development Tools). Я обновлю свой вопрос
2 ответа
Решение
Я в конечном итоге с помощью --@param #list<#bajas.ReinforcementSetup> reinforcementSetups
работает как шарм!
Нашел его в документации по LDT здесь: https://wiki.eclipse.org/LDT/User_Area/Documentation_Language
mynamespace = {}
---
-- @type mynamespace.MyClass
-- @field #number var1
mynamespace.MyClass = {}
---
-- @param #number param1
-- @return #mynamespace.MyClass
function mynamespace.MyClass.new(param1)
local self = mynamespace.MyClass
self.var1 = param1
return self
end
---
-- @param #list<#mynamespace.MyClass> arrayOfMyClass
function processArrayOfMyClass(arrayOfMyClass)
for i=1, #arrayOfMyClass do
instanceOfMyClass = arrayOfMyClass[i]
-- ... do something with an element of the array
end
end
Ты можешь использовать type(val)
проверить тип передаваемых данных и вернуть эффективное сообщение об ошибке, чтобы описать ошибку кодеру.