love.filesystem.load (Русский)

Загружает файл (но не запускает его).

Функция

Вид

chunk = love.filesystem.load( name )

Аргументы

string name
Имя (и путь) файла.

Возвращает

function chunk
Загруженный кусок.

Пример

Важно отметить, что love.filesystem.load не вызывает код, она просто создает функцию ('chunk'), которая будет содержать содержимое файла внутри себя. Для того, чтобы выполнить кусок, вы должны расположить () за ним.

Кроме того, стоит отметить, что загруженные файлы могут возвращать значения. Например этот файл:

return 1+1

Вернет 2, когда будет вызван таким образом:

chunk = love.filesystem.load( name ) -- загружает кусок
local result = chunk() -- выполняет кусок
print('result: ' .. tostring(result)) -- выводит 'result: 2'


Появится экран с ошибкой, если в выполняемом файле есть ошибка в коде. Чтобы этого избежать, используййте функцию pcall:

chunk = love.filesystem.load( name ) -- загружает кусок
local ok, errMsg = pcall(chunk) -- выполняет кусок в безопасном режиме

if not ok then -- если произошла ошибка
  print('The following error happened: ' .. tostring(errMsg))
else
  print('The result of loading is: ' .. tostring(errMsg))
end

Смотрите также

Другие языки