Здравствуйте, многие знают уже что я автор утилиты cjass2lua которая преобразует cjass и jass код в lua, недавно я добавил поддержку структур но у меня возник вопрос, например как быть с ситуацией когда this или объект используется как число? Потому что в JASS любой объект это по сути integer.
Как лучше реализовать использование объектов/this'ов в lua в таких ситуациях obj > 0 и так далее, добавить какую-то аналогичную систему идентификаторов или есть какое-то более простое решение?
Или вообще ничего менять не нужно

например как быть с ситуацией когда this или объект используется как число?
this часто используется как число, например для сохранения на хэндл таймера.

ИМХО, структуры вообще лучше переписать изначально на lua.
`
ОЖИДАНИЕ РЕКЛАМЫ...
30
Принятый ответ
например как быть с ситуацией когда this или объект используется как число?
this часто используется как число, например для сохранения на хэндл таймера.

ИМХО, структуры вообще лучше переписать изначально на lua.
15
NazarPunk:
например как быть с ситуацией когда this или объект используется как число?
this часто используется как число, например для сохранения на хэндл таймера.

ИМХО, структуры вообще лучше переписать изначально на lua.
В таком случае я оставлю, их в любом случае лучше доработать напильником, пару раз this поменять руками думаю ничего не стоит
Хотя можно конечно uid добавить который бы везде заменял обращения к this напрямую
26
можно сделать this как элемент таблицы? тогда на него можно будет ссылаться внутри конкретной "структуры-таблицы"
и это индекс массива конкретного типа структуры, аналог ему будет скорее всего #table
15
Вряд ли this как число используется в ином случае кроме доступа к экземплярам структуры (например в двусвязных списках). Вероятно создать массив экземпляров структуры, где индексы будут соответствовать числам под this.
obj > 0 может означать проверку obj ~= nil, хранит ли obj экземпляр объекта или был ли экземпляр создан вызовом конструктора.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.