LuaLS / LuaLS/lua-language-server
Feature for Lua 5.4 to warn about unused __close metamethods.
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Lua
- Estrellas
- 4.4k
- Forks
- 442
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
Which OS are you using?
MacOS
What is the issue affecting?
Annotations
Expected Behaviour
I think it would make sense to be able to somehow annotate that a table with a __close metamethod is meant to be used as a local variable with lua 5.4's attribute. This would be useful for raii-like constructs.
Actual Behaviour
No warning.
Reproduction steps
Example:
local function get_resource()
return
setmetatable({}, {
__close = function ()
print('close resource')
end
})
end
local a<close> = get_resource() -- ok
local b = get_resource() -- not okay, should somehow warn
Additional Notes
No response
Log File
No response
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con el comportamiento de en Lua 5.4 y la reproducción proporcionada de get_resource. Determina cómo representa el servidor de lenguaje las anotaciones y advertencias, y luego define una forma de identificar los recursos con __close que se asignan sin ; se considera terminado cuando el ejemplo muestra una advertencia para b y acepta a.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- lua
- Área
- devtools
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100