堆栈跟踪

    Stack information representing execution context, with the following fields:

    • func::Symbol

    The name of the function containing the execution context.

    • linfo::Union{Core.MethodInstance, CodeInfo, Nothing}

    The MethodInstance containing the execution context (if it could be found).

    The path to the file containing the execution context.

    • line::Int

    The line number in the file containing the execution context.

    • from_c::Bool

    True if the code is from C.

    True if the code is from an inlined frame.

    • pointer::UInt64

    Base.StackTraces.StackTrace — Type.

    1. StackTrace

    An alias for provided for convenience; returned by calls to stacktrace.

    Base.StackTraces.stacktrace — Function.

    Returns a stack trace in the form of a vector of StackFrames. (By default stacktrace doesn't return C functions, but this can be enabled.) When called without specifying a trace, stacktrace first calls backtrace.

    Base.StackTraces.lookup — Function.

      Given a pointer to an execution context (usually generated by a call to backtrace), looks up stack frame context information. Returns an array of frame information for all functions inlined at that point, innermost function first.

      — Function.

      Takes a StackTrace (a vector of StackFrames) and a function name (a Symbol) and removes the StackFrame specified by the function name from the StackTrace (also removing all frames above the specified function). Primarily used to remove StackTraces functions from the StackTrace prior to returning it.

      1. remove_frames!(stack::StackTrace, m::Module)

      Returns the StackTrace with all StackFrames from the provided removed.