[Feature Request] ---@final to mark class method as non-overridable
还没有人认领这个 Issue。
评估
调研方向
未指定源文件、测试或入口点。首先明确 @final 是应用于方法、变量还是两者,以及违规会产生警告还是错误;然后检查语言服务器的注解、覆盖检查和补全行为。当所选语义得到一致实现,并由诊断或补全测试覆盖时,即视为完成。
由索引模型根据 Issue 内容生成。
描述
In languages like Java, you have the keyword final to indicate that a function should NOT be overridden. There doesn't seem to be any annotation like that yet. It should give a warning (or error?) if you try to override the function. Additionally, completion for function MyClass: could avoid suggesting anything with @final? You'd still be able to call it anywhere, just not override it if its now final.
(Maybe @final could also work on variables? Pretty much working the same way, just "don't override/set this but still be able to read it")
(Unrelated but I was thinking about ---@override to mark something as "you should override this and not call this" but it wouldn't be able to warn since your internal code needs to call it, so I'm not sure. Might just be good to have anyway, not as a warning but a tooltip thing.)
- 主要语言
- Lua
- 星标
- 4.4k
- 派生
- 442
- 平均合并
- 8 天 9 小时
- 30 天内合并 PR
- 1
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
LuaLS/lua-language-server 的其他 Issue
-
enhancement
难度 2/5 1-3 小时 新手友好度 62/100
LuaLS/lua-language-server#1776 ·
-
难度 3/5 1-2 天 新手友好度 65/100
LuaLS/lua-language-server#3463 · 5 条评论 ·
-
难度 4/5 3-5 天 新手友好度 55/100
LuaLS/lua-language-server#3461 ·
-
难度 3/5 1-2 天 新手友好度 68/100
LuaLS/lua-language-server#3460 · 1 条评论 · 1 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 68/100
LuaLS/lua-language-server#3459 · 1 个 reaction ·
查看 LuaLS/lua-language-server 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 70/100
openSUSE/python-rpm-macros#219 ·
-
bug mini.bracketed
难度 2/5 1-3 小时 新手友好度 75/100
-
accessibility bug typst
难度 2/5 1-3 小时 新手友好度 75/100
quarto-dev/quarto-cli#14947 · 2 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
HenrikBengtsson/CBI-software#134 ·
-
Nmap
难度 1/5 1 小时以内 新手友好度 85/100