Перейти к основному содержимому

Вызвать функцию скрипта

Выполняет Lua код из строки или файла и вызывает указанную функцию

Функция ВызватьФункциюСкрипта(Знач Lua, Знач Скрипт, Знач ИмяФункции, Знач Параметры = Неопределено, Знач Пакеты = Неопределено, Знач Переменные = Неопределено) Экспорт

ПараметрCLI опцияТипОбяз.Назначение
Lua--luaПроизвольныйКомпонента Lua или версия Lua для запуска
Скрипт--scriptСтрокаКод Lua или путь к файлу
ИмяФункции--funcСтрокаИмя функции или путь вида module.func
Параметры--paramsСоответствие Из КлючИЗначениеПараметры функции, если необходимо
Пакеты--packagesСоответствие Из КлючИЗначениеПакеты: ключ > имя, значение > код или путь к файлу
Переменные--globalsСоответствие Из КлючИЗначениеГлобальные переменные модуля, если необходимо
Возвращаемое значение

Произвольный - Результат вызова

подсказка

Аналогично раздельному вызову ВыполнитьКодИзСтроки, ДобавитьПакетИзСтроки, УстановитьГлобальнуюПеременную и ВызватьФункцию


Пример использования для 1С:Предприятие/OneScript
Параметры = Новый Массив;
Параметры.Добавить(6);
Параметры.Добавить(7);

Результат = OPI_Lua.ВызватьФункциюСкрипта("Lua54"
, "function mul(a, b) return a * b end"
, "mul"
, Параметры);
# JSON данные также могут быть переданы как путь к файлу .json

oint lua ВызватьФункциюСкрипта \
--lua "Lua54" \
--script "function mul(a, b) return a * b + bonus end" \
--func "mul" \
--params "['6','7']" \
--globals "{'bonus':'2'}"
Результат
42