Я хочу переопределить функцию в моем premake5.lua, я могу найти ее в исходном коде, но она не существует во время выполнения.
В этом файле: modules \ vstudio \ vs2005_dotnetbase.lua
local p = premake
p.vstudio.dotnetbase = {}
local vstudio = p.vstudio
local dotnetbase = p.vstudio.dotnetbase
...
function dotnetbase.csversion(cfg)
if cfg.csversion then
_p(2,'<LangVersion>%s</LangVersion>', cfg.csversion)
end
end
Но если я попытаюсь изменить его в моем premake5.lua:
require "vstudio"
premake.vstudio.dotnetbase.csversion = function()
end
, я получу: Ошибка: C: / Projects / SOR4 root / premake5.lua: 3: попыткаиндексировать нулевое значение (поле 'dotnetbase')
Я что-то не так делаю, когда пытаюсь получить доступ к глобальным функциям?
Спасибо.