/usr/lib/swipl/library/prolog_breakpoints.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 -- List Manipulation
      • broadcast.pl
      • shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects)
      • option.pl -- Option list processing
      • thread_pool.pl
      • gensym.pl -- Generate unique symbols
      • settings.pl
      • arithmetic.pl -- Extensible arithmetic
      • main.pl
      • readutil.pl -- Read utilities
      • operators.pl
      • pairs.pl
      • prolog_source.pl -- Examine Prolog source-files
      • record.pl -- Access compound arguments by name
      • quasi_quotations.pl -- Define Quasi Quotation syntax
      • sandbox.pl
      • apply_macros.pl -- Goal expansion rules to avoid meta-calling
      • yall.pl -- Lambda expressions
      • assoc.pl -- Binary associations
      • prolog_format.pl -- Analyse format specifications
      • pure_input.pl -- Pure Input from files and streams
      • solution_sequences.pl -- Modify solution sequences
      • ordsets.pl
      • random.pl -- Random numbers
      • base64.pl -- Base64 encoding and decoding
      • aggregate.pl -- Aggregation operators on backtrackable predicates
      • predicate_options.pl -- Access and analyse predicate options
      • csv.pl -- Process CSV (Comma-Separated Values) data
      • pprint.pl -- Pretty Print Prolog terms
      • atom.pl -- Operations on atoms
      • modules.pl
      • occurs.pl -- Finding and counting sub-terms
      • prolog_xref.pl
      • prolog_colour.pl -- Prolog syntax colouring support.
      • lazy_lists.pl -- Lazy list handling
      • ugraphs.pl -- Graph manipulation library
      • url.pl -- Analysing and constructing URL
      • www_browser.pl -- Open a URL in the users browser
      • prolog_pack.pl -- A package manager for Prolog
      • git.pl -- Run GIT commands
      • utf8.pl -- UTF-8 encoding/decoding on lists of character codes.
      • quintus.pl
      • prolog_versions.pl
      • prolog_wrap.pl
      • dialect.pl -- Support multiple Prolog dialects
      • date.pl -- Process dates and times
      • persistency.pl -- Provide persistent dynamic predicates
      • iostream.pl -- Utilities to deal with streams
      • prolog_code.pl -- Utilities for reasoning about code
      • strings.pl -- String utilities
      • dif.pl
      • edinburgh.pl
      • terms.pl -- Term manipulation
      • ansi_term.pl -- Print decorated text to ANSI consoles
      • threadutil.pl -- Interactive thread utilities
      • prolog_stack.pl -- Examine the Prolog stack
      • prolog_clause.pl
      • prolog_breakpoints.pl -- Manage Prolog break-points
        • set_breakpoint/4
        • set_breakpoint/5
        • delete_breakpoint/1
        • breakpoint_property/2
        • set_breakpoint_condition/2
      • wfs.pl -- Well Founded Semantics interface
      • sort.pl
      • dicts.pl -- Dict utilities
      • varnumbers.pl -- Utilities for numbered terms
      • rbtrees.pl -- Red black trees
      • backcomp.pl -- Backward compatibility
      • charsio.pl -- I/O on Lists of Character Codes
      • ctypes.pl -- Character code classification
      • base32.pl -- Base32 encoding and decoding
      • codesio.pl -- I/O on Lists of Character Codes
      • coinduction.pl
      • heaps.pl
      • statistics.pl -- Get information about resource usage
      • when.pl -- Conditional coroutining
      • prolog_jiti.pl
      • listing.pl -- List programs and pretty print clauses
      • macros.pl -- Macro expansion
      • tableutil.pl -- Table inspection and statistics utilities
      • prolog_metainference.pl -- Infer meta-predicate properties
      • hashtable.pl -- Hash tables
      • optparse.pl -- command line parsing
      • make.pl -- Reload modified source files
      • prolog_trace.pl -- Print access to predicates
      • prolog_coverage.pl -- Coverage analysis tool
      • tables.pl
      • exceptions.pl -- Exception classification
      • zip.pl
      • qpforeign.pl
      • writef.pl -- Old-style formatted write
      • help.pl
      • vm.pl
      • shell.pl -- Elementary shell commands
      • fastrw.pl
      • portray_text.pl
      • nb_set.pl
      • thread.pl -- High level thread primitives
      • edit.pl -- Editor interface
      • prolog_codewalk.pl -- Prolog code walker
      • intercept.pl
      • files.pl
      • increval.pl
      • system.pl -- System utilities
      • qsave.pl
      • check.pl -- Consistency checking
      • prolog_profile.pl -- Execution profiler
      • readln.pl
      • prolog_history.pl
      • rwlocks.pl -- Read/write locks
      • streams.pl -- Manage Prolog streams
      • explain.pl
      • tty.pl
      • oset.pl -- Ordered set manipulation
      • prolog_debug.pl -- User level debugging tools
      • check_installation.pl -- Check installation issues and features
      • prolog_deps.pl
      • prolog_autoload.pl -- Autoload all dependencies
      • prolog_config.pl
      • nb_rbtrees.pl
 set_breakpoint(+File, +Line, +Char, -Id) is det
 set_breakpoint(+Owner, +File, +Line, +Char, -Id) is det
Put a breakpoint at the indicated source-location. File is a current sourcefile (as reported by source_file/1). Line is the 1-based line in which Char is. Char is the position of the break.

First, '$clause_from_source'/4 uses the SWI-Prolog clause-source information to find the last clause starting before Line. '$break_pc' generates (on backtracking), a list of possible breakpoints.

Note that in addition to setting the breakpoint, the system must be in debug mode for the breakpoint to take effect. With threading enabled, there are various different ways this may be done. See debug/0, tdebug/0 and tdebug/1. Therefore, this predicate does not enable debug mode.

Arguments:
Owner- denotes the file that owns the clause. set_breakpoint/5 is used to set breakpoints in an included file in the context of the Owner main file. See source_file_property/2.