Библиотека отладчика MySQL - _db_enter_

ОГЛАВЛЕНИЕ


_db_enter_

СИНТАКСИС:

  VOID _db_enter_ (_func_, _file_, _line_, _sfunc_, _sfile_, _slevel_,
                   _sframep_)
  char *_func_;           points to current function name
  char *_file_;           points to current file name
  int _line_;             called from source line number
  char **_sfunc_;         save previous _func_
  char **_sfile_;         save previous _file_
  int *_slevel_;          save previous nesting level
  char ***_sframep_;      save previous frame pointer

ОПИСАНИЕ:

Вызывается в начале каждой функции пользователя, чтобы сообщить отладчику, что была введена новая функция. Обратите внимание, что указатели на предыдущее имя функции пользователя и предыдущее имя файла пользователя сохраняются в стеке вызовов (это причина того, почему макрокоманда ENTER должна быть первым "выполнимым" кодом в функции, так как она распределяет память для этой области. Предыдущий уровень вложения также сохраняется в стеке вызовов для внутренней самопроверки непротиворечивости.

Также печатает строку трассировки, если трассировка включена и увеличивает текущее значение глубины вложения функций.

Обратите внимание, что этот механизм позволяет отладчику знать, какая функция пользователя является текущей, без того, чтобы поддерживать внутренний стек для имен функции.