WoW LibDebug аддон Dragonflight/Wrath of the Lich King Classic 2026 скачать
logo
wow addon LibDebug

LibDebug

Версия игры: 8.0.1
Всего загрузок: 5,952
Обновлено: Oct 3, 2018
Создано: May 24, 2009
Скачать LibDebugСкачать Предыдущие версии

Предыдущие версии

Название Размер Обновлено Версия игры Загрузок
1.5.2 release 20.97 KB Oct 3, 2018 8.0.1 525 скачать LibDebug 1.5.2 releaseСкачать
1.5.1 release 20.64 KB Mar 28, 2017 7.2.0 938 скачать LibDebug 1.5.1 releaseСкачать
1.5 release 20.55 KB Oct 25, 2016 7.1.5 +1 413 скачать LibDebug 1.5 releaseСкачать
1.4 release 20.52 KB Jul 19, 2016 7.0.3 382 скачать LibDebug 1.4 releaseСкачать
1.3 release 19.89 KB Jun 1, 2016 6.2.4 233 скачать LibDebug 1.3 releaseСкачать
1.2 release 20.16 KB Sep 9, 2012 4.0.6 9 скачать LibDebug 1.2 releaseСкачать
1.1 release 19.36 KB Sep 9, 2012 4.0.6 10 скачать LibDebug 1.1 releaseСкачать
1.0 release 19.17 KB Sep 9, 2012 3.3.5 37 скачать LibDebug 1.0 releaseСкачать
v0 release 19.17 KB Sep 9, 2012 3.1.0 11 скачать LibDebug v0 releaseСкачать
1.2 release 20.15 KB Nov 10, 2010 4.0.1 1,846 скачать LibDebug 1.2 releaseСкачать
1.1 release 19.35 KB Oct 31, 2010 4.0.1 273 скачать LibDebug 1.1 releaseСкачать
1.0 release 19.16 KB Mar 4, 2010 3.3.0 469 скачать LibDebug 1.0 releaseСкачать
v0 release 19.16 KB May 24, 2009 3.1.0 786 скачать LibDebug v0 releaseСкачать
1.2-1-g6e61aed alpha 19.83 KB Sep 9, 2012 5.0.4 20 скачать LibDebug 1.2-1-g6e61aed alphaСкачать

Скриншоты

Описание

Хочешь карту со своим ником? Discount 10%Оформить ❤️

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.

Поделиться:

Комментарии

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