Книга: Программирование на языке Ruby
11.3.9. Просмотр стека вызовов
11.3.9. Просмотр стека вызовов
Иногда необходимо знать, кто вызвал метод. Эта информация полезна, если, например, произошло неисправимое исключение. Метод caller
, определенный в модуле Kernel
, дает ответ на этот вопрос. Он возвращает массив строк, в котором первый элемент соответствует вызвавшему методу, следующий — методу, вызвавшему этот метод, и т.д.
def func1
puts caller[0]
end
def func2
func1
end
func2 # Печатается: somefile.rb:6:in 'func2'
Строка имеет формат «файл;строка» или «файл;строка в методе».
Оглавление статьи/книги
- 11.3.1. Динамическая интерпретация кода
- 11.3.2. Метод const_get
- 11.3.3. Динамическое создание экземпляра класса, заданного своим именем
- 11.3.4. Получение и установка переменных экземпляра
- 11.3.5. Метод define_method
- 11.3.6. Метод const_missing
- 11.3.7. Удаление определений
- 11.3.8. Получение списка определенных сущностей
- 11.3.9. Просмотр стека вызовов
- 11.3.10. Мониторинг выполнения программы
- 11.3.11. Обход пространства объектов
- 11.3.12. Обработка вызовов несуществующих методов
- 11.3.13. Отслеживание изменений в определении класса или объекта
- 11.3.14. Определение чистильщиков для объектов
Похожие страницы
- Просмотр стека вызовов
- Просмотр переменных
- 16.3. Просмотр веб-страниц
- Первый просмотр: краткий обзор
- Второй просмотр: детали
- 9.2.1. Более строгая реализация стека
- Просмотр списков на узле SharePoint
- Просмотр библиотек документов
- Просмотр каталогов
- Где просмотреть список программ, установленных на моем компьютере?
- Как просмотреть программу телепередач?
- Просмотр веб-страниц