|Did you know ...||Search Documentation:|
|Pack diagnostics -- prolog/diagnostics.pl|
This module provides a simple and extensible diagnostics interface
based on prolog_colourise_stream/3 from
Diagnostics can be ran on multiple source files from the command line like so:
$ swipl -q \ --on-error=status \ -g "use_module(library(diagnostics))" \ -t halt \ -- path/to/source/file.pl [path/to/other/file.pl ...]
There is also support for diagnosing Prolog source code originating
stdin, by providing "-" as the first command line argument,
followed by a path to a Prolog source file that will be regarded as
the "current file" during the analysis for resolving relative paths in
$ swipl -q \ --on-error=status \ -g "use_module(library(diagnostics))" \ -t halt \ -- - path/to/source/file.pl
Item is a term describing a source fragment to be diagnosed, it follows the same format as the first argument of ColourItem in prolog_colourise_stream/3.
If this predicate succeeds, Kind must be unified with a message kind term that will be used as the first argument of print_message/2, while Message must be unified with a pair Format-Args where Format is a format string that will be formatted using Args. If this predicate fails, the default diagnosis logic will be used to diagnose Item.