Luainterface 5.1 получает все используемые глобалы для скрипта

Есть ли способ получить список всех имен используемых глобалов?

Один из способов - не загружать глобальные переменные, а затем выполнять скрипт. пусть сбой и разбор исключения для имени.. очень некрасиво...

1 ответ

Да Lua класс имеет свойство под названием Globals ведьма IEnumerable<string> так что вы можете сделать что-то вроде этого:

public static IEnumerable<string> GetGlobalsFromFile(string fileName)
{
     using (Lua lua = new Lua())
     {
          lua.DoFile(filename);
          foreach(string global in lua.Globals)
               yeld return global;
     }
}

Этот метод выполняет сценарий и возвращает все глобусы в файле.

Другие вопросы по тегам