Spec-Zone.ru › Julia 0.5

Стек-трейсы

StackFrame

Информация о стеке, представляющая контекст выполнения, со следующими полями:

  • func::Symbol

    Имя функции, содержащей контекст выполнения.

  • linfo::Nullable{LambdaInfo}

    LambdaInfo, содержащий контекст выполнения (если он был найден).

  • file::Symbol

    Путь к файлу, содержащему контекст выполнения.

  • line::Int

    Номер строки в файле, содержащем контекст выполнения.

  • from_c::Bool

    Истина, если код из C.

  • inlined::Bool

    Истина, если код из вложенной рамки.

  • pointer::Int64

    Представление указателя на контекст выполнения, возвращённое backtrace.

StackTrace

Псевдоним для Vector{StackFrame} для удобства; возвращается вызовами stacktrace и catch_stacktrace.

stacktrace([trace::Vector{Ptr{Void}},] [c_funcs::Bool=false]) → StackTrace

Возвращает стек-трейс в виде вектора StackFrame. (По умолчанию стек-трейс не возвращает функции C, но это можно включить.) При вызове без указания трейса, stacktrace сначала вызывает backtrace.

catch_stacktrace([c_funcs::Bool=false]) → StackTrace

Возвращает стек-трейс для последней сгенерированной ошибки, а не текущего контекста выполнения.

Следующие методы и типы в Base.StackTraces не экспортируются и должны вызываться, например, как StackTraces.lookup(ptr).

lookup(pointer::Union{Ptr{Void}, UInt}) → Vector{StackFrame}

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

remove_frames!(stack::StackTrace, name::Symbol)

Принимает StackTrace (вектор StackFrames) и имя функции (Symbol) и удаляет StackFrame по имени функции из StackTrace (удаляя также все фреймы выше указанной функции). В основном используется для удаления функций StackTraces из StackTrace перед его возвращением.

© 2009–2016 Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other contributors
Licensed under the MIT License.
https://docs.julialang.org/en/release-0.5/stdlib/stacktraces/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API