Search code examples
eclipselualuadoc

How do I document that an input parameter is a table of some type in Lua Development Tools?


In Lua Development Tools, how do I document that an input parameter is a table of some type?

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

EDIT: Sorry, guys. Seems this documentation was LDT (Lua Development Tools) exclusive. I'll update my question


Solution

  • I ended up using --@param #list<#bajas.ReinforcementSetup> reinforcementSetups, works like a charm!

    Found it in the LDT docs, here: https://wiki.eclipse.org/LDT/User_Area/Documentation_Language#Structure_types

    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