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

  • swipl
    • library
      • error.pl
      • debug.pl -- Print debug messages and test assertions
      • apply.pl
      • 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 -- Resource bounded thread management
      • gensym.pl
      • settings.pl -- Setting management
      • arithmetic.pl -- Extensible arithmetic
      • main.pl
      • readutil.pl
      • operators.pl
      • pairs.pl
      • prolog_source.pl -- Examine Prolog source-files
      • record.pl
      • quasi_quotations.pl -- Define Quasi Quotation syntax
      • pure_input.pl
      • solution_sequences.pl -- Modify solution sequences
      • ordsets.pl
      • random.pl
      • base64.pl
      • aggregate.pl
      • yall.pl -- Lambda expressions
      • sandbox.pl
      • apply_macros.pl -- Goal expansion rules to avoid meta-calling
      • assoc.pl
      • prolog_format.pl -- Analyse format specifications
      • predicate_options.pl -- Access and analyse predicate options
      • csv.pl -- Process CSV (Comma-Separated Values) data
      • pprint.pl
      • atom.pl
      • modules.pl -- Module utility predicates
      • occurs.pl
      • prolog_xref.pl -- Prolog cross-referencer data collection
        • xref_source/1
        • xref_source/2
        • xref_clean/1
        • xref_current_source/1
        • xref_done/2
        • xref_called/3
        • xref_called/4
        • xref_called/5
        • xref_defined/3
        • xref_definition_line/2
        • xref_exported/2
        • xref_module/2
        • xref_uses_file/3
        • xref_op/2
        • xref_prolog_flag/4
        • xref_comment/3
        • xref_comment/4
        • xref_mode/3
        • xref_option/2
        • xref_meta/3
        • xref_meta/2
        • xref_meta_src/3
        • xref_hook/1
        • xref_public_list/3
        • xref_public_list/4
        • xref_public_list/6
        • xref_public_list/7
        • xref_source_file/3
        • xref_source_file/4
        • called_by/4
        • called_by/2
        • meta_goal/2
        • hook/1
      • prolog_colour.pl
      • lazy_lists.pl -- Lazy list handling
      • ugraphs.pl
      • url.pl -- Analysing and constructing URL
      • www_browser.pl
      • prolog_pack.pl
      • git.pl -- Run GIT commands
      • rbtrees.pl
      • dif.pl
      • charsio.pl -- I/O on Lists of Character Codes
      • prolog_stack.pl -- Examine the Prolog stack
      • edinburgh.pl
      • prolog_clause.pl
      • prolog_breakpoints.pl -- Manage Prolog break-points
      • wfs.pl -- Well Founded Semantics interface
      • dialect.pl
      • prolog_code.pl -- Utilities for reasoning about code
      • sort.pl
      • iostream.pl -- Utilities to deal with streams
      • dicts.pl
      • varnumbers.pl -- Utilities for numbered terms
      • base32.pl
      • codesio.pl -- I/O on Lists of Character Codes
      • coinduction.pl
      • date.pl
      • heaps.pl
      • statistics.pl
      • terms.pl
      • utf8.pl -- UTF-8 encoding/decoding on lists of character codes.
      • when.pl -- Conditional coroutining
      • backcomp.pl -- Backward compatibility
      • intercept.pl
      • prolog_versions.pl
      • persistency.pl
      • prolog_trace.pl
      • prolog_wrap.pl
      • check.pl -- Consistency checking
      • listing.pl -- List programs and pretty print clauses
      • nb_set.pl -- Non-backtrackable sets
      • rwlocks.pl
      • prolog_coverage.pl
      • strings.pl
      • prolog_codewalk.pl -- Prolog code walker
      • system.pl -- System utilities
      • shell.pl
      • edit.pl
      • prolog_jiti.pl
      • ctypes.pl -- Character code classification
      • hashtable.pl -- Hash tables
      • quintus.pl
      • explain.pl
      • make.pl
      • ansi_term.pl -- Print decorated text to ANSI consoles
      • streams.pl
      • optparse.pl
      • threadutil.pl -- Interactive thread utilities
      • thread.pl -- High level thread primitives
      • prolog_debug.pl -- User level debugging tools
      • prolog_config.pl
      • prolog_autoload.pl
      • tables.pl
      • increval.pl
      • fastrw.pl
      • help.pl
      • macros.pl
      • zip.pl
      • prolog_metainference.pl
      • prolog_profile.pl
      • portray_text.pl
      • oset.pl
      • qsave.pl
      • prolog_history.pl
 xref_called(?Source, ?Called, ?By) is nondet
 xref_called(?Source, ?Called, ?By, ?Cond) is nondet
 xref_called(?Source, ?Called, ?By, ?Cond, ?Line) is nondet
True when By is called from Called in Source. Note that xref_called/3 and xref_called/4 use distinct/2 to return only distinct Called-By pairs. The xref_called/5 version may return duplicate Called-By if Called is called from multiple clauses in By, but at most one call per clause.
Arguments:
By- is a head term or one of the reserved terms '<directive>'(Line) or '<public>'(Line), indicating the call is from an (often initialization/1) directive or there is a public/1 directive that claims the predicate is called from in some untractable way.
Cond- is the (accumulated) condition as defined by :- if(Cond) under which the calling code is compiled.
Line- is the start line of the calling clause.