[Logo]
LUA Форум
  [Search] Поиск   [Recent Topics] Последние темы   [Hottest Topics] Горячие темы   [Members]  Список участников   [Groups] На главную страницу 
[Register] Регистрация / 
[Login] Вход 
Узнать имя функции в стеке Луа из Си  XML
Индекс форума » LUA: Общие вопросы
Автор Сообщение
gshep
Новичок

Зарегистрирован: 06/02/2010 20:23:29
Сообщений: 3
Оффлайн

Доброго времени суток.

Кто-нибудь подскажет, как можно это сделать? Вы можете сказать, нафига это, ведь функция помещается в стек по имени,

но мне нужно узнать список всех функций в виртуальной машине Луа. Вот здесь http://www.lua.org/manual/5.1/manual.html#lua_next есть возможность просмотреть все элементы глобального пространства

но имена функций не видны.

У меня будет в приложении консоль Луа, где пользователь может задавать свои функции, мне надо знать их имена и количество параметров.

Заранее спасибо.
Strijar
ГУРУ

Зарегистрирован: 08/02/2008 21:28:09
Сообщений: 223
От: СПб
Оффлайн

Просматривайте таблицу _G





Лучше быть белым волком, чем серым человеком.
[WWW]
gshep
Новичок

Зарегистрирован: 06/02/2010 20:23:29
Сообщений: 3
Оффлайн

Спасибо за ответ, но это не то, что мне нужно.

У меня есть виртуальная машина Луа в программе на Си


Есть поле ввода, куда можно ввести текст, но он будет передан машине


после этого в пространстве Луа появятся какие-нибудь данные, введённые пользователем. Так вот, мне надо в программе на Си узнать имена всех функций, определённых там пользователем. Не в Луа, а из самой программы. В консоли (текстовое поле) пользователь сможет вводить что-нибудь

тогда я узнаю, что в Луа есть пользовательская функция somefunc(x).

Или вы предлагаете сделать так?
Strijar
ГУРУ

Зарегистрирован: 08/02/2008 21:28:09
Сообщений: 223
От: СПб
Оффлайн

Таблица _G это обычный объект Lua. Что вам мешает из Си его так же просмотреть?



Но в вашем случае было бы правильней создать свою таблицу и менять окружение пользователя на нее - делать "песочницу". И просматривать уже ее.

Это сообщение было редактировано 1 раз. Последнее обновление произошло в 06/02/2010 22:56:02


Лучше быть белым волком, чем серым человеком.
[WWW]
gshep
Новичок

Зарегистрирован: 06/02/2010 20:23:29
Сообщений: 3
Оффлайн

Спасибо, кажется понял.
 
Индекс форума » LUA: Общие вопросы
Перейти:   
Powered by JForum 2.1.8 © JForum Team