You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm going to do some work for global variable distinguishing environments.
At present, my idea is as follows:
---@global global -- the table will be merged into current globals. the second `global` can be omittedlocalt= {
X=1,
Y=2,
Z=3,
}
print(X) -- `X` is `t.X`
---@global module1, module2 -- the table will be merged into environment `module1` and `module2`localt= {
X=1,
Y=2,
Z=3,
}
print(X) -- `x` is undefined---@environment module1, global -- set the current environment can visit `module1` and `global`print(X) -- `X` is `t.X`---@environment module1print(X) -- `X` is `t.X` and `print` is undefined
EDIT:
---@partial class _G -- the table will be merged into class `_G`. the default environment is class `_G`localt= {
X=1,
Y=2,
Z=3,
}
print(X) -- `X` is `t.X`
---@classmodule1localt= {
X=1,
Y=2,
Z=3,
}
print(X) -- `x` is undefined---@environment module1, _G -- set the current environment can visit class `module1` and `_G`print(X) -- `X` is `t.X`---@environment module1print(X) -- `X` is `t.X` and `print` is undefined
The text was updated successfully, but these errors were encountered:
What's the best way to handle environments until we get first class support for them?
I'm currently thinking about writing a plugin that just emits setlocal <field> <nil> with an @type doc class annotation for every field in my environment class (which is rather small anyways) in the files that make use of that environment
I'm going to do some work for global variable distinguishing environments.
At present, my idea is as follows:
EDIT:
The text was updated successfully, but these errors were encountered: