Size: a a a

2021 April 09

SN

Sergey Nikonov in pro.lua
userdata
источник

SN

Sergey Nikonov in pro.lua
В Луа нет переменных, одни ссылки)
источник

SN

Sergey Nikonov in pro.lua
Userdata represent C values in Lua. A light userdata represents a pointer, a void*. It is a value (like a number): you do not create it, it has no individual metatable, and it is not collected (as it was never created). A light userdata is equal to "any" light userdata with the same C address.
источник

SN

Sergey Nikonov in pro.lua
Точнее - light userdata. Но я могу быть и не прав) Надеюсь, более опытные товарищи меня поправят.
источник

SN

Sergey Nikonov in pro.lua
Скорее всего, надо оборачивать в полный userdata.
источник

Р

Ростовский государст... in pro.lua
а код куда писать?
источник

L

Leon174 in pro.lua
Код писать сюда

https://studio.zerobrane.com/
источник

L

Leon174 in pro.lua
Love2d брать тут

https://love2d.org/
источник

L

Leon174 in pro.lua
источник

Р

Ростовский государст... in pro.lua
источник

L

Leon174 in pro.lua
Маньяк ты, боцман, и стикеры у тебя маньяцкие.
источник

Р

Ростовский государст... in pro.lua
источник

a

anton in pro.lua
вот, может пригодится кому, всё что я нашёл на гитхабе у меня не заработало, этим можно смотреть C стек из gdb и распечатывать таблицу из этого стека по индексу https://gist.github.com/Gliese852/c5aac9a01e5cdea705080be9735cab07
источник
2021 April 10

DB

Dmitry Belyaev in pro.lua
коллеги, вопрос на миллион - как импортировать vim api (библиотеку) в lua?
источник

DB

Dmitry Belyaev in pro.lua
то есть если что на луарокс его нет
источник

S

Snusmumriken in pro.lua
Кароч. Есть два метода передачи значений в луа.
1. light_userdata — это просто указатель на какую-то структуру. Считай что просто некоторое число. Память под этим указателем должна быть под управлением сишки, сборка мусора её не соберёт, но при множественном пропихивании одного и того же указателя, их можно сравнивать на равенство и на луёвой стороне: допустим, мы с сишки пропихиваем событие и указатель на окно, и события одного и того же окна всегда с одним и тем же указателем. С полной юзердатой такое бы не сработало.

2. Полная юзердата — это выделение памяти на луёвой стороне. Грубо говоря, ты маллокаешь кусочек места, пихаешь в него данные, опционально присоединяешь метатаблицу и луа начинает управлять его памятью: данное значение будет собрано сборкой мусора, когда на *луашной* стороне больше не останется ссылок на данный объект.
Советую использовать фулл-юзердату во всех случаях когда возможно, и изначально организовывать своё приложение таким образом, чтобы луа управляла созданием и сборкой мусора.
источник

S

Snusmumriken in pro.lua
Я что-то не вижу такой библиотеки в принципе, даже в чисто-сишном виде. Любые сишные библиотеки как бы биндятся биндингами.
источник

S

Snusmumriken in pro.lua
Или ты про ето?
https://neovim.io/doc/user/api.html
источник

DB

Dmitry Belyaev in pro.lua
Я про это - не могу оттуда понять как взаимодействовать с неовимом через Луа
источник

S

Snusmumriken in pro.lua
Ну, похоже что примерно так.
https://neovim.io/doc/user/lua.html#Lua

Неовим где-то держит скрипты внутри себя, и дёргает по каким-то событиям.
источник