LuaLS / LuaLS/lua-language-server
Add a shortcut annotation for adding a `nil,string` return type to functions (`@error`)
Nobody has claimed this yet.
- Dominant language
- Lua
- Stars
- 4.4k
- Forks
- 442
- PR merge metrics
- No merged PRs in 30d
Description
Returning of errors from Lua functions is often done by returning nil + error message (`nil,string`):
```lua
---@return table
---@overload fun(): nil, string
local function doSomething()
```
but this syntax can get complex when function takes parameters, or has other overloads. An old solution from [LDoc](https://lunarmodules.github.io/ldoc/manual/manual.md.html) was to use a `@error` annotation - I propose to add something similar to LuaLS.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The payload names no LuaLS files, tests, or entry points; start by reading the linked LDoc manual's `@error` behavior and locating LuaLS's annotation parsing and return-type handling. Done should define and test how `@error` represents a `nil,string` return for parameterized functions and functions with other overloads.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- lua
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100