/usr/local/lib/swipl/library/prolog_stack.pl
All Application Manual Name SummaryHelp

  • swipl
    • library
      • error.pl
      • debug.pl -- Print debug messages and test assertions
      • apply.pl -- Apply predicates on a list
      • lists.pl
      • broadcast.pl
      • shlib.pl
      • option.pl
      • thread_pool.pl
      • gensym.pl
      • settings.pl
      • arithmetic.pl -- Extensible arithmetic
      • main.pl
      • readutil.pl
      • operators.pl -- Manage operators
      • pairs.pl
      • prolog_source.pl
      • record.pl
      • quasi_quotations.pl -- Define Quasi Quotation syntax
      • pure_input.pl
      • solution_sequences.pl
      • ordsets.pl
      • random.pl
      • base64.pl
      • aggregate.pl -- Aggregation operators on backtrackable predicates
      • yall.pl
      • sandbox.pl -- Sandboxed Prolog code
      • apply_macros.pl -- Goal expansion rules to avoid meta-calling
      • assoc.pl
      • prolog_format.pl
      • predicate_options.pl
      • csv.pl -- Process CSV (Comma-Separated Values) data
      • pprint.pl -- Pretty Print Prolog terms
      • atom.pl
      • modules.pl
      • occurs.pl
      • prolog_xref.pl
      • prolog_colour.pl
      • lazy_lists.pl
      • ugraphs.pl
      • url.pl
      • www_browser.pl -- Open a URL in the users browser
      • prolog_pack.pl
      • git.pl
      • rbtrees.pl
      • dif.pl -- The dif/2 constraint
      • charsio.pl
      • prolog_stack.pl -- Examine the Prolog stack
        • get_prolog_backtrace/2
        • get_prolog_backtrace/3
        • prolog_stack_frame_property/2
        • print_prolog_backtrace/2
        • print_prolog_backtrace/3
        • backtrace/1
        • print_last_choicepoint/0
        • print_last_choicepoint/2
        • stack_guard/1
        • stack_guard/1
      • edinburgh.pl
      • prolog_clause.pl
      • prolog_breakpoints.pl -- Manage Prolog break-points
      • wfs.pl -- Well Founded Semantics interface
      • dialect.pl -- Support multiple Prolog dialects
      • prolog_code.pl
      • sort.pl
      • iostream.pl -- Utilities to deal with streams
      • dicts.pl
      • varnumbers.pl -- Utilities for numbered terms
      • base32.pl -- Base32 encoding and decoding
      • codesio.pl
      • coinduction.pl
      • date.pl
      • heaps.pl
      • statistics.pl
      • terms.pl
      • utf8.pl
      • when.pl
      • backcomp.pl
      • prolog_codewalk.pl
      • listing.pl
      • prolog_metainference.pl
      • tables.pl
      • prolog_versions.pl -- Demand specific (Prolog) versions
      • prolog_coverage.pl -- Coverage analysis tool
      • persistency.pl
      • threadutil.pl -- Interactive thread utilities
      • thread.pl
      • portray_text.pl
      • prolog_profile.pl
      • macros.pl
      • ansi_term.pl -- Print decorated text to ANSI consoles
      • files.pl
      • quintus.pl
      • prolog_debug.pl
      • streams.pl
      • help.pl -- Text based manual
      • check.pl
      • system.pl -- System utilities
      • fastrw.pl
      • ctypes.pl -- Character code classification
      • edit.pl
      • make.pl -- Reload modified source files
      • nb_set.pl
      • prolog_autoload.pl
      • prolog_trace.pl
      • prolog_wrap.pl
      • optparse.pl
      • strings.pl
      • exceptions.pl
      • writef.pl
      • increval.pl
 get_prolog_backtrace(+MaxDepth, -Backtrace) is det
 get_prolog_backtrace(+MaxDepth, -Backtrace, +Options) is det
Obtain a backtrace from the current location. The backtrace is a list of frames. Each frame is an opaque term that can be inspected using the predicate prolog_stack_frame_property/2 can be used to extract information from these frames. Most use scenarios will pass the stack to print_prolog_backtrace/2. The following options are provided:
frame(+Frame)
Start at Frame instead of the current frame.
goal_term_depth(+Depth)
If Depth > 0, include a shallow copy of the goal arguments into the stack. Default is set by the Prolog flag backtrace_goal_depth, set to 3 initially, showing the goal and toplevel of any argument.
guard(+Guard)
Do not show stack frames above Guard. See stack_guard/1.
clause_references(+Bool)
Report locations as Clause+PC or as a location term that does not use clause references, allowing the exception to be printed safely in a different context.
Arguments:
Frame- is the frame to start from. See prolog_current_frame/1.
MaxDepth- defines the maximum number of frames returned.
Compatibility
- get_prolog_backtrace/3 used to have the parameters +Frame, +MaxDepth, -Backtrace. A call that matches this signature is mapped to get_prolog_backtrace(MaxDepth, Backtrace, [frame(Frame)]).