Предыдущие версии
| Название | Размер | Обновлено | Версия игры | Загрузок | |
| 1.5.2 release | 20.97 KB | Oct 3, 2018 | 8.0.1 | 525 | Скачать |
| 1.5.1 release | 20.64 KB | Mar 28, 2017 | 7.2.0 | 938 | Скачать |
| 1.5 release | 20.55 KB | Oct 25, 2016 | 7.1.5 +1 | 413 | Скачать |
| 1.4 release | 20.52 KB | Jul 19, 2016 | 7.0.3 | 382 | Скачать |
| 1.3 release | 19.89 KB | Jun 1, 2016 | 6.2.4 | 233 | Скачать |
| 1.2 release | 20.16 KB | Sep 9, 2012 | 4.0.6 | 9 | Скачать |
| 1.1 release | 19.36 KB | Sep 9, 2012 | 4.0.6 | 10 | Скачать |
| 1.0 release | 19.17 KB | Sep 9, 2012 | 3.3.5 | 37 | Скачать |
| v0 release | 19.17 KB | Sep 9, 2012 | 3.1.0 | 11 | Скачать |
| 1.2 release | 20.15 KB | Nov 10, 2010 | 4.0.1 | 1,846 | Скачать |
| 1.1 release | 19.35 KB | Oct 31, 2010 | 4.0.1 | 273 | Скачать |
| 1.0 release | 19.16 KB | Mar 4, 2010 | 3.3.0 | 469 | Скачать |
| v0 release | 19.16 KB | May 24, 2009 | 3.1.0 | 786 | Скачать |
| 1.2-1-g6e61aed alpha | 19.83 KB | Sep 9, 2012 | 5.0.4 | 20 | Скачать |
Скриншоты
Описание
LibDebug — это инструмент для помощи в отладке аддонов.
Он делает следующее:
- Генерирует ошибки при использовании неопределенных переменных.
- Генерирует ошибки при установке глобальных переменных.
- Заменяет функцию печати. Печатает файл и строку, из которых была вызвана функция печати, окрашивает значения по их типу, экранирует непечатаемые символы в строках и превращает таблицы в кликабельные ссылки.
- Заменяет функцию coroutine.resume. Если возобновленная сопрограмма генерирует ошибку, она вызывает глобальный обработчик ошибок со строкой, содержащей сообщение об ошибке и добавленный стек сопрограммы.
- Заменяет сопрограмму.оберните функцию, переопределив ее с помощью функции replacement coroutine.resume.
- Заменяет следующие функции и пар, чтобы обнаружить, если ты попробовать, чтобы выполнить итерации через объект _G прокси, и вместо того, чтобы выполнить итерации через объект недвижимого _G.
Он не делает следующего:
- Поймать и показать ошибки, использовать BugSack или мухобойка на что.
Чтобы воспользоваться данной услугой, позвоните LibDebug() в верхней части любой Lua файл, который вы хотите использовать вышеперечисленные функции.
LibDebug работает, заменяя среду функции, которая его вызвала, так что его модификации влияют только на аддоны, которые явно запрашивают их.
В то время как LibDebug встраивается, вы, вероятно, не хотите этого делать. Вы, вероятно, захотите сделать его необязательной зависимостью, тогда вы можете поставить
если LibDebug, то LibDebug() end
вместо этого в верхней части исходного файла и заставьте его работать должным образом независимо от того, доступен ли аддон. Если вы хотите пойти по этому пути, то не стесняйтесь использовать LibDebug в качестве флага для включения других функций отладки в вашем аддоне, которые вы можете включить или выключить, просто включив или отключив LibDebug.
Цель улавливания использования глобальных переменных состоит в том, чтобы обнаружить неверно названные переменные и переменные, которые должны были быть локальными, но не объявлены как таковые.
Если LibDebug жалуется на то, что вы на самом деле намеревались сделать, то правильнее всего будет получить доступ к переменной непосредственно через _G. Например,
my_global_variable = 42 функция MyFunction() печати(my_global_variable) конец
должно быть записано как:
_G.my_global_variable = 42 функция _G.MyFunction() печати(my_global_variable) конец
Обратите внимание, что как только вы устанавливаете переменную через _G, она освобождается от генерации ошибок. Это не вызовет никаких ошибок:
_G.foo = ноль foo = "пол" фу = фу.."цаек"
Обычно вы можете использовать переменные из глобальной среды без каких-либо ошибок, если они не равны нулю или были заданы через _G. Если вы хотите использовать глобальную переменную, созданную другим аддоном, которая может быть нулевой, вам также нужно использовать _G.
Получить 0.05 TON 💎
Скачать


Добавить комментарий