/* Generated manual index.
Do not edit.
*/
i(section(2,'2.21','sec:64bits'),"SWI-Prolog and 64-bit machines",swi_man_manual('64bits.html'),manual,3523).
i(section(3,'2.21.1','sec:64bitsplatforms'),"Supported platforms",swi_man_manual('64bits.html'),manual,3926).
i(section(3,'2.21.2','sec:32vs64bits'),"Comparing 32- and 64-bits Prolog",swi_man_manual('64bits.html'),manual,4373).
i(section(3,'2.21.3','sec:32vs64bitschoice'),"Choosing between 32- and 64-bit Prolog",swi_man_manual('64bits.html'),manual,6857).
i(section(1,'G','sec:bibliography'),"Bibliography",swi_man_manual('Bibliography.html'),manual,3508).
i(section(2,'4.13','sec:DCG'),"DCG Grammar rules",swi_man_manual('DCG.html'),manual,3503).
i(/(phrase,2),"Equivalent to phrase(DCGBody, InputList, []).",swi_man_manual('DCG.html'),manual,5502).
i(/(phrase,3),"True when DCGBody applies to the difference List/Rest.",swi_man_manual('DCG.html'),manual,5708).
i(/(call_dcg,3),"As phrase/3, but without type checking State0 and State.",swi_man_manual('DCG.html'),manual,8865).
i(section(2,'4.44','sec:DDE'),"Windows DDE interface",swi_man_manual('DDE.html'),manual,3517).
i(section(3,'4.44.1','sec:dde-client'),"DDE client interface",swi_man_manual('DDE.html'),manual,4384).
i(/(open_dde_conversation,3),"Open a conversation with a server supporting the given service name and topic (atoms).",swi_man_manual('DDE.html'),manual,5245).
i(/(close_dde_conversation,1),"Close the conversation associated with Handle.",swi_man_manual('DDE.html'),manual,5641).
i(/(dde_request,3),"Request a value from the server.",swi_man_manual('DDE.html'),manual,5997).
i(/(dde_execute,2),"Request the DDE server to execute the given command string.",swi_man_manual('DDE.html'),manual,6373).
i(/(dde_poke,4),"Issue a POKE command to the server on the specified Item.",swi_man_manual('DDE.html'),manual,6655).
i(section(3,'4.44.2','sec:dde-server'),"DDE server mode",swi_man_manual('DDE.html'),manual,6952).
i(/(dde_register_service,2),"Register a server to handle DDE request or DDE execute requests from other applications.",swi_man_manual('DDE.html'),manual,7494).
i(/(dde_unregister_service,1),"Stop responding to Service.",swi_man_manual('DDE.html'),manual,9491).
i(/(dde_current_service,2),"Find currently registered services and the topics served on them.",swi_man_manual('DDE.html'),manual,9755).
i(/(dde_current_connection,2),"Find currently open conversations.",swi_man_manual('DDE.html'),manual,9973).
i(section(1,'3','sec:IDE'),"Initialising and Managing a Prolog Project",swi_man_manual('IDE.html'),manual,3521).
i(section(2,'4.17','sec:IO'),"Input and output",swi_man_manual('IO.html'),manual,3529).
i(section(3,'4.17.1','sec:streamalias'),"Predefined stream aliases",swi_man_manual('IO.html'),manual,4738).
i(section(3,'4.17.2','sec:isoIO'),"ISO Input and Output Streams",swi_man_manual('IO.html'),manual,8218).
i(/(open,4),"True when SrcDest can be opened in Mode and Stream is an I/O stream to/from the object.",swi_man_manual('IO.html'),manual,9936).
i(/(open,3),"Equivalent to open/4 with an empty option list.",swi_man_manual('IO.html'),manual,19950).
i(/(open_null_stream,1),"Open an output stream that produces no output.",swi_man_manual('IO.html'),manual,20233).
i(/(close,1),"Close the specified stream.",swi_man_manual('IO.html'),manual,21122).
i(/(close,2),"Provides close(Stream, [force(true)]) as the only option.",swi_man_manual('IO.html'),manual,22143).
i(/(stream_property,2),"True when StreamProperty is a property of Stream.",swi_man_manual('IO.html'),manual,22481).
i(/(current_stream,3),"The predicate current_stream/3 is used to access the status of a stream as well as to generate all open streams.",swi_man_manual('IO.html'),manual,30866).
i(/(is_stream,1),"True if Term is a stream name or valid stream handle.",swi_man_manual('IO.html'),manual,31763).
i(/(stream_pair,3),"This predicate can be used in mode (-,+,+) to create a stream-pair from an input stream and an output stream.",swi_man_manual('IO.html'),manual,32032).
i(/(set_stream_position,2),"Set the current position of Stream to Pos.",swi_man_manual('IO.html'),manual,33335).
i(/(stream_position_data,3),"Extracts information from the opaque stream position term as returned by stream_property/2 requesting the position(Pos) property.",swi_man_manual('IO.html'),manual,33866).
i(/(seek,4),"Reposition the current point of the given Stream.",swi_man_manual('IO.html'),manual,35001).
i(/(set_stream,2),"Modify an attribute of an existing stream.",swi_man_manual('IO.html'),manual,37696).
i(/(set_prolog_IO,3),"Prepare the given streams for interactive behaviour normally associated to the terminal.",swi_man_manual('IO.html'),manual,44952).
i(/(set_system_IO,3),"Bind the given streams to the operating system I/O streams 0-2 using POSIX dup2() API.",swi_man_manual('IO.html'),manual,46040).
i(section(3,'4.17.3','sec:edinburghIO'),"Edinburgh-style I/O",swi_man_manual('IO.html'),manual,47801).
i(/(see,1),"Open SrcDest for reading and make it the current input (see set_input/1).",swi_man_manual('IO.html'),manual,52651).
i(/(tell,1),"Open SrcDest for writing and make it the current output (see set_output/1).",swi_man_manual('IO.html'),manual,53107).
i(/(append,1),"Similar to tell/1, but positions the file pointer at the end of File rather than truncating an existing file.",swi_man_manual('IO.html'),manual,53570).
i(/(seeing,1),"Same as current_input/1, except that user is returned if the current input is the stream user_input to improve compatibility with traditional Edinburgh I/O.",swi_man_manual('IO.html'),manual,53930).
i(/(telling,1),"Same as current_output/1, except that user is returned if the current output is the stream user_output to improve compatibility with traditional Edinburgh I/O.",swi_man_manual('IO.html'),manual,54415).
i(/(seen,0),"Close the current input stream.",swi_man_manual('IO.html'),manual,54907).
i(/(told,0),"Close the current output stream.",swi_man_manual('IO.html'),manual,55084).
i(section(3,'4.17.4','sec:edinburgh-iso-io'),"Switching between Edinburgh and ISO I/O",swi_man_manual('IO.html'),manual,55275).
i(/(set_input,1),"Set the current input stream to become Stream.",swi_man_manual('IO.html'),manual,55614).
i(/(set_output,1),"Set the current output stream to become Stream.",swi_man_manual('IO.html'),manual,55934).
i(/(current_input,1),"Get the current input stream.",swi_man_manual('IO.html'),manual,56266).
i(/(current_output,1),"Get the current output stream.",swi_man_manual('IO.html'),manual,56538).
i(section(3,'4.17.5','sec:iri-schema'),"Adding IRI schemas",swi_man_manual('IO.html'),manual,56746).
i(/(register_iri_scheme,3),"Register Hook to be called by all file handling predicates if a name that starts with Scheme:// is encountered.",swi_man_manual('IO.html'),manual,57982).
i(section(3,'4.17.6','sec:write-on-atom'),"Write onto atoms, code-lists, etc.",swi_man_manual('IO.html'),manual,59773).
i(/(with_output_to,2),"Run Goal as once/1, while characters written to the current output are sent to Output.",swi_man_manual('IO.html'),manual,59982).
i(section(3,'4.17.7','sec:fast-term-io'),"Fast binary term I/O",swi_man_manual('IO.html'),manual,63556).
i(/(fast_term_serialized,2),"(De-)serialize Term to/from String.",swi_man_manual('IO.html'),manual,65483).
i(/(fast_write,2),"Write Term using the fast serialization format to the Output stream.",swi_man_manual('IO.html'),manual,65692).
i(/(fast_read,2),"Read Term using the fast serialization format from the Input stream.",swi_man_manual('IO.html'),manual,65967).
i(section(2,'7.6','sec:WFS'),"Well Founded Semantics",swi_man_manual('WFS.html'),manual,3562).
i(/(undefined,0),"Unknown represents neither true nor false in the well formed model.",swi_man_manual('WFS.html'),manual,8063).
i(/(call_residual_program,2),"True when Goal is an answer according to the Well Founded Semantics.",swi_man_manual('WFS.html'),manual,9773).
i(/(call_delays,2),"True when Goal is an answer that is true when Condition can be satisfied.",swi_man_manual('WFS.html'),manual,10268).
i(/(delays_residual_program,2),"Program is a list of clauses that represents the connected program associated with Condition.",swi_man_manual('WFS.html'),manual,10667).
i(section(3,'7.6.1','sec:wfs-toplevel'),"Well founded semantics and the toplevel",swi_man_manual('WFS.html'),manual,11458).
i(section(2,'2.22','sec:abi-versions'),"Binary compatibility",swi_man_manual('abi-versions.html'),manual,3505).
i(section(2,'1.6','sec:acknowledge'),"Acknowledgements",swi_man_manual('acknowledge.html'),manual,3524).
i(section(2,'A.1','sec:aggregate'),"library(aggregate): Aggregation operators on backtrackable predicates",swi_man_manual('aggregate.html'),manual,3512).
i(/(aggregate,3),"Aggregate bindings in Goal according to Template.",swi_man_manual('aggregate.html'),manual,8936).
i(/(aggregate,4),"Aggregate bindings in Goal according to Template.",swi_man_manual('aggregate.html'),manual,9357).
i(/(aggregate_all,3),"Aggregate bindings in Goal according to Template.",swi_man_manual('aggregate.html'),manual,9794).
i(/(aggregate_all,4),"Aggregate bindings in Goal according to Template.",swi_man_manual('aggregate.html'),manual,10823).
i(/(foreach,2),"True when the conjunction of instances of Goal created from solutions for Generator is true.",swi_man_manual('aggregate.html'),manual,11473).
i(/(free_variables,4),"Find free variables in bagof/setof template.",swi_man_manual('aggregate.html'),manual,13896).
i(:(sandbox,/(safe_meta,2)),"Declare the aggregate meta-calls safe.",swi_man_manual('aggregate.html'),manual,15123).
i(section(2,'4.30','sec:allsolutions'),"Finding all Solutions to a Goal",swi_man_manual('allsolutions.html'),manual,3523).
i(/(findall,3),"Create a list of the instantiations Template gets successively on backtracking over Goal and unify the result with Bag.",swi_man_manual('allsolutions.html'),manual,3723).
i(/(findall,4),"As findall/3, but returns the result as the difference list Bag-Tail.",swi_man_manual('allsolutions.html'),manual,4636).
i(/(findnsols,4),"As findall/3 and findall/4, but generates at most N solutions.",swi_man_manual('allsolutions.html'),manual,5087).
i(/(findnsols,5),"As findall/3 and findall/4, but generates at most N solutions.",swi_man_manual('allsolutions.html'),manual,5087).
i(/(bagof,3),"Unify Bag with the alternatives of Template.",swi_man_manual('allsolutions.html'),manual,7139).
i(/(setof,3),"Equivalent to bagof/3, but sorts the result using sort/2 to get a sorted list of alternatives without duplicates.",swi_man_manual('allsolutions.html'),manual,8684).
i(section(2,'6.12','sec:altmoduleapi'),"An alternative import/export interface",swi_man_manual('altmoduleapi.html'),manual,3537).
i(/(export,1),"Add predicates to the public list of the context module.",swi_man_manual('altmoduleapi.html'),manual,4322).
i(/(import,1),"Import predicates PredicateIndicator into the current context module.",swi_man_manual('altmoduleapi.html'),manual,5020).
i(section(2,'B.2','sec:ancestral-cut'),"Ancestral cuts",swi_man_manual('ancestral-cut.html'),manual,3524).
i(/(prolog_cut_to,1),"Prunes all choice points created since Choice.",swi_man_manual('ancestral-cut.html'),manual,3707).
i(section(2,'A.2','sec:ansiterm'),"library(ansi_term): Print decorated text to ANSI consoles",swi_man_manual('ansiterm.html'),manual,3514).
i(/(ansi_format,3),"Format text with ANSI attributes.",swi_man_manual('ansiterm.html'),manual,5128).
i(:(prolog,/(console_color,2)),"Hook that allows for mapping abstract terms to concrete ANSI attributes.",swi_man_manual('ansiterm.html'),manual,7515).
i(:(prolog,/(message_line_element,2)),"Hook implementation that deals with ansi(+Attr, +Fmt, +Args) in message specifications.",swi_man_manual('ansiterm.html'),manual,8187).
i(/(ansi_hyperlink,2),"Create a hyperlink for a terminal emulator.",swi_man_manual('ansiterm.html'),manual,8533).
i(/(ansi_hyperlink,3),"Create a hyperlink for a terminal emulator.",swi_man_manual('ansiterm.html'),manual,8533).
i(/(ansi_get_color,2),"Obtain the RGB color for an ANSI color parameter.",swi_man_manual('ansiterm.html'),manual,9417).
i(section(2,'A.3','sec:apply'),"library(apply): Apply predicates on a list",swi_man_manual('apply.html'),manual,3512).
i(/(include,3),"Filter elements for which Goal succeeds.",swi_man_manual('apply.html'),manual,4571).
i(/(exclude,3),"Filter elements for which Goal fails.",swi_man_manual('apply.html'),manual,5322).
i(/(partition,4),"Filter elements of List according to Pred.",swi_man_manual('apply.html'),manual,5846).
i(/(partition,5),"Filter List according to Pred in three sets.",swi_man_manual('apply.html'),manual,6498).
i(/(maplist,2),"True if Goal is successfully applied on all matching elements of the list.",swi_man_manual('apply.html'),manual,7131).
i(/(maplist,3),"True if Goal is successfully applied on all matching elements of the list.",swi_man_manual('apply.html'),manual,7131).
i(/(maplist,4),"True if Goal is successfully applied on all matching elements of the list.",swi_man_manual('apply.html'),manual,7131).
i(/(maplist,5),"True if Goal is successfully applied on all matching elements of the list.",swi_man_manual('apply.html'),manual,7131).
i(/(convlist,3),"Similar to maplist/3, but elements for which call(Goal, ElemIn, _) fails are omitted from ListOut.",swi_man_manual('apply.html'),manual,8130).
i(/(foldl,4),"Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"fold-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,8811).
i(/(foldl,5),"Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"fold-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,8811).
i(/(foldl,6),"Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"fold-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,8811).
i(/(foldl,7),"Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"fold-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,8811).
i(/(scanl,4),"Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"scan-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,10345).
i(/(scanl,5),"Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"scan-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,10345).
i(/(scanl,6),"Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"scan-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,10345).
i(/(scanl,7),"Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail (\"scan-left\"), using columns of m list elements as arguments for Goal.",swi_man_manual('apply.html'),manual,10345).
i(section(2,'4.27','sec:arith'),"Arithmetic",swi_man_manual('arith.html'),manual,3521).
i(section(3,'4.27.1','sec:logic-int-arith'),"Special purpose integer arithmetic",swi_man_manual('arith.html'),manual,4132).
i(/(between,3),"Low and High are integers, High &8805#Low.",swi_man_manual('arith.html'),manual,4592).
i(/(succ,2),"True if Int2 = Int1 + 1 and Int1 &8805#.",swi_man_manual('arith.html'),manual,5570).
i(/(plus,3),"True if Int3 = Int1 + Int2.",swi_man_manual('arith.html'),manual,6385).
i(/(divmod,4),"This predicate is a shorthand for computing both the Quotient and Remainder of two integers in a single operation.",swi_man_manual('arith.html'),manual,6652).
i(/(nth_integer_root_and_remainder,4),"True when Root ** N + Remainder = I.",swi_man_manual('arith.html'),manual,7605).
i(section(3,'4.27.2','sec:arithpreds'),"General purpose arithmetic",swi_man_manual('arith.html'),manual,8709).
i(/(>,2),"True if expression Expr1 evaluates to a larger number than Expr2.",swi_man_manual('arith.html'),manual,9296).
i(/(<,2),"True if expression Expr1 evaluates to a smaller number than Expr2.",swi_man_manual('arith.html'),manual,9543).
i(/(=<,2),"True if expression Expr1 evaluates to a smaller or equal number to Expr2.",swi_man_manual('arith.html'),manual,9791).
i(/(>=,2),"True if expression Expr1 evaluates to a larger or equal number to Expr2.",swi_man_manual('arith.html'),manual,10049).
i(/(=\=,2),"True if expression Expr1 evaluates to a number non-equal to Expr2.",swi_man_manual('arith.html'),manual,10306).
i(/(=:=,2),"True if expression Expr1 evaluates to a number equal to Expr2.",swi_man_manual('arith.html'),manual,10555).
i(/(is,2),"True when Number is the value to which Expr evaluates.",swi_man_manual('arith.html'),manual,10802).
i(section(4,'4.27.2.1','sec:artypes'),"Arithmetic types",swi_man_manual('arith.html'),manual,11567).
i(section(4,'4.27.2.2','sec:rational'),"Rational number examples",swi_man_manual('arith.html'),manual,15187).
i(section(4,'4.27.2.3','sec:rational-or-float'),"Rational numbers or floats",swi_man_manual('arith.html'),manual,17339).
i(section(4,'4.27.2.4','sec:ieee-float'),"IEEE 754 floating point arithmetic",swi_man_manual('arith.html'),manual,18883).
i(/(float_class,2),"Wraps C99 fpclassify() to access the class of a floating point number.",swi_man_manual('arith.html'),manual,21111).
i(/(float_parts,4),"True when Mantissa is the normalized fraction of Float, Base is the radix and Exponent is the exponent.",swi_man_manual('arith.html'),manual,23013).
i(/(bounded_number,3),"True if Low < Num < High.",swi_man_manual('arith.html'),manual,23701).
i(section(4,'4.27.2.5','sec:float-precision'),"Floating point arithmetic precision",swi_man_manual('arith.html'),manual,24917).
i(section(4,'4.27.2.6','sec:functions'),"Arithmetic Functions",swi_man_manual('arith.html'),manual,25610).
i(f(/(-,1)),"Result = -Expr",swi_man_manual('arith.html'),manual,27224).
i(f(/(+,1)),"Result = Expr.",swi_man_manual('arith.html'),manual,27411).
i(f(/(+,2)),"Result = Expr1 + Expr2",swi_man_manual('arith.html'),manual,27762).
i(f(/(-,2)),"Result = Expr1 - Expr2",swi_man_manual('arith.html'),manual,27987).
i(f(/(*,2)),"Result = Expr1 × Expr2",swi_man_manual('arith.html'),manual,28212).
i(f(/(/,2)),"Result = Expr1/Expr2.",swi_man_manual('arith.html'),manual,28443).
i(f(/(mod,2)),"Modulo, defined as Result = IntExpr1 - (IntExpr1 div IntExpr2) × IntExpr2, where div is floored division.",swi_man_manual('arith.html'),manual,30325).
i(f(/(rem,2)),"Remainder of integer division.",swi_man_manual('arith.html'),manual,30697).
i(f(/(//,2)),"Integer division, defined as Result is rnd_I(Expr1/Expr2) .",swi_man_manual('arith.html'),manual,31050).
i(f(/(div,2)),"Integer division, defined as Result is (IntExpr1 - IntExpr1 mod IntExpr2) // IntExpr2.",swi_man_manual('arith.html'),manual,31716).
i(f(/(rdiv,2)),"Rational number division.",swi_man_manual('arith.html'),manual,32415).
i(f(/(gcd,2)),"Result is the greatest common divisor of IntExpr1 and IntExpr2.",swi_man_manual('arith.html'),manual,32754).
i(f(/(lcm,2)),"Result is the least common multiple of IntExpr1, IntExpr2.",swi_man_manual('arith.html'),manual,33099).
i(f(/(abs,1)),"Evaluate Expr and return the absolute value of it.",swi_man_manual('arith.html'),manual,33711).
i(f(/(sign,1)),"Evaluate to -1 if Expr < 0, 1 if Expr > 0 and 0 if Expr = 0.",swi_man_manual('arith.html'),manual,33917).
i(f(/(cmpr,2)),"Exactly compares the values Expr1 and Expr2 and returns -1 if Expr1 < Expr2, 0 if they are equal, and 1 if Expr1 > Expr2.",swi_man_manual('arith.html'),manual,34424).
i(f(/(copysign,2)),"Evaluate to X, where the absolute value of X equals the absolute value of Expr1 and the sign of X matches the sign of Expr2.",swi_man_manual('arith.html'),manual,35466).
i(f(/(nexttoward,2)),"Evaluates to floating point number following Expr1 in the direction of Expr2.",swi_man_manual('arith.html'),manual,36372).
i(f(/(roundtoward,2)),"Evaluate Expr1 using the floating point rounding mode RoundMode.",swi_man_manual('arith.html'),manual,36778).
i(f(/(max,2)),"Evaluate to the larger of Expr1 and Expr2.",swi_man_manual('arith.html'),manual,38609).
i(f(/(maxr,2)),"Evaluate to the larger of Expr1 and Expr2 using exact comparison (see cmpr/2).",swi_man_manual('arith.html'),manual,39832).
i(f(/(min,2)),"Evaluate to the smaller of Expr1 and Expr2.",swi_man_manual('arith.html'),manual,40650).
i(f(/(minr,2)),"Evaluate to the smaller of Expr1 and Expr2 using exact comparison (see cmpr/2).",swi_man_manual('arith.html'),manual,40967).
i(f(/('.',2)),"A list of one element evaluates to the character code of this element.",swi_man_manual('arith.html'),manual,41342).
i(f(/(random,1)),"Evaluate to a random integer i for which 0 &8804# i < IntExpr.",swi_man_manual('arith.html'),manual,42832).
i(f(/(random_float,0)),"Evaluate to a random float I for which 0.0 < i < 1.0.",swi_man_manual('arith.html'),manual,44341).
i(f(/(round,1)),"Evaluate Expr and round the result to the nearest integer.",swi_man_manual('arith.html'),manual,45541).
i(f(/(integer,1)),"Same as round/1 (backward compatibility).",swi_man_manual('arith.html'),manual,46139).
i(f(/(float,1)),"Translate the result to a floating point number.",swi_man_manual('arith.html'),manual,46351).
i(f(/(rational,1)),"Convert the Expr to a rational number or integer.",swi_man_manual('arith.html'),manual,46820).
i(f(/(rationalize,1)),"Convert the Expr to a rational number or integer.",swi_man_manual('arith.html'),manual,48048).
i(f(/(numerator,1)),"If RationalExpr evaluates to a rational number or integer, evaluate to the top/left value.",swi_man_manual('arith.html'),manual,49359).
i(f(/(denominator,1)),"If RationalExpr evaluates to a rational number or integer, evaluate to the bottom/right value.",swi_man_manual('arith.html'),manual,49863).
i(f(/(float_fractional_part,1)),"Fractional part of a floating point number.",swi_man_manual('arith.html'),manual,50372).
i(f(/(float_integer_part,1)),"Integer part of floating point number.",swi_man_manual('arith.html'),manual,50821).
i(f(/(truncate,1)),"Truncate Expr to an integer.",swi_man_manual('arith.html'),manual,51123).
i(f(/(floor,1)),"Evaluate Expr and return the largest integer smaller or equal to the result of the evaluation.",swi_man_manual('arith.html'),manual,51586).
i(f(/(ceiling,1)),"Evaluate Expr and return the smallest integer larger or equal to the result of the evaluation.",swi_man_manual('arith.html'),manual,51841).
i(f(/(ceil,1)),"Same as ceiling/1 (backward compatibility).",swi_man_manual('arith.html'),manual,52100).
i(f(/(>>,2)),"Bitwise shift IntExpr1 by IntExpr2 bits to the right.",swi_man_manual('arith.html'),manual,52310).
i(f(/(<<,2)),"Bitwise shift IntExpr1 by IntExpr2 bits to the left.",swi_man_manual('arith.html'),manual,52715).
i(f(/(\/,2)),"Bitwise‘or' IntExpr1 and IntExpr2.",swi_man_manual('arith.html'),manual,52963).
i(f(/(/\,2)),"Bitwise‘and' IntExpr1 and IntExpr2.",swi_man_manual('arith.html'),manual,53192).
i(f(/(xor,2)),"Bitwise‘exclusive or' IntExpr1 and IntExpr2.",swi_man_manual('arith.html'),manual,53422).
i(f(/(\,1)),"Bitwise negation.",swi_man_manual('arith.html'),manual,53663).
i(f(/(sqrt,1)),"Result = &8730;(Expr).",swi_man_manual('arith.html'),manual,53889).
i(f(/(sin,1)),"Result = sin(Expr).",swi_man_manual('arith.html'),manual,54096).
i(f(/(cos,1)),"Result = cos(Expr).",swi_man_manual('arith.html'),manual,54336).
i(f(/(tan,1)),"Result = tan(Expr).",swi_man_manual('arith.html'),manual,54576).
i(f(/(asin,1)),"Result = arcsin(Expr).",swi_man_manual('arith.html'),manual,54816).
i(f(/(acos,1)),"Result = arccos(Expr).",swi_man_manual('arith.html'),manual,55063).
i(f(/(atan,1)),"Result = arctan(Expr).",swi_man_manual('arith.html'),manual,55310).
i(f(/(atan2,2)),"Result = arctan(YExpr/XExpr).",swi_man_manual('arith.html'),manual,55557).
i(f(/(atan,2)),"Same as atan2/2 (backward compatibility).",swi_man_manual('arith.html'),manual,56167).
i(f(/(sinh,1)),"Result = sinh(Expr).",swi_man_manual('arith.html'),manual,56383).
i(f(/(cosh,1)),"Result = cosh(Expr).",swi_man_manual('arith.html'),manual,56633).
i(f(/(tanh,1)),"Result = tanh(Expr).",swi_man_manual('arith.html'),manual,56885).
i(f(/(asinh,1)),"Result = arcsinh(Expr) (inverse hyperbolic sine).",swi_man_manual('arith.html'),manual,57138).
i(f(/(acosh,1)),"Result = arccosh(Expr) (inverse hyperbolic cosine).",swi_man_manual('arith.html'),manual,57336).
i(f(/(atanh,1)),"Result = arctanh(Expr).",swi_man_manual('arith.html'),manual,57536).
i(f(/(log,1)),"Natural logarithm.",swi_man_manual('arith.html'),manual,57737).
i(f(/(log10,1)),"Base-10 logarithm.",swi_man_manual('arith.html'),manual,57952).
i(f(/(exp,1)),"Result = e **Expr",swi_man_manual('arith.html'),manual,58139).
i(f(/(**,2)),"Result = Expr1**Expr2.",swi_man_manual('arith.html'),manual,58334).
i(f(/(^,2)),"In SWI-Prolog, ^/2 is equivalent to **/2.",swi_man_manual('arith.html'),manual,59430).
i(f(/(powm,3)),"Result = (IntExprBase**IntExprExp) modulo IntExprMod.",swi_man_manual('arith.html'),manual,61752).
i(f(/(lgamma,1)),"Return the natural logarithm of the absolute value of the Gamma function.",swi_man_manual('arith.html'),manual,62680).
i(f(/(erf,1)),"Wikipedia: “In mathematics, the error function (also called the Gauss error function) is a special function (non-elementary) of sigmoid shape which occurs in probability, statistics and partial differential equations.''",swi_man_manual('arith.html'),manual,63132).
i(f(/(erfc,1)),"Wikipedia: “The complementary error function.''",swi_man_manual('arith.html'),manual,63541).
i(f(/(pi,0)),"Evaluate to the mathematical constant pi (3.14159 ... ).",swi_man_manual('arith.html'),manual,63778).
i(f(/(e,0)),"Evaluate to the mathematical constant e (2.71828 ... ).",swi_man_manual('arith.html'),manual,63970).
i(f(/(epsilon,0)),"Evaluate to the difference between the float 1.0 and the first larger floating point number.",swi_man_manual('arith.html'),manual,64124).
i(f(/(inf,0)),"Evaluate to positive infinity.",swi_man_manual('arith.html'),manual,64444).
i(f(/(nan,0)),"Evaluate to Not a Number.",swi_man_manual('arith.html'),manual,64797).
i(f(/(cputime,0)),"Evaluate to a floating point number expressing the CPU time (in seconds) used by Prolog up till now.",swi_man_manual('arith.html'),manual,65068).
i(f(/(eval,1)),"Evaluate Expr.",swi_man_manual('arith.html'),manual,65523).
i(f(/(msb,1)),"Return the largest integer N such that (IntExpr >> N) /\\ 1 =:= 1.",swi_man_manual('arith.html'),manual,66707).
i(f(/(lsb,1)),"Return the smallest integer N such that (IntExpr >> N) /\\ 1 =:= 1.",swi_man_manual('arith.html'),manual,67110).
i(f(/(popcount,1)),"Return the number of 1s in the binary representation of the non-negative integer IntExpr.",swi_man_manual('arith.html'),manual,67515).
i(f(/(getbit,2)),"Evaluates to the bit value (0 or 1) of the IntExprI-th bit of IntExprV.",swi_man_manual('arith.html'),manual,67739).
i(section(2,'A.4','sec:assoc'),"library(assoc): Association lists",swi_man_manual('assoc.html'),manual,3514).
i(section(3,'A.4.1','sec:assoc-introduction'),"Introduction",swi_man_manual('assoc.html'),manual,3842).
i(section(3,'A.4.2','sec:assoc-creation'),"Creating association lists",swi_man_manual('assoc.html'),manual,5180).
i(/(empty_assoc,1),"Is true if Assoc is the empty association list.",swi_man_manual('assoc.html'),manual,5465).
i(/(list_to_assoc,2),"Create an association from a list Pairs of Key-Value pairs.",swi_man_manual('assoc.html'),manual,5687).
i(/(ord_list_to_assoc,2),"Assoc is created from an ordered list Pairs of Key-Value pairs.",swi_man_manual('assoc.html'),manual,6118).
i(section(3,'A.4.3','sec:assoc-querying'),"Querying association lists",swi_man_manual('assoc.html'),manual,6604).
i(/(get_assoc,3),"True if Key-Value is an association in Assoc.",swi_man_manual('assoc.html'),manual,6860).
i(/(get_assoc,5),"True if Key-Val0 is in Assoc0 and Key-Val is in Assoc.",swi_man_manual('assoc.html'),manual,7113).
i(/(max_assoc,3),"True if Key-Value is in Assoc and Key is the largest key.",swi_man_manual('assoc.html'),manual,7423).
i(/(min_assoc,3),"True if Key-Value is in assoc and Key is the smallest key.",swi_man_manual('assoc.html'),manual,7700).
i(/(gen_assoc,3),"True if Key-Value is an association in Assoc.",swi_man_manual('assoc.html'),manual,7967).
i(section(3,'A.4.4','sec:assoc-modifications'),"Modifying association lists",swi_man_manual('assoc.html'),manual,8413).
i(/(put_assoc,4),"Assoc is Assoc0, except that Key is associated with Value.",swi_man_manual('assoc.html'),manual,8698).
i(/(del_assoc,4),"True if Key-Value is in Assoc0.",swi_man_manual('assoc.html'),manual,9034).
i(/(del_min_assoc,4),"True if Key-Value is in Assoc0 and Key is the smallest key.",swi_man_manual('assoc.html'),manual,9367).
i(/(del_max_assoc,4),"True if Key-Value is in Assoc0 and Key is the greatest key.",swi_man_manual('assoc.html'),manual,9844).
i(section(3,'A.4.5','sec:assoc-conversion'),"Conversion predicates",swi_man_manual('assoc.html'),manual,10332).
i(/(assoc_to_list,2),"Translate Assoc to a list Pairs of Key-Value pairs.",swi_man_manual('assoc.html'),manual,10619).
i(/(assoc_to_keys,2),"True if Keys is the list of keys in Assoc.",swi_man_manual('assoc.html'),manual,10926).
i(/(assoc_to_values,2),"True if Values is the list of values in Assoc.",swi_man_manual('assoc.html'),manual,11203).
i(section(3,'A.4.6','sec:assoc-reasoning'),"Reasoning about association lists and their elements",swi_man_manual('assoc.html'),manual,11595).
i(/(is_assoc,1),"True if Assoc is an association list.",swi_man_manual('assoc.html'),manual,11907).
i(/(map_assoc,2),"True if Pred(Value) is true for all values in Assoc.",swi_man_manual('assoc.html'),manual,12445).
i(/(map_assoc,3),"Map corresponding values.",swi_man_manual('assoc.html'),manual,12687).
i(section(2,'8.1','sec:attvar'),"Attributed variables",swi_man_manual('attvar.html'),manual,3514).
i(section(3,'8.1.1','sec:attvar-predicates'),"Attribute manipulation predicates",swi_man_manual('attvar.html'),manual,8409).
i(/(attvar,1),"Succeeds if Term is an attributed variable.",swi_man_manual('attvar.html'),manual,8623).
i(/(put_attr,3),"If Var is a variable or attributed variable, set the value for the attribute named Module to Value.",swi_man_manual('attvar.html'),manual,9051).
i(/(get_attr,3),"Request the current value for the attribute named Module.",swi_man_manual('attvar.html'),manual,9742).
i(/(del_attr,2),"Delete the named attribute.",swi_man_manual('attvar.html'),manual,10158).
i(section(3,'8.1.2','sec:attvar-hooks'),"Attributed variable hooks",swi_man_manual('attvar.html'),manual,10594).
i(/(attr_unify_hook,2),"A hook that must be defined in the module to which an attributed variable refers.",swi_man_manual('attvar.html'),manual,10981).
i(//(attribute_goals,1),"This nonterminal is the main mechanism in which residual constraints are obtained.",swi_man_manual('attvar.html'),manual,12354).
i(/(project_attributes,2),"A hook that can be defined in each module to project constraints on newly introduced variables back to the query variables.",swi_man_manual('attvar.html'),manual,15777).
i(/(attr_portray_hook,2),"Called by write_term/2 and friends for each attribute if the option attributes(portray) is in effect.",swi_man_manual('attvar.html'),manual,16576).
i(section(3,'8.1.3','sec:terms-with-attvars'),"Operations on terms with attributed variables",swi_man_manual('attvar.html'),manual,17376).
i(/(copy_term,3),"Create a regular term Copy as a copy of Term (without any attributes), and a list Gs of goals that represents the attributes.",swi_man_manual('attvar.html'),manual,17604).
i(/(copy_term_nat,2),"As copy_term/2.",swi_man_manual('attvar.html'),manual,18475).
i(/(term_attvars,2),"AttVars is a list of all attributed variables in Term and its attributes.",swi_man_manual('attvar.html'),manual,18791).
i(section(3,'8.1.4','sec:attvar-low-level-preds'),"Special purpose predicates for attributes",swi_man_manual('attvar.html'),manual,19408).
i(/(get_attrs,2),"Get all attributes of Var.",swi_man_manual('attvar.html'),manual,20150).
i(/(put_attrs,2),"Set all attributes of Var.",swi_man_manual('attvar.html'),manual,20503).
i(/(del_attrs,1),"If Var is an attributed variable, delete all its attributes.",swi_man_manual('attvar.html'),manual,20816).
i(section(2,'2.14','sec:autoload'),"Automatic loading of libraries",swi_man_manual('autoload.html'),manual,3507).
i(/(autoload_path,1),"Add DirAlias to the libraries that are used by the autoloader.",swi_man_manual('autoload.html'),manual,7987).
i(/(make_library_index,1),"Create an index for this directory.",swi_man_manual('autoload.html'),manual,8747).
i(/(make_library_index,2),"Normally used in MKINDEX.pl, this predicate creates INDEX.pl for Directory, indexing all files that match one of the file patterns in ListOfPatterns.",swi_man_manual('autoload.html'),manual,9080).
i(/(reload_library_index,0),"Force reloading the index after modifying the set of library directories by changing the rules for library_directory/1, file_search_path/2, adding or deleting INDEX.pl files.",swi_man_manual('autoload.html'),manual,10196).
i(section(2,'A.12','sec:basics'),"library(dcg/basics): Various general DCG utilities",swi_man_manual('basics.html'),manual,3511).
i(//(string_without,2),"Take as many codes from the input until the next character code appears in the list EndCodes.",swi_man_manual('basics.html'),manual,4333).
i(//(string,1),"Take as few as possible tokens from the input, taking one more each time on backtracking.",swi_man_manual('basics.html'),manual,5105).
i(//(blanks,0),"Skip zero or more white-space characters.",swi_man_manual('basics.html'),manual,5699).
i(//(blank,0),"Take next space character from input.",swi_man_manual('basics.html'),manual,5887).
i(//(nonblanks,1),"Take all graph characters",swi_man_manual('basics.html'),manual,6246).
i(//(nonblank,1),"Code is the next non-blank (graph) character.",swi_man_manual('basics.html'),manual,6456).
i(//(blanks_to_nl,0),"Take a sequence of blank//0 codes if blanks are followed by a newline or end of the input.",swi_man_manual('basics.html'),manual,6698).
i(//(whites,0),"Skip white space inside a line.",swi_man_manual('basics.html'),manual,7000).
i(//(white,0),"Take next white character from input.",swi_man_manual('basics.html'),manual,7334).
i(//(alpha_to_lower,1),"Read a letter (class alpha) and return it as a lowercase letter.",swi_man_manual('basics.html'),manual,7581).
i(//(digits,1),"Number processing.",swi_man_manual('basics.html'),manual,8249).
i(//(digit,1),"Number processing.",swi_man_manual('basics.html'),manual,8249).
i(//(integer,1),"Number processing.",swi_man_manual('basics.html'),manual,8249).
i(//(float,1),"Process a floating point number.",swi_man_manual('basics.html'),manual,9009).
i(//(number,1),"Generate extract a number.",swi_man_manual('basics.html'),manual,9317).
i(//(xinteger,1),"Generate or extract an integer from a sequence of hexadecimal digits.",swi_man_manual('basics.html'),manual,9705).
i(//(xdigit,1),"True if the next code is a hexdecimal digit with Weight.",swi_man_manual('basics.html'),manual,10220).
i(//(xdigits,1),"List of weights of a sequence of hexadecimal codes.",swi_man_manual('basics.html'),manual,10580).
i(//(eol,0),"Matches end-of-line.",swi_man_manual('basics.html'),manual,10923).
i(//(eos,0),"Matches end-of-input.",swi_man_manual('basics.html'),manual,11179).
i(//(remainder,1),"Unify List with the remainder of the input.",swi_man_manual('basics.html'),manual,11622).
i(//(prolog_var_name,1),"Matches a Prolog variable name.",swi_man_manual('basics.html'),manual,11812).
i(//(csym,1),"Recognise a C symbol according to the csymf and csym code type classification provided by the C library.",swi_man_manual('basics.html'),manual,12114).
i(//(atom,1),"Generate codes of Atom.",swi_man_manual('basics.html'),manual,12417).
i(section(2,'5.4','sec:bidicts'),"Dicts: structures with named arguments",swi_man_manual('bidicts.html'),manual,3536).
i(section(3,'5.4.1','sec:ext-dict-functions'),"Functions on dicts",swi_man_manual('bidicts.html'),manual,5904).
i(/('.',3),"This predicate is called to evaluate .",swi_man_manual('bidicts.html'),manual,8465).
i(section(4,'5.4.1.1','sec:ext-dict-user-functions'),"User defined functions on dicts",swi_man_manual('bidicts.html'),manual,9193).
i(section(4,'5.4.1.2','sec:ext-dicts-predefined'),"Predefined functions on dicts",swi_man_manual('bidicts.html'),manual,10910).
i(section(3,'5.4.2','sec:ext-dict-predicates'),"Predicates for managing dicts",swi_man_manual('bidicts.html'),manual,13653).
i(/(is_dict,1),"True if Term is a dict.",swi_man_manual('bidicts.html'),manual,14028).
i(/(is_dict,2),"True if Term is a dict of Tag.",swi_man_manual('bidicts.html'),manual,14228).
i(/(get_dict,3),"Unify the value associated with Key in dict with Value.",swi_man_manual('bidicts.html'),manual,14403).
i(/(get_dict,5),"Create a new dict after updating the value for Key.",swi_man_manual('bidicts.html'),manual,15106).
i(/(dict_create,3),"Create a dict in Tag from Data.",swi_man_manual('bidicts.html'),manual,15754).
i(/(dict_pairs,3),"Bi-directional mapping between a dict and an ordered list of pairs (see section A.33).",swi_man_manual('bidicts.html'),manual,16301).
i(/(put_dict,3),"DictOut is a new dict created by replacing or adding key-value pairs from New to Dict.",swi_man_manual('bidicts.html'),manual,16571).
i(/(put_dict,4),"DictOut is a new dict created by replacing or adding Key-Value to DictIn.",swi_man_manual('bidicts.html'),manual,17287).
i(/(del_dict,4),"True when Key-Value is in DictIn and DictOut contains all associations of DictIn except for Key.",swi_man_manual('bidicts.html'),manual,17864).
i(/(:<,2),"True when Select is a‘sub dict' of From: the tags must unify and all keys in Select must appear with unifying values in From.",swi_man_manual('bidicts.html'),manual,18172).
i(/(select_dict,3),"True when the tags of Select and From have been unified, all keys in Select appear in From and the corresponding values have been unified.",swi_man_manual('bidicts.html'),manual,19011).
i(/(>:<,2),"This operator specifies a partial unification between Dict1 and Dict2.",swi_man_manual('bidicts.html'),manual,19866).
i(section(4,'5.4.2.1','sec:ext-dict-assignment'),"Destructive assignment in dicts",swi_man_manual('bidicts.html'),manual,20679).
i(/(b_set_dict,3),"Destructively update the value associated with Key in Dict to Value.",swi_man_manual('bidicts.html'),manual,21870).
i(/(nb_set_dict,3),"Destructively update the value associated with Key in Dict to a copy of Value.",swi_man_manual('bidicts.html'),manual,22513).
i(/(nb_link_dict,3),"Destructively update the value associated with Key in Dict to Value.",swi_man_manual('bidicts.html'),manual,23181).
i(section(3,'5.4.3','sec:ext-dicts-usage'),"When to use dicts?",swi_man_manual('bidicts.html'),manual,24022).
i(section(3,'5.4.4','sec:ext-dicts-motivation'),"A motivation for dicts as primary citizens",swi_man_manual('bidicts.html'),manual,29473).
i(section(3,'5.4.5','sec:ext-dicts-implementation'),"Implementation notes about dicts",swi_man_manual('bidicts.html'),manual,31298).
i(section(2,'B.5','sec:breakpoint'),"Breakpoint and watchpoint handling",swi_man_manual('breakpoint.html'),manual,3524).
i(:(prolog,/(break_hook,7)),"Experimental This hook is called if the virtual machine executes a D_BREAK, set using set_breakpoint/4.",swi_man_manual('breakpoint.html'),manual,4246).
i(section(2,'A.5','sec:broadcast'),"library(broadcast): Broadcast and receive event notifications",swi_man_manual('broadcast.html'),manual,3510).
i(/(broadcast,1),"Broadcast Term.",swi_man_manual('broadcast.html'),manual,5078).
i(/(broadcast_request,1),"Unlike broadcast/1, this predicate stops if an associated goal succeeds.",swi_man_manual('broadcast.html'),manual,5590).
i(/(listen,2),"Register a listen channel.",swi_man_manual('broadcast.html'),manual,6366).
i(/(listen,3),"Declare Listener as the owner of the channel.",swi_man_manual('broadcast.html'),manual,6869).
i(/(unlisten,1),"Deregister all entries created with listen/3 whose Listener unify.",swi_man_manual('broadcast.html'),manual,8144).
i(/(unlisten,2),"Deregister all entries created with listen/3 whose Listener and Template unify.",swi_man_manual('broadcast.html'),manual,8424).
i(/(unlisten,3),"Deregister all entries created with listen/3 whose Listener, Template and Goal unify.",swi_man_manual('broadcast.html'),manual,8740).
i(/(listening,3),"Examine the current listeners.",swi_man_manual('broadcast.html'),manual,9080).
i(section(2,'4.41','sec:builtin-statistics'),"Obtaining Runtime Statistics",swi_man_manual('builtin-statistics.html'),manual,3535).
i(/(statistics,2),"Unify system statistics determined by Key with Value.",swi_man_manual('builtin-statistics.html'),manual,4044).
i(section(1,'4','sec:builtin'),"Built-in Predicates",swi_man_manual('builtin.html'),manual,3509).
i(section(2,'4.29','sec:builtinlist'),"Built-in list operations",swi_man_manual('builtinlist.html'),manual,3529).
i(/(is_list,1),"True if Term is bound to the empty list ([]) or a compound term with name‘[|]’135The traditional list functor name is the dot (’.').",swi_man_manual('builtinlist.html'),manual,3966).
i(/(memberchk,2),"True when Elem is an element of List.",swi_man_manual('builtinlist.html'),manual,5566).
i(/(length,2),"True if Length represents the number of elements in List.",swi_man_manual('builtinlist.html'),manual,6735).
i(/(sort,2),"True if Sorted can be unified with a list holding the elements of List, sorted to the standard order of terms (see section 4.6).",swi_man_manual('builtinlist.html'),manual,8353).
i(/(sort,4),"True when Sorted can be unified with a list holding the element of List.",swi_man_manual('builtinlist.html'),manual,9532).
i(/(msort,2),"Equivalent to sort/2, but does not remove duplicates.",swi_man_manual('builtinlist.html'),manual,13349).
i(/(keysort,2),"Sort a list of pairs.",swi_man_manual('builtinlist.html'),manual,13688).
i(/(predsort,3),"Sorts similar to sort/2, but determines the order of two terms by calling Pred(-Delta, +E1, +E2) .",swi_man_manual('builtinlist.html'),manual,14994).
i(section(2,'4.26','sec:charconv'),"Character Conversion",swi_man_manual('charconv.html'),manual,3515).
i(/(char_conversion,2),"Define that term input (see read_term/3) maps each character read as CharIn to the character CharOut.",swi_man_manual('charconv.html'),manual,3813).
i(/(current_char_conversion,2),"Queries the current character conversion table.",swi_man_manual('charconv.html'),manual,4601).
i(section(2,'4.19','sec:chario'),"Primitive character I/O",swi_man_manual('chario.html'),manual,3519).
i(/(nl,0),"Write a newline character to the current output stream.",swi_man_manual('chario.html'),manual,3821).
i(/(nl,1),"Write a newline to Stream.",swi_man_manual('chario.html'),manual,4129).
i(/(put,1),"Write Char to the current output stream.",swi_man_manual('chario.html'),manual,4309).
i(/(put,2),"Write Char to Stream.",swi_man_manual('chario.html'),manual,4797).
i(/(put_byte,1),"Write a single byte to the output.",swi_man_manual('chario.html'),manual,5053).
i(/(put_byte,2),"Write a single byte to Stream.",swi_man_manual('chario.html'),manual,5295).
i(/(put_char,1),"Write a character to the current output, obeying the encoding defined for the current output stream.",swi_man_manual('chario.html'),manual,5554).
i(/(put_char,2),"Write a character to Stream, obeying the encoding defined for Stream.",swi_man_manual('chario.html'),manual,5918).
i(/(put_code,1),"Similar to put_char/1, but using a character code.",swi_man_manual('chario.html'),manual,6282).
i(/(put_code,2),"Same as put_code/1 but directing Code to Stream.",swi_man_manual('chario.html'),manual,6729).
i(/(tab,1),"Write Amount spaces on the current output stream.",swi_man_manual('chario.html'),manual,7043).
i(/(tab,2),"Write Amount spaces to Stream.",swi_man_manual('chario.html'),manual,7359).
i(/(flush_output,0),"Flush pending output on current output stream.",swi_man_manual('chario.html'),manual,7531).
i(/(flush_output,1),"Flush output on the specified stream.",swi_man_manual('chario.html'),manual,8043).
i(/(ttyflush,0),"Flush pending output on stream user.",swi_man_manual('chario.html'),manual,8281).
i(/(get_byte,1),"Read the current input stream and unify the next byte with Byte (an integer between 0 and 255).",swi_man_manual('chario.html'),manual,8549).
i(/(get_byte,2),"Read the next byte from Stream and unify Byte with an integer between 0 and 255.",swi_man_manual('chario.html'),manual,8861).
i(/(get_code,1),"Read the current input stream and unify Code with the character code of the next character.",swi_man_manual('chario.html'),manual,9127).
i(/(get_code,2),"Read the next character code from Stream.",swi_man_manual('chario.html'),manual,9536).
i(/(get_char,1),"Read the current input stream and unify Char with the next character as a one-character atom.",swi_man_manual('chario.html'),manual,9751).
i(/(get_char,2),"Unify Char with the next character from Stream as a one-character atom.",swi_man_manual('chario.html'),manual,10201).
i(/(get0,1),"Edinburgh version of the ISO get_code/1 predicate.",swi_man_manual('chario.html'),manual,10747).
i(/(get0,2),"Edinburgh version of the ISO get_code/2 predicate.",swi_man_manual('chario.html'),manual,11461).
i(/(get,1),"Read the current input stream and unify the next non-blank character with Char.",swi_man_manual('chario.html'),manual,11844).
i(/(get,2),"Read the next non-blank character from Stream.",swi_man_manual('chario.html'),manual,12357).
i(/(peek_byte,1),"Read the next byte/code/char from the input without removing it.",swi_man_manual('chario.html'),manual,12827).
i(/(peek_byte,2),"Read the next byte/code/char from the input without removing it.",swi_man_manual('chario.html'),manual,12827).
i(/(peek_code,1),"Read the next byte/code/char from the input without removing it.",swi_man_manual('chario.html'),manual,12827).
i(/(peek_code,2),"Read the next byte/code/char from the input without removing it.",swi_man_manual('chario.html'),manual,12827).
i(/(peek_char,1),"Read the next byte/code/char from the input without removing it.",swi_man_manual('chario.html'),manual,12827).
i(/(peek_char,2),"Read the next byte/code/char from the input without removing it.",swi_man_manual('chario.html'),manual,12827).
i(/(peek_string,3),"Read the next Len characters (if the stream is a text stream) or bytes (if the stream is binary) from Stream without removing the data.",swi_man_manual('chario.html'),manual,14095).
i(/(skip,1),"Read the input until Code or the end of the file is encountered.",swi_man_manual('chario.html'),manual,14680).
i(/(skip,2),"Skip input (as skip/1) on Stream.",swi_man_manual('chario.html'),manual,15032).
i(/(get_single_char,1),"Get a single character from input stream‘user' (regardless of the current input stream).",swi_man_manual('chario.html'),manual,15270).
i(/(with_tty_raw,1),"Run goal with the user input and output streams set in raw mode, which implies the terminal makes the input available immediately instead of line-by-line and input that is read is not echoed.",swi_man_manual('chario.html'),manual,16128).
i(/(at_end_of_stream,0),"Succeeds after the last character of the current input stream has been read.",swi_man_manual('chario.html'),manual,16624).
i(/(at_end_of_stream,1),"Succeeds after the last character of the named stream is read, or Stream is not a valid input stream.",swi_man_manual('chario.html'),manual,16909).
i(/(set_end_of_stream,1),"Set the size of the file opened as Stream to the current file position.",swi_man_manual('chario.html'),manual,17386).
i(/(copy_stream_data,3),"Copy Len codes from StreamIn to StreamOut.",swi_man_manual('chario.html'),manual,17685).
i(/(copy_stream_data,2),"Copy all (remaining) data from StreamIn to StreamOut.",swi_man_manual('chario.html'),manual,18313).
i(/(fill_buffer,1),"Fill the Stream’s input buffer.",swi_man_manual('chario.html'),manual,18539).
i(/(read_pending_codes,3),"Read input pending in the input buffer of StreamIn and return it in the difference list Codes-Tail.",swi_man_manual('chario.html'),manual,19028).
i(/(read_pending_chars,3),"As read_pending_codes/3, but returns a difference list of one-character atoms.",swi_man_manual('chario.html'),manual,21141).
i(section(2,'4.2','sec:chars'),"Character representation",swi_man_manual('chars.html'),manual,3522).
i(section(2,'A.6','sec:charsio'),"library(charsio): I/O on Lists of Character Codes",swi_man_manual('charsio.html'),manual,3514).
i(/(format_to_chars,3),"Use format/2 to write to a list of character codes.",swi_man_manual('charsio.html'),manual,4232).
i(/(format_to_chars,4),"Use format/2 to write to a difference list of character codes.",swi_man_manual('charsio.html'),manual,4517).
i(/(write_to_chars,2),"Write a term to a code list.",swi_man_manual('charsio.html'),manual,4820).
i(/(write_to_chars,3),"Write a term to a code list.",swi_man_manual('charsio.html'),manual,5131).
i(/(atom_to_chars,2),"Convert Atom into a list of character codes.",swi_man_manual('charsio.html'),manual,5480).
i(/(atom_to_chars,3),"Convert Atom into a difference list of character codes.",swi_man_manual('charsio.html'),manual,5854).
i(/(number_to_chars,2),"Convert Atom into a list of character codes.",swi_man_manual('charsio.html'),manual,6099).
i(/(number_to_chars,3),"Convert Number into a difference list of character codes.",swi_man_manual('charsio.html'),manual,6472).
i(/(read_from_chars,2),"Read Codes into Term.",swi_man_manual('charsio.html'),manual,6725).
i(/(read_term_from_chars,3),"Read Codes into Term.",swi_man_manual('charsio.html'),manual,7098).
i(/(open_chars_stream,2),"Open Codes as an input stream.",swi_man_manual('charsio.html'),manual,7519).
i(/(with_output_to_chars,2),"Run Goal as with once/1.",swi_man_manual('charsio.html'),manual,7878).
i(/(with_output_to_chars,3),"Run Goal as with once/1.",swi_man_manual('charsio.html'),manual,8228).
i(/(with_output_to_chars,4),"Same as with_output_to_chars/3 using an explicit stream.",swi_man_manual('charsio.html'),manual,8614).
i(section(2,'4.24','sec:chartype'),"Character properties",swi_man_manual('chartype.html'),manual,3517).
i(/(char_type,2),"Tests or generates alternative Types or Chars.",swi_man_manual('chartype.html'),manual,4305).
i(/(code_type,2),"As char_type/2, but uses character codes rather than one-character atoms.",swi_man_manual('chartype.html'),manual,11196).
i(section(3,'4.24.1','sec:case'),"Case conversion",swi_man_manual('chartype.html'),manual,12031).
i(/(downcase_atom,2),"Converts the characters of AnyCase into lowercase as char_type/2 does (i.e.",swi_man_manual('chartype.html'),manual,12606).
i(/(upcase_atom,2),"Converts, similar to downcase_atom/2, an atom to uppercase.",swi_man_manual('chartype.html'),manual,13077).
i(section(3,'4.24.2','sec:whitespace'),"White space normalization",swi_man_manual('chartype.html'),manual,13380).
i(/(normalize_space,2),"Normalize white space in In.",swi_man_manual('chartype.html'),manual,13574).
i(section(3,'4.24.3','sec:collate'),"Language-specific comparison",swi_man_manual('chartype.html'),manual,14176).
i(/(collation_key,2),"Create a Key from Atom for locale-specific comparison.",swi_man_manual('chartype.html'),manual,14562).
i(/(locale_sort,2),"Sort a list of atoms using the current locale.",swi_man_manual('chartype.html'),manual,15634).
i(section(2,'A.7','sec:check'),"library(check): Consistency checking",swi_man_manual('check.html'),manual,3508).
i(/(check,0),"Run all consistency checks defined by checker/2.",swi_man_manual('check.html'),manual,4381).
i(/(list_undefined,0),"Report undefined predicates.",swi_man_manual('check.html'),manual,6445).
i(/(list_undefined,1),"Report undefined predicates.",swi_man_manual('check.html'),manual,6445).
i(/(list_autoload,0),"Report predicates that may be auto-loaded.",swi_man_manual('check.html'),manual,7489).
i(/(list_redefined,0),"Lists predicates that are defined in the global module user as well as in a normal module; that is, predicates for which the local definition overrules the global default definition.",swi_man_manual('check.html'),manual,8034).
i(/(list_cross_module_calls,0),"List calls from one module to another using Module:Goal where the callee is not defined exported, public or multifile, i.e., where the callee should be considered private.",swi_man_manual('check.html'),manual,8343).
i(/(list_void_declarations,0),"List predicates that have declared attributes, but no clauses.",swi_man_manual('check.html'),manual,8688).
i(/(list_trivial_fails,0),"List goals that trivially fail because there is no matching clause.",swi_man_manual('check.html'),manual,8913).
i(/(list_trivial_fails,1),"List goals that trivially fail because there is no matching clause.",swi_man_manual('check.html'),manual,8913).
i(/(trivial_fail_goal,1),"Multifile hook that tells list_trivial_fails/0 to accept Goal as valid.",swi_man_manual('check.html'),manual,9611).
i(/(list_strings,0),"List strings that appear in clauses.",swi_man_manual('check.html'),manual,9932).
i(/(list_strings,1),"List strings that appear in clauses.",swi_man_manual('check.html'),manual,9932).
i(/(list_rationals,0),"List rational numbers that appear in clauses.",swi_man_manual('check.html'),manual,10880).
i(/(list_rationals,1),"List rational numbers that appear in clauses.",swi_man_manual('check.html'),manual,10880).
i(/(list_format_errors,0),"List argument errors for format/2,3.",swi_man_manual('check.html'),manual,12114).
i(/(list_format_errors,1),"List argument errors for format/2,3.",swi_man_manual('check.html'),manual,12114).
i(/(string_predicate,1),"Multifile hook to disable list_strings/0 on the given predicate.",swi_man_manual('check.html'),manual,12502).
i(/(valid_string_goal,1),"Multifile hook that qualifies Goal as valid for list_strings/0.",swi_man_manual('check.html'),manual,12866).
i(/(checker,2),"Register code validation routines.",swi_man_manual('check.html'),manual,13279).
i(section(2,'9.6','sec:chr-compatibility'),"CHR compatibility",swi_man_manual('chr-compatibility.html'),manual,3538).
i(section(3,'9.6.1','sec:chr-sicstus'),"The Old SICStus CHR implementation",swi_man_manual('chr-compatibility.html'),manual,3712).
i(section(3,'9.6.2','sec:chr-eclipse'),"The Old ECLiPSe CHR implementation",swi_man_manual('chr-compatibility.html'),manual,6035).
i(section(2,'9.4','sec:chr-debugging'),"Debugging CHR programs",swi_man_manual('chr-debugging.html'),manual,3528).
i(section(3,'9.4.1','sec:chr-ports'),"CHR debug ports",swi_man_manual('chr-debugging.html'),manual,4216).
i(section(3,'9.4.2','sec:chr-tracing'),"Tracing CHR programs",swi_man_manual('chr-debugging.html'),manual,5860).
i(section(3,'9.4.3','sec:chr-debug-preds'),"CHR Debugging Predicates",swi_man_manual('chr-debugging.html'),manual,7908).
i(/(chr_trace,0),"Activate the CHR tracer.",swi_man_manual('chr-debugging.html'),manual,8248).
i(/(chr_notrace,0),"Deactivate the CHR tracer.",swi_man_manual('chr-debugging.html'),manual,8651).
i(/(chr_leash,1),"Define the set of CHR ports on which the CHR tracer asks for user intervention (i.e.",swi_man_manual('chr-debugging.html'),manual,9060).
i(/(chr_show_store,1),"Prints all suspended constraints of module Mod to the standard output.",swi_man_manual('chr-debugging.html'),manual,9787).
i(/(find_chr_constraint,1),"Returns a constraint in the constraint store.",swi_man_manual('chr-debugging.html'),manual,10315).
i(section(2,'9.5','sec:chr-examples'),"CHR Examples",swi_man_manual('chr-examples.html'),manual,3546).
i(section(2,'9.7','sec:chr-guidelines'),"CHR Programming Tips and Tricks",swi_man_manual('chr-guidelines.html'),manual,3566).
i(section(2,'9.1','sec:chr-intro'),"Introduction to CHR",swi_man_manual('chr-intro.html'),manual,3536).
i(section(2,'9.2','sec:chr-syntaxandsemantics'),"CHR Syntax and Semantics",swi_man_manual('chr-syntaxandsemantics.html'),manual,3522).
i(section(3,'9.2.1','sec:chr-syntax'),"Syntax of CHR rules",swi_man_manual('chr-syntaxandsemantics.html'),manual,3713).
i(section(3,'9.2.2','sec:chr-semantics'),"Semantics of CHR",swi_man_manual('chr-syntaxandsemantics.html'),manual,5298).
i(/(chr_option,2),"It is possible to specify options that apply to all the CHR rules in the module.",swi_man_manual('chr-syntaxandsemantics.html'),manual,8838).
i(section(2,'9.8','sec:chr-warnings-and-errors'),"CHR Compiler Errors and Warnings",swi_man_manual('chr-warnings-and-errors.html'),manual,3528).
i(section(3,'9.8.1','sec:chr-errors'),"CHR Compiler Errors",swi_man_manual('chr-warnings-and-errors.html'),manual,3830).
i(section(1,'9','sec:chr'),"CHR: Constraint Handling Rules",swi_man_manual('chr.html'),manual,3513).
i(section(1,'8','sec:clp'),"Constraint Logic Programming",swi_man_manual('clp.html'),manual,3511).
i(section(2,'A.8','sec:clpb'),"library(clpb): CLP(B): Constraint Logic Programming over Boolean Variables",swi_man_manual('clpb.html'),manual,3506).
i(section(3,'A.8.1','sec:clpb-intro'),"Introduction",swi_man_manual('clpb.html'),manual,3870).
i(section(3,'A.8.2','sec:clpb-exprs'),"Boolean expressions",swi_man_manual('clpb.html'),manual,5895).
i(section(3,'A.8.3','sec:clpb-interface'),"Interface predicates",swi_man_manual('clpb.html'),manual,8552).
i(section(3,'A.8.4','sec:clpb-examples'),"Examples",swi_man_manual('clpb.html'),manual,9556).
i(section(3,'A.8.5','sec:clpb-residual-goals'),"Obtaining BDDs",swi_man_manual('clpb.html'),manual,10496).
i(section(3,'A.8.6','sec:clpb-monotonic'),"Enabling monotonic CLP(B)",swi_man_manual('clpb.html'),manual,11827).
i(section(3,'A.8.7','sec:clpb-pigeons'),"Example: Pigeons",swi_man_manual('clpb.html'),manual,12824).
i(section(3,'A.8.8','sec:clpb-circuit'),"Example: Boolean circuit",swi_man_manual('clpb.html'),manual,14211).
i(section(3,'A.8.9','sec:clpb-acknowledgments'),"Acknowledgments",swi_man_manual('clpb.html'),manual,14983).
i(section(3,'A.8.10','sec:clpb-predicates'),"CLP(B) predicate index",swi_man_manual('clpb.html'),manual,15372).
i(/(sat,1),"True iff Expr is a satisfiable Boolean expression.",swi_man_manual('clpb.html'),manual,15818).
i(/(taut,2),"Tautology check.",swi_man_manual('clpb.html'),manual,16026).
i(/(labeling,1),"Enumerate concrete solutions.",swi_man_manual('clpb.html'),manual,16411).
i(/(sat_count,2),"Count the number of admissible assignments.",swi_man_manual('clpb.html'),manual,16702).
i(/(weighted_maximum,3),"Enumerate weighted optima over admissible assignments.",swi_man_manual('clpb.html'),manual,17612).
i(/(random_labeling,2),"Select a single random solution.",swi_man_manual('clpb.html'),manual,18557).
i(section(2,'A.9','sec:clpfd'),"library(clpfd): CLP(FD): Constraint Logic Programming over Finite Domains",swi_man_manual('clpfd.html'),manual,3504).
i(section(3,'A.9.1','sec:clpfd-intro'),"Introduction",swi_man_manual('clpfd.html'),manual,4047).
i(section(3,'A.9.2','sec:clpfd-arith-constraints'),"Arithmetic constraints",swi_man_manual('clpfd.html'),manual,9774).
i(section(3,'A.9.3','sec:clpfd-integer-arith'),"Declarative integer arithmetic",swi_man_manual('clpfd.html'),manual,12859).
i(section(3,'A.9.4','sec:clpfd-factorial'),"Example: Factorial relation",swi_man_manual('clpfd.html'),manual,16524).
i(section(3,'A.9.5','sec:clpfd-combinatorial'),"Combinatorial constraints",swi_man_manual('clpfd.html'),manual,20056).
i(section(3,'A.9.6','sec:clpfd-domains'),"Domains",swi_man_manual('clpfd.html'),manual,20978).
i(section(3,'A.9.7','sec:clpfd-sudoku'),"Example: Sudoku",swi_man_manual('clpfd.html'),manual,22213).
i(section(3,'A.9.8','sec:clpfd-residual-goals'),"Residual goals",swi_man_manual('clpfd.html'),manual,24008).
i(section(3,'A.9.9','sec:clpfd-search'),"Core relations and search",swi_man_manual('clpfd.html'),manual,25898).
i(section(3,'A.9.10','sec:clpfd-n-queens'),"Example: Eight queens puzzle",swi_man_manual('clpfd.html'),manual,28605).
i(section(3,'A.9.11','sec:clpfd-optimisation'),"Optimisation",swi_man_manual('clpfd.html'),manual,31723).
i(section(3,'A.9.12','sec:clpfd-reification'),"Reification",swi_man_manual('clpfd.html'),manual,33377).
i(section(3,'A.9.13','sec:clpfd-monotonicity'),"Enabling monotonic CLP(FD)",swi_man_manual('clpfd.html'),manual,34976).
i(section(3,'A.9.14','sec:clpfd-custom-constraints'),"Custom constraints",swi_man_manual('clpfd.html'),manual,36225).
i(section(3,'A.9.15','sec:clpfd-applications'),"Applications",swi_man_manual('clpfd.html'),manual,38431).
i(section(3,'A.9.16','sec:clpfd-acknowledgments'),"Acknowledgments",swi_man_manual('clpfd.html'),manual,39104).
i(section(3,'A.9.17','sec:clpfd-predicate-index'),"CLP(FD) predicate index",swi_man_manual('clpfd.html'),manual,40646).
i(section(4,'A.9.17.1','sec:clpfd-arithmetic'),"Arithmetic constraints",swi_man_manual('clpfd.html'),manual,41092).
i(/(#=,2),"The arithmetic expression X equals Y.",swi_man_manual('clpfd.html'),manual,41746).
i(/(#\=,2),"The arithmetic expressions X and Y evaluate to distinct integers.",swi_man_manual('clpfd.html'),manual,42233).
i(/(#>=,2),"Same as Y #=< X.",swi_man_manual('clpfd.html'),manual,42687).
i(/(#=<,2),"The arithmetic expression X is less than or equal to Y.",swi_man_manual('clpfd.html'),manual,43115).
i(/(#>,2),"Same as Y #< X.",swi_man_manual('clpfd.html'),manual,43566).
i(/(#<,2),"The arithmetic expression X is less than Y.",swi_man_manual('clpfd.html'),manual,43987).
i(section(4,'A.9.17.2','sec:clpfd-membership'),"Membership constraints",swi_man_manual('clpfd.html'),manual,44937).
i(/(in,2),"Var is an element of Domain.",swi_man_manual('clpfd.html'),manual,45453).
i(/(ins,2),"The variables in the list Vars are elements of Domain.",swi_man_manual('clpfd.html'),manual,46443).
i(section(4,'A.9.17.3','sec:clpfd-enumeration'),"Enumeration predicates",swi_man_manual('clpfd.html'),manual,46746).
i(/(indomain,1),"Bind Var to all feasible values of its domain on backtracking.",swi_man_manual('clpfd.html'),manual,47235).
i(/(label,1),"Equivalent to labeling([], Vars).",swi_man_manual('clpfd.html'),manual,47471).
i(/(labeling,2),"Assign a value to each variable in Vars.",swi_man_manual('clpfd.html'),manual,47694).
i(section(4,'A.9.17.4','sec:clpfd-global'),"Global constraints",swi_man_manual('clpfd.html'),manual,51305).
i(/(all_distinct,1),"True iff Vars are pairwise distinct.",swi_man_manual('clpfd.html'),manual,51908).
i(/(all_different,1),"Like all_distinct/1, but with weaker propagation.",swi_man_manual('clpfd.html'),manual,52389).
i(/(sum,3),"The sum of elements of the list Vars is in relation Rel to Expr.",swi_man_manual('clpfd.html'),manual,52857).
i(/(scalar_product,4),"True iff the scalar product of Cs and Vs is in relation Rel to Expr.",swi_man_manual('clpfd.html'),manual,53342).
i(/(lex_chain,1),"Lists are lexicographically non-decreasing.",swi_man_manual('clpfd.html'),manual,53810).
i(/(tuples_in,2),"True iff all Tuples are elements of Relation.",swi_man_manual('clpfd.html'),manual,53985).
i(/(serialized,2),"Describes a set of non-overlapping tasks.",swi_man_manual('clpfd.html'),manual,55361).
i(/(element,3),"The N-th element of the list of finite domain variables Vs is V.",swi_man_manual('clpfd.html'),manual,56248).
i(/(global_cardinality,2),"Global Cardinality constraint.",swi_man_manual('clpfd.html'),manual,56535).
i(/(global_cardinality,3),"Global Cardinality constraint.",swi_man_manual('clpfd.html'),manual,57012).
i(/(circuit,1),"True iff the list Vs of finite domain variables induces a Hamiltonian circuit.",swi_man_manual('clpfd.html'),manual,58194).
i(/(cumulative,1),"Equivalent to cumulative(Tasks, [limit(1)]).",swi_man_manual('clpfd.html'),manual,58665).
i(/(cumulative,2),"Schedule with a limited resource.",swi_man_manual('clpfd.html'),manual,58914).
i(/(disjoint2,1),"True iff Rectangles are not overlapping.",swi_man_manual('clpfd.html'),manual,60497).
i(/(automaton,3),"Describes a list of finite domain variables with a finite automaton.",swi_man_manual('clpfd.html'),manual,60931).
i(/(automaton,8),"Describes a list of finite domain variables with a finite automaton.",swi_man_manual('clpfd.html'),manual,61800).
i(/(chain,2),"Zs form a chain with respect to Relation.",swi_man_manual('clpfd.html'),manual,64934).
i(section(4,'A.9.17.5','sec:clpfd-reification-predicates'),"Reification predicates",swi_man_manual('clpfd.html'),manual,65496).
i(/(#\,1),"Q does not hold.",swi_man_manual('clpfd.html'),manual,66017).
i(/(#<==>,2),"P and Q are equivalent.",swi_man_manual('clpfd.html'),manual,66376).
i(/(#==>,2),"P implies Q.",swi_man_manual('clpfd.html'),manual,67259).
i(/(#<==,2),"Q implies P.",swi_man_manual('clpfd.html'),manual,67499).
i(/(#/\,2),"P and Q hold.",swi_man_manual('clpfd.html'),manual,67739).
i(//(#\,2),"P or Q holds.",swi_man_manual('clpfd.html'),manual,67975).
i(/(#\,2),"Either P holds or Q holds, but not both.",swi_man_manual('clpfd.html'),manual,68507).
i(/(zcompare,3),"Analogous to compare/3, with finite domain variables A and B.",swi_man_manual('clpfd.html'),manual,68768).
i(section(4,'A.9.17.6','sec:clpfd-reflection-predicates'),"Reflection predicates",swi_man_manual('clpfd.html'),manual,71359).
i(/(fd_var,1),"True iff Var is a CLP(FD) variable.",swi_man_manual('clpfd.html'),manual,72059).
i(/(fd_inf,2),"Inf is the infimum of the current domain of Var.",swi_man_manual('clpfd.html'),manual,72218).
i(/(fd_sup,2),"Sup is the supremum of the current domain of Var.",swi_man_manual('clpfd.html'),manual,72408).
i(/(fd_size,2),"Reflect the current size of a domain.",swi_man_manual('clpfd.html'),manual,72599).
i(/(fd_dom,2),"Dom is the current domain (see in/2) of Var.",swi_man_manual('clpfd.html'),manual,72895).
i(/(fd_degree,2),"Degree is the number of constraints currently attached to Var.",swi_man_manual('clpfd.html'),manual,73994).
i(section(4,'A.9.17.7','sec:clpfd-fdset-predicates'),"FD set predicates",swi_man_manual('clpfd.html'),manual,74253).
i(/(in_set,2),"Var is an element of the FD set Set.",swi_man_manual('clpfd.html'),manual,75177).
i(/(fd_set,2),"Set is the FD set representation of the current domain of Var.",swi_man_manual('clpfd.html'),manual,75363).
i(/(is_fdset,1),"Set is currently bound to a valid FD set.",swi_man_manual('clpfd.html'),manual,75602).
i(/(empty_fdset,1),"Set is the empty FD set.",swi_man_manual('clpfd.html'),manual,75810).
i(/(fdset_parts,4),"Set is a non-empty FD set representing the domain Min..Max \\/ Rest, where Min..Max is a non-empty interval (see fdset_interval/3) and Rest is another FD set (possibly empty).",swi_man_manual('clpfd.html'),manual,76003).
i(/(empty_interval,2),"Min..Max is an empty interval.",swi_man_manual('clpfd.html'),manual,76804).
i(/(fdset_interval,3),"Interval is a non-empty FD set consisting of the single interval Min..Max.",swi_man_manual('clpfd.html'),manual,77125).
i(/(fdset_singleton,2),"Set is the FD set containing the single integer Elt.",swi_man_manual('clpfd.html'),manual,77668).
i(/(fdset_min,2),"Min is the lower bound (infimum) of the non-empty FD set Set.",swi_man_manual('clpfd.html'),manual,77979).
i(/(fdset_max,2),"Max is the upper bound (supremum) of the non-empty FD set Set.",swi_man_manual('clpfd.html'),manual,78318).
i(/(fdset_size,2),"Size is the number of elements of the FD set Set, or the atom sup if Set is infinite.",swi_man_manual('clpfd.html'),manual,78658).
i(/(list_to_fdset,2),"Set is an FD set containing all elements of List, which must be a list of integers.",swi_man_manual('clpfd.html'),manual,78948).
i(/(fdset_to_list,2),"List is a list containing all elements of the finite FD set Set, in ascending order.",swi_man_manual('clpfd.html'),manual,79224).
i(/(range_to_fdset,2),"Set is an FD set equivalent to the domain Domain.",swi_man_manual('clpfd.html'),manual,79501).
i(/(fdset_to_range,2),"Domain is a domain equivalent to the FD set Set.",swi_man_manual('clpfd.html'),manual,79809).
i(/(fdset_add_element,3),"Set2 is the same FD set as Set1, but with the integer Elt added.",swi_man_manual('clpfd.html'),manual,80166).
i(/(fdset_del_element,3),"Set2 is the same FD set as Set1, but with the integer Elt removed.",swi_man_manual('clpfd.html'),manual,80530).
i(/(fdset_disjoint,2),"The FD sets Set1 and Set2 have no elements in common.",swi_man_manual('clpfd.html'),manual,80889).
i(/(fdset_intersect,2),"The FD sets Set1 and Set2 have at least one element in common.",swi_man_manual('clpfd.html'),manual,81142).
i(/(fdset_intersection,3),"Intersection is an FD set (possibly empty) of all elements that the FD sets Set1 and Set2 have in common.",swi_man_manual('clpfd.html'),manual,81406).
i(/(fdset_member,2),"The integer Elt is a member of the FD set Set.",swi_man_manual('clpfd.html'),manual,81741).
i(/(fdset_eq,2),"True if the FD sets Set1 and Set2 are equal, i.",swi_man_manual('clpfd.html'),manual,82090).
i(/(fdset_subset,2),"The FD set Set1 is a (non-strict) subset of Set2, i.",swi_man_manual('clpfd.html'),manual,82505).
i(/(fdset_subtract,3),"The FD set Difference is Set1 with all elements of Set2 removed, i.",swi_man_manual('clpfd.html'),manual,82817).
i(/(fdset_union,3),"The FD set Union is the union of FD sets Set1 and Set2.",swi_man_manual('clpfd.html'),manual,83166).
i(/(fdset_union,2),"The FD set Union is the n-ary union of all FD sets in the list Sets.",swi_man_manual('clpfd.html'),manual,83429).
i(/(fdset_complement,2),"The FD set Complement is the complement of the FD set Set.",swi_man_manual('clpfd.html'),manual,83756).
i(section(4,'A.9.17.8','sec:clpfd-misc-predicates'),"FD miscellaneous predicates",swi_man_manual('clpfd.html'),manual,84100).
i(/(transpose,2),"Transpose a list of lists of the same length.",swi_man_manual('clpfd.html'),manual,84507).
i(section(3,'A.9.18','sec:clpfd-closing-opening'),"Closing and opening words about CLP(FD)",swi_man_manual('clpfd.html'),manual,86178).
i(section(2,'A.10','sec:clpqr'),"library(clpqr): Constraint Logic Programming over Rationals and Reals",swi_man_manual('clpqr.html'),manual,3503).
i(section(3,'A.10.1','sec:clpqr-predicates'),"Solver predicates",swi_man_manual('clpqr.html'),manual,5197).
i(/({},1),"Adds the constraints given by Constraints to the constraint store.",swi_man_manual('clpqr.html'),manual,5460).
i(/(entailed,1),"Succeeds if Constraint is necessarily true within the current constraint store.",swi_man_manual('clpqr.html'),manual,5651).
i(/(inf,2),"Computes the infimum of Expression within the current state of the constraint store and returns that infimum in Inf.",swi_man_manual('clpqr.html'),manual,5954).
i(/(sup,2),"Computes the supremum of Expression within the current state of the constraint store and returns that supremum in Sup.",swi_man_manual('clpqr.html'),manual,6268).
i(/(minimize,1),"Minimizes Expression within the current constraint store.",swi_man_manual('clpqr.html'),manual,6584).
i(/(maximize,1),"Maximizes Expression within the current constraint store.",swi_man_manual('clpqr.html'),manual,6865).
i(/(bb_inf,5),"This predicate is offered in CLP(R) only.",swi_man_manual('clpqr.html'),manual,7148).
i(/(bb_inf,4),"This predicate is offered in CLP(Q) only.",swi_man_manual('clpqr.html'),manual,7854).
i(/(bb_inf,3),"The same as bb_inf/5 or bb_inf/4 but without returning the values of the integers.",swi_man_manual('clpqr.html'),manual,8152).
i(/(dump,3),"Returns the constraints on Target in the list CodedAnswer where all variables of Target have been replaced by NewVars.",swi_man_manual('clpqr.html'),manual,8509).
i(section(3,'A.10.2','sec:clpqr-arg-syntax'),"Syntax of the predicate arguments",swi_man_manual('clpqr.html'),manual,9069).
i(section(3,'A.10.3','sec:clpqr-unification'),"Use of unification",swi_man_manual('clpqr.html'),manual,13251).
i(section(3,'A.10.4','sec:clpqr-non-linear'),"Non-linear constraints",swi_man_manual('clpqr.html'),manual,13871).
i(section(3,'A.10.5','sec:clpqr-status'),"Status and known problems",swi_man_manual('clpqr.html'),manual,15729).
i(section(2,'2.4','sec:cmdline'),"Command line options",swi_man_manual('cmdline.html'),manual,3512).
i(section(3,'2.4.1','sec:info-options'),"Informational command line options",swi_man_manual('cmdline.html'),manual,6170).
i(section(3,'2.4.2','sec:running-options'),"Command line options for running Prolog",swi_man_manual('cmdline.html'),manual,7890).
i(section(3,'2.4.3','sec:stacksizes'),"Controlling the stack sizes",swi_man_manual('cmdline.html'),manual,18695).
i(section(3,'2.4.4','sec:runoptions'),"Running goals from the command line",swi_man_manual('cmdline.html'),manual,20761).
i(section(3,'2.4.5','sec:compoptions'),"Compilation options",swi_man_manual('cmdline.html'),manual,22845).
i(section(3,'2.4.6','sec:maintoptions'),"Maintenance options",swi_man_manual('cmdline.html'),manual,23427).
i(section(2,'4.6','sec:compare'),"Comparison and Unification of Terms",swi_man_manual('compare.html'),manual,3516).
i(/(=,2),"Unify Term1 with Term2.",swi_man_manual('compare.html'),manual,3842).
i(/(\=,2),"Equivalent to \\+Term1 = Term2.",swi_man_manual('compare.html'),manual,4580).
i(section(3,'4.6.1','sec:standardorder'),"Standard Order of Terms",swi_man_manual('compare.html'),manual,5318).
i(/(==,2),"True if Term1 is equivalent to Term2.",swi_man_manual('compare.html'),manual,9623).
i(/(\==,2),"Equivalent to \\+Term1 == Term2.",swi_man_manual('compare.html'),manual,9894).
i(/(@<,2),"True if Term1 is before Term2 in the standard order of terms.",swi_man_manual('compare.html'),manual,10112).
i(/(@=<,2),"True if both terms are equal (==/2) or Term1 is before Term2 in the standard order of terms.",swi_man_manual('compare.html'),manual,10358).
i(/(@>,2),"True if Term1 is after Term2 in the standard order of terms.",swi_man_manual('compare.html'),manual,10683).
i(/(@>=,2),"True if both terms are equal (==/2) or Term1 is after Term2 in the standard order of terms.",swi_man_manual('compare.html'),manual,10928).
i(/(compare,3),"Determine or test the Order between two terms in the standard order of terms.",swi_man_manual('compare.html'),manual,11252).
i(section(3,'4.6.2','sec:unifyspecial'),"Special unification and comparison predicates",swi_man_manual('compare.html'),manual,11670).
i(/(unify_with_occurs_check,2),"As =/2, but using sound unification.",swi_man_manual('compare.html'),manual,12611).
i(/(=@=,2),"True if Term1 is a variant of (or structurally equivalent to) Term2.",swi_man_manual('compare.html'),manual,14611).
i(/(\=@=,2),"Equivalent to ‘\\+Term1 =@= Term2'.",swi_man_manual('compare.html'),manual,18362).
i(/(subsumes_term,2),"True if Generic can be made equivalent to Specific by only binding variables in Generic.",swi_man_manual('compare.html'),manual,18626).
i(/(term_subsumer,3),"General is the most specific term that is a generalisation of Special1 and Special2.",swi_man_manual('compare.html'),manual,19766).
i(/(unifiable,3),"If X and Y can unify, unify Unifier with a list of Var = Value, representing the bindings required to make X and Y equivalent.",swi_man_manual('compare.html'),manual,20082).
i(/(?=,2),"Succeeds if the syntactic equality of Term1 and Term2 can be decided safely, i.e.",swi_man_manual('compare.html'),manual,20990).
i(section(2,'2.11','sec:compilation'),"Compilation",swi_man_manual('compilation.html'),manual,3523).
i(section(3,'2.11.1','sec:develcomp'),"During program development",swi_man_manual('compilation.html'),manual,3684).
i(section(3,'2.11.2','sec:runcomp'),"For running the result",swi_man_manual('compilation.html'),manual,5086).
i(section(4,'2.11.2.1','sec:plscript'),"Using PrologScript",swi_man_manual('compilation.html'),manual,5534).
i(section(4,'2.11.2.2','sec:shellscript'),"Creating a shell script",swi_man_manual('compilation.html'),manual,8898).
i(section(4,'2.11.2.3','sec:makestate'),"Creating a saved state",swi_man_manual('compilation.html'),manual,10007).
i(section(4,'2.11.2.4','sec:cmdlinecomp'),"Compilation using the -c command line option",swi_man_manual('compilation.html'),manual,11179).
i(section(2,'4.3','sec:consulting'),"Loading Prolog source files",swi_man_manual('consulting.html'),manual,3504).
i(/(load_files,1),"Equivalent to load_files(Files,[]).",swi_man_manual('consulting.html'),manual,12622).
i(/(load_files,2),"The predicate load_files/2 is the parent of all the other loading predicates except for include/1.",swi_man_manual('consulting.html'),manual,13024).
i(/(consult,1),"Read File as a Prolog source file.",swi_man_manual('consulting.html'),manual,26102).
i(/(ensure_loaded,1),"If the file is not already loaded, this is equivalent to consult/1.",swi_man_manual('consulting.html'),manual,27466).
i(/(include,1),"Textually include the content of File at the position where the directive :- include(File).",swi_man_manual('consulting.html'),manual,28857).
i(/(require,1),"Declare that this file/module requires the specified predicates to be defined “with their commonly accepted definition''.",swi_man_manual('consulting.html'),manual,33191).
i(/(encoding,1),"This directive can appear anywhere in a source file to define how characters are encoded in the remainder of the file.",swi_man_manual('consulting.html'),manual,35151).
i(/(make,0),"Consult all source files that have been changed since they were consulted.",swi_man_manual('consulting.html'),manual,35575).
i(/(library_directory,1),"Dynamic predicate used to specify library directories.",swi_man_manual('consulting.html'),manual,36826).
i(/(file_search_path,2),"Dynamic multifile hook predicate used to specify‘path aliases'.",swi_man_manual('consulting.html'),manual,37717).
i(/(expand_file_search_path,2),"Unifies Path with all possible expansions of the filename specification Spec.",swi_man_manual('consulting.html'),manual,41148).
i(/(prolog_file_type,2),"This dynamic multifile predicate defined in module user determines the extensions considered by file_search_path/2.",swi_man_manual('consulting.html'),manual,41570).
i(/(source_file,1),"True if File is a loaded Prolog source file.",swi_man_manual('consulting.html'),manual,43025).
i(/(source_file,2),"True if the predicate specified by Pred is owned by file File, where File is an absolute path name (see absolute_file_name/2).",swi_man_manual('consulting.html'),manual,43276).
i(/(source_file_property,2),"True when Property is a property of the loaded file File.",swi_man_manual('consulting.html'),manual,44547).
i(/(exists_source,1),"True if Source (a term valid for load_files/2) exists.",swi_man_manual('consulting.html'),manual,48354).
i(/(exists_source,2),"As exists_source/1, binding File to an atom describing the full absolute path to the source file.",swi_man_manual('consulting.html'),manual,49176).
i(/(unload_file,1),"Remove all clauses loaded from File.",swi_man_manual('consulting.html'),manual,49556).
i(/(prolog_load_context,2),"Obtain context information during compilation.",swi_man_manual('consulting.html'),manual,50306).
i(/(source_location,2),"If the last term has been read from a physical file (i.e., not from the file user or a string), unify File with an absolute path to the file and Line with the line number in the file.",swi_man_manual('consulting.html'),manual,54154).
i(/(at_halt,1),"Register Goal to be run from PL_cleanup(), which is called when the system halts.",swi_man_manual('consulting.html'),manual,54662).
i(/(cancel_halt,1),"If this predicate is called from a hook registered with at_halt/1, halting Prolog is cancelled and an informational message is printed that includes Reason.",swi_man_manual('consulting.html'),manual,55700).
i(/(initialization,1),"Call Goal after loading the source file in which this directive appears has been completed.",swi_man_manual('consulting.html'),manual,56208).
i(/(initialization,2),"Similar to initialization/1, but allows for specifying when Goal is executed while loading the program text: nowExecute Goal immediately.",swi_man_manual('consulting.html'),manual,58874).
i(/(initialize,0),"Run all initialization goals registered using initialization(Goal, program).",swi_man_manual('consulting.html'),manual,61799).
i(/(compiling,0),"True if the system is compiling source files with the -c option or qcompile/1 into an intermediate code file.",swi_man_manual('consulting.html'),manual,62219).
i(section(3,'4.3.1','sec:progtransform'),"Conditional compilation and program transformation",swi_man_manual('consulting.html'),manual,62813).
i(/(term_expansion,2),"Dynamic and multifile predicate, normally not defined.",swi_man_manual('consulting.html'),manual,64186).
i(/(expand_term,2),"This predicate is normally called by the compiler on terms read from the input to perform preprocessing.",swi_man_manual('consulting.html'),manual,69223).
i(/(goal_expansion,2),"Like term_expansion/2, goal_expansion/2 provides for macro expansion of Prolog source code.",swi_man_manual('consulting.html'),manual,70941).
i(/(expand_goal,2),"This predicate is normally called by the compiler to perform preprocessing using goal_expansion/2.",swi_man_manual('consulting.html'),manual,73293).
i(/(compile_aux_clauses,1),"Compile clauses on behalf of goal_expansion/2.",swi_man_manual('consulting.html'),manual,75565).
i(/(dcg_translate_rule,2),"This predicate performs the translation of a term Head-->Body into a normal Prolog clause.",swi_man_manual('consulting.html'),manual,76574).
i(/(var_property,2),"True when Property is a property of Var.",swi_man_manual('consulting.html'),manual,76982).
i(section(4,'4.3.1.1','sec:progtransform-layout'),"Program transformation with source layout info",swi_man_manual('consulting.html'),manual,78635).
i(/(expand_goal,4),"These versions are called before their 2-argument counterparts.",swi_man_manual('consulting.html'),manual,79326).
i(/(goal_expansion,4),"These versions are called before their 2-argument counterparts.",swi_man_manual('consulting.html'),manual,79326).
i(/(expand_term,4),"These versions are called before their 2-argument counterparts.",swi_man_manual('consulting.html'),manual,79326).
i(/(term_expansion,4),"These versions are called before their 2-argument counterparts.",swi_man_manual('consulting.html'),manual,79326).
i(/(dcg_translate_rule,4),"These versions are called before their 2-argument counterparts.",swi_man_manual('consulting.html'),manual,79326).
i(section(4,'4.3.1.2','sec:conditionalcompilation'),"Conditional compilation",swi_man_manual('consulting.html'),manual,80544).
i(/(if,1),"Compile subsequent code only if Goal succeeds.",swi_man_manual('consulting.html'),manual,82562).
i(/(elif,1),"Equivalent to :- else.",swi_man_manual('consulting.html'),manual,83009).
i(/(else,0),"Start‘else' branch.",swi_man_manual('consulting.html'),manual,83483).
i(/(endif,0),"End of conditional compilation.",swi_man_manual('consulting.html'),manual,83603).
i(section(3,'4.3.2','sec:loadrunningcode'),"Reloading files, active code and threads",swi_man_manual('consulting.html'),manual,83742).
i(section(4,'4.3.2.1','sec:compilation-messages'),"Errors and warnings during compilation",swi_man_manual('consulting.html'),manual,89931).
i(section(4,'4.3.2.2','sec:depload'),"Compilation of mutually dependent code",swi_man_manual('consulting.html'),manual,93635).
i(section(4,'4.3.2.3','sec:mtload'),"Compilation with multiple threads",swi_man_manual('consulting.html'),manual,95740).
i(section(3,'4.3.3','sec:qlf'),"Quick load files",swi_man_manual('consulting.html'),manual,97315).
i(/(qcompile,1),"Takes a file specification as consult/1, etc., and, in addition to the normal compilation, creates a Quick Load File from File.",swi_man_manual('consulting.html'),manual,98765).
i(/(qcompile,2),"As qcompile/1, but processes additional options as defined by load_files/2.",swi_man_manual('consulting.html'),manual,100286).
i(section(2,'E.1','sec:contrib'),"Contributing to the SWI-Prolog project",swi_man_manual('contrib.html'),manual,3522).
i(section(2,'4.7','sec:control'),"Control Predicates",swi_man_manual('control.html'),manual,3516).
i(/(fail,0),"Always fail.",swi_man_manual('control.html'),manual,4547).
i(/(false,0),"Same as fail, but the name has a more declarative connotation.",swi_man_manual('control.html'),manual,4839).
i(/(true,0),"Always succeed.",swi_man_manual('control.html'),manual,5031).
i(/(repeat,0),"Always succeed, provide an infinite number of choice points.",swi_man_manual('control.html'),manual,5326).
i(/(!,0),"Cut.",swi_man_manual('control.html'),manual,5517).
i(/(',',2),"Conjunction (and).",swi_man_manual('control.html'),manual,7314).
i(/(;,2),"Disjunction (or).",swi_man_manual('control.html'),manual,7560).
i(/('|',2),"Equivalent to ;/2.",swi_man_manual('control.html'),manual,9231).
i(/(->,2),"If-then and If-Then-Else.",swi_man_manual('control.html'),manual,9518).
i(/(*->,2),"This construct implements the so-called‘soft-cut'.",swi_man_manual('control.html'),manual,11547).
i(/(\+,1),"True if‘Goal' cannot be proven (mnemonic: + refers to provable and the backslash (\\) is normally used to indicate negation in Prolog).",swi_man_manual('control.html'),manual,13382).
i(section(2,'8.2','sec:coroutining'),"Coroutining",swi_man_manual('coroutining.html'),manual,3504).
i(/(dif,2),"The dif/2 predicate is a constraint that is true if and only if A and B are different terms.",swi_man_manual('coroutining.html'),manual,5776).
i(/(freeze,2),"Delay the execution of Goal until Var is bound (i.e., is not a variable or attributed variable).",swi_man_manual('coroutining.html'),manual,7173).
i(/(frozen,2),"Unify Goal with the goal or conjunction of goals delayed on some attributed variable in Term.",swi_man_manual('coroutining.html'),manual,7940).
i(/(when,2),"Execute Goal when Condition becomes true.",swi_man_manual('coroutining.html'),manual,9203).
i(/(call_residue_vars,2),"Find residual attributed variables left by Goal.",swi_man_manual('coroutining.html'),manual,10106).
i(section(2,'A.11','sec:csv'),"library(csv): Process CSV (Comma-Separated Values) data",swi_man_manual('csv.html'),manual,3509).
i(/(csv_read_file,2),"Read a CSV file into a list of rows.",swi_man_manual('csv.html'),manual,4201).
i(/(csv_read_file,3),"Read a CSV file into a list of rows.",swi_man_manual('csv.html'),manual,4201).
i(/(csv_read_stream,3),"Read CSV data from Stream.",swi_man_manual('csv.html'),manual,5378).
i(//(csv,1),"Prolog DCG to‘read/write' CSV data.",swi_man_manual('csv.html'),manual,5678).
i(//(csv,2),"Prolog DCG to‘read/write' CSV data.",swi_man_manual('csv.html'),manual,5678).
i(/(csv_read_file_row,3),"True when Row is a row in File.",swi_man_manual('csv.html'),manual,8389).
i(/(csv_read_row,3),"Read the next CSV record from Stream and unify the result with Row.",swi_man_manual('csv.html'),manual,9423).
i(/(csv_options,2),"Compiled is the compiled representation of the CSV processing options as they may be passed into csv//2, etc.",swi_man_manual('csv.html'),manual,9980).
i(/(csv_write_file,2),"Write a list of Prolog terms to a CSV file.",swi_man_manual('csv.html'),manual,10474).
i(/(csv_write_file,3),"Write a list of Prolog terms to a CSV file.",swi_man_manual('csv.html'),manual,10474).
i(/(csv_write_stream,3),"Write the rows in Data to Stream.",swi_man_manual('csv.html'),manual,11152).
i(section(2,'6.14','sec:ctxmodule'),"Transparent predicates: definition and context module",swi_man_manual('ctxmodule.html'),manual,3539).
i(/(module_transparent,1),"Preds is a comma-separated list of name/arity pairs (like dynamic/1).",swi_man_manual('ctxmodule.html'),manual,7060).
i(/(context_module,1),"Unify Module with the context module of the current goal.",swi_man_manual('ctxmodule.html'),manual,7486).
i(/(strip_module,3),"Used in module-transparent predicates or meta-predicates to extract the referenced module and plain term.",swi_man_manual('ctxmodule.html'),manual,7834).
i(section(2,'2.17','sec:cyclic'),"Rational trees (cyclic terms)",swi_man_manual('cyclic.html'),manual,3515).
i(section(2,'4.14','sec:db'),"Database",swi_man_manual('db.html'),manual,3507).
i(section(3,'4.14.1','sec:dynpreds'),"Managing (dynamic) predicates",swi_man_manual('db.html'),manual,9343).
i(/(abolish,1),"Removes all clauses of a predicate with functor Functor and arity Arity from the database.",swi_man_manual('db.html'),manual,9537).
i(/(abolish,2),"Same as abolish(Name/Arity).",swi_man_manual('db.html'),manual,11032).
i(/(copy_predicate_clauses,2),"Copy all clauses of predicate From to To.",swi_man_manual('db.html'),manual,11442).
i(/(redefine_system_predicate,1),"This directive may be used both in module user and in normal modules to redefine any system predicate.",swi_man_manual('db.html'),manual,12596).
i(/(retract,1),"When Term is an atom or a term it is unified with the first unifying fact or clause in the database.",swi_man_manual('db.html'),manual,13242).
i(/(retractall,1),"All facts or clauses in the database for which the head unifies with Head are removed.",swi_man_manual('db.html'),manual,14939).
i(/(asserta,1),"Assert a clause (fact or rule) into the database.",swi_man_manual('db.html'),manual,15624).
i(/(assertz,1),"Assert a clause (fact or rule) into the database.",swi_man_manual('db.html'),manual,15624).
i(/(assert,1),"Assert a clause (fact or rule) into the database.",swi_man_manual('db.html'),manual,15624).
i(/(asserta,2),"Equivalent to asserta/1, assertz/1, assert/1, but in addition unifies Reference with a handle to the asserted clauses.",swi_man_manual('db.html'),manual,17159).
i(/(assertz,2),"Equivalent to asserta/1, assertz/1, assert/1, but in addition unifies Reference with a handle to the asserted clauses.",swi_man_manual('db.html'),manual,17159).
i(/(assert,2),"Equivalent to asserta/1, assertz/1, assert/1, but in addition unifies Reference with a handle to the asserted clauses.",swi_man_manual('db.html'),manual,17159).
i(section(4,'4.14.1.1','sec:transactions'),"Transactions",swi_man_manual('db.html'),manual,18118).
i(/(transaction,1),"Run Goal as once/1 in a transaction.",swi_man_manual('db.html'),manual,22335).
i(/(transaction,2),"Run Goal as once/1 in a transaction.",swi_man_manual('db.html'),manual,22335).
i(/(transaction,3),"Similar to transaction/1, but allows verifying Constraint during the commit phase.",swi_man_manual('db.html'),manual,26148).
i(/(snapshot,1),"Similar to transaction/1, but always discards the local modifications.",swi_man_manual('db.html'),manual,28014).
i(/(current_transaction,1),"True when called inside a transaction running Goal.",swi_man_manual('db.html'),manual,28751).
i(/(transaction_updates,1),"Unify Updates with a list of database updates that would be effectuated if the transaction is going to be committed at this stage.",swi_man_manual('db.html'),manual,29460).
i(section(4,'4.14.1.2','sec:transaction-impact'),"Impact of transactions",swi_man_manual('db.html'),manual,30647).
i(section(3,'4.14.2','sec:recdb'),"The recorded database",swi_man_manual('db.html'),manual,34627).
i(/(recorda,3),"Assert Term in the recorded database under key Key.",swi_man_manual('db.html'),manual,34807).
i(/(recorda,2),"Equivalent to recorda(Key, Term, _).",swi_man_manual('db.html'),manual,35472).
i(/(recordz,3),"Equivalent to recorda/3, but puts the Term at the tail of the terms recorded under Key.",swi_man_manual('db.html'),manual,35666).
i(/(recordz,2),"Equivalent to recordz(Key, Term, _).",swi_man_manual('db.html'),manual,35985).
i(/(recorded,3),"True if Value is recorded under Key and has the given database Reference.",swi_man_manual('db.html'),manual,36179).
i(/(recorded,2),"Equivalent to recorded(Key, Value, _).",swi_man_manual('db.html'),manual,37209).
i(/(erase,1),"Erase a record or clause from the database.",swi_man_manual('db.html'),manual,37408).
i(/(instance,2),"Unify Term with the referenced clause or database record.",swi_man_manual('db.html'),manual,38394).
i(section(3,'4.14.3','sec:flag'),"Flags",swi_man_manual('db.html'),manual,38675).
i(/(get_flag,2),"True when Value is the value currently associated with Key.",swi_man_manual('db.html'),manual,39316).
i(/(set_flag,2),"Set flag Key to Value.",swi_man_manual('db.html'),manual,39610).
i(/(flag,3),"True when Old is the current value of the flag Key and the flag has been set to New.",swi_man_manual('db.html'),manual,39837).
i(section(3,'4.14.4','sec:trie'),"Tries",swi_man_manual('db.html'),manual,40350).
i(/(trie_new,1),"Create a new trie and unify Trie with a handle to the trie.",swi_man_manual('db.html'),manual,41616).
i(/(trie_destroy,1),"Destroy Trie.",swi_man_manual('db.html'),manual,41888).
i(/(is_trie,1),"True when Trie is a trie object.",swi_man_manual('db.html'),manual,42220).
i(/(current_trie,1),"True if Trie is a currently existing trie.",swi_man_manual('db.html'),manual,42527).
i(/(trie_insert,2),"Insert the term Key into Trie.",swi_man_manual('db.html'),manual,42963).
i(/(trie_insert,3),"Insert the term Key into Trie and associate it with Value.",swi_man_manual('db.html'),manual,43404).
i(/(trie_update,3),"As trie_insert/3, but if Key is in Trie, its associated value is updated.",swi_man_manual('db.html'),manual,43901).
i(/(trie_insert,4),"As trie_insert/3, returning a handle to the trie node.",swi_man_manual('db.html'),manual,44227).
i(/(trie_delete,3),"Delete Key from Trie if the value associated with Key unifies with Value.",swi_man_manual('db.html'),manual,44705).
i(/(trie_lookup,3),"True if the term Key is in Trie and associated with Value.",swi_man_manual('db.html'),manual,44962).
i(/(trie_term,2),"True when Term is a copy of the term associated with Handle.",swi_man_manual('db.html'),manual,45193).
i(/(trie_gen,2),"True when Key is a member of Trie.",swi_man_manual('db.html'),manual,45626).
i(/(trie_gen,3),"True when Key is associated with Value in Trie.",swi_man_manual('db.html'),manual,45968).
i(/(trie_gen_compiled,2),"Similar to trie_gen/3, but uses a compiled representation of Trie.",swi_man_manual('db.html'),manual,46539).
i(/(trie_gen_compiled,3),"Similar to trie_gen/3, but uses a compiled representation of Trie.",swi_man_manual('db.html'),manual,46539).
i(/(trie_property,2),"True if Trie exists with Property.",swi_man_manual('db.html'),manual,47499).
i(section(3,'4.14.5','sec:update'),"Update view",swi_man_manual('db.html'),manual,50473).
i(section(3,'4.14.6','sec:hashterm'),"Indexing databases",swi_man_manual('db.html'),manual,52098).
i(/(term_hash,2),"If Term is a ground term (see ground/1), HashKey is unified with a positive integer value that may be used as a hash key to the value.",swi_man_manual('db.html'),manual,53697).
i(/(term_hash,4),"As term_hash/2, but only considers Term to the specified Depth.",swi_man_manual('db.html'),manual,55014).
i(/(variant_sha1,2),"Compute a SHA1-hash from Term.",swi_man_manual('db.html'),manual,55825).
i(/(variant_hash,2),"Similar to variant_sha1/2, but using a non-cryptographic hash and produces an integer result like term_hash/2.",swi_man_manual('db.html'),manual,57392).
i(section(2,'14.5','sec:debug-deployed-systems'),"Debugging and updating deployed systems",swi_man_manual('debug-deployed-systems.html'),manual,3545).
i(section(2,'4.40','sec:debug-determinism'),"Debugging and declaring determinism",swi_man_manual('debug-determinism.html'),manual,3539).
i(/(det,1),"Declare a number of predicates as det (deterministic).",swi_man_manual('debug-determinism.html'),manual,5380).
i(/($,0),"The $/0 constructs acts similar to the !/0, but in addition declares that the remainder of the clause body shall succeed deterministically.",swi_man_manual('debug-determinism.html'),manual,6725).
i(/($,1),"Verify that Goal succeeds deterministically.",swi_man_manual('debug-determinism.html'),manual,7428).
i(section(2,'A.14','sec:debug'),"library(debug): Print debug messages and test assertions",swi_man_manual('debug.html'),manual,3515).
i(/(debugging,1),"Examine debug topics.",swi_man_manual('debug.html'),manual,4673).
i(/(debugging,2),"Examine debug topics.",swi_man_manual('debug.html'),manual,4673).
i(/(debug,1),"Add/remove a topic from being printed.",swi_man_manual('debug.html'),manual,5519).
i(/(nodebug,1),"Add/remove a topic from being printed.",swi_man_manual('debug.html'),manual,5519).
i(/(list_debug_topics,0),"List currently known topics for debug/3 and their setting.",swi_man_manual('debug.html'),manual,7015).
i(/(list_debug_topics,1),"List currently known topics for debug/3 and their setting.",swi_man_manual('debug.html'),manual,7015).
i(/(debug_message_context,1),"Specify additional context for debug messages.",swi_man_manual('debug.html'),manual,8166).
i(/(debug,3),"Format a message if debug topic is enabled.",swi_man_manual('debug.html'),manual,8629).
i(:(prolog,/(debug_print_hook,3)),"Hook called by debug/3.",swi_man_manual('debug.html'),manual,9902).
i(/(assertion,1),"Acts similar to C assert() macro.",swi_man_manual('debug.html'),manual,10416).
i(:(prolog,/(assertion_failed,2)),"This hook is called if the Goal of assertion/1 fails.",swi_man_manual('debug.html'),manual,11264).
i(section(2,'4.39','sec:debugger'),"Debugging and Tracing Programs",swi_man_manual('debugger.html'),manual,3537).
i(/(trace,0),"Start the tracer.",swi_man_manual('debugger.html'),manual,4152).
i(/(tracing,0),"True if the tracer is currently switched on.",swi_man_manual('debugger.html'),manual,4558).
i(/(notrace,0),"Stop the tracer.",swi_man_manual('debugger.html'),manual,4830).
i(/(notrace,1),"Call Goal, but suspend the debugger while Goal is executing.",swi_man_manual('debugger.html'),manual,5073).
i(/(debug,0),"Start debugger.",swi_man_manual('debugger.html'),manual,5595).
i(/(nodebug,0),"Stop debugger.",swi_man_manual('debugger.html'),manual,6667).
i(/(debugging,0),"Print debug status and spy points on current output stream.",swi_man_manual('debugger.html'),manual,6962).
i(/(spy,1),"Put a spy point on all predicates meeting the predicate specification Pred.",swi_man_manual('debugger.html'),manual,7206).
i(/(nospy,1),"Remove spy point from all predicates meeting the predicate specification Pred.",swi_man_manual('debugger.html'),manual,7468).
i(/(nospyall,0),"Remove all spy points from the entire program.",swi_man_manual('debugger.html'),manual,7670).
i(/(leash,1),"Set/query leashing (ports which allow for user interaction).",swi_man_manual('debugger.html'),manual,7817).
i(/(visible,1),"Set the ports shown by the debugger.",swi_man_manual('debugger.html'),manual,8600).
i(/(unknown,2),"Edinburgh-Prolog compatibility predicate, interfacing to the ISO Prolog flag unknown.",swi_man_manual('debugger.html'),manual,8930).
i(/(style_check,1),"Modify/query style checking options.",swi_man_manual('debugger.html'),manual,9510).
i(section(2,'2.10','sec:debugoverview'),"Overview of the Debugger",swi_man_manual('debugoverview.html'),manual,3523).
i(section(3,'2.10.1','sec:byrd-box-model'),"The Byrd Box Model And Ports",swi_man_manual('debugoverview.html'),manual,4997).
i(section(3,'2.10.2','sec:trace-example'),"Trace Mode Example",swi_man_manual('debugoverview.html'),manual,7921).
i(section(3,'2.10.3','sec:trace-options'),"Trace Mode Options: leash/1 and visible/1",swi_man_manual('debugoverview.html'),manual,13566).
i(section(3,'2.10.4','sec:trace-commands'),"Trace Mode Commands When Paused",swi_man_manual('debugoverview.html'),manual,16536).
i(section(4,'2.10.4.1','sec:trace-control-flow-commands'),"Control Flow Commands",swi_man_manual('debugoverview.html'),manual,17099).
i(section(4,'2.10.4.2','sec:trace-information-commands'),"Informational Commands",swi_man_manual('debugoverview.html'),manual,21205).
i(section(4,'2.10.4.3','sec:trace-formatting-commands'),"Formatting Commands",swi_man_manual('debugoverview.html'),manual,22027).
i(section(3,'2.10.5','sec:trace-mode-vs-point'),"Trace Mode vs. Trace Point",swi_man_manual('debugoverview.html'),manual,23441).
i(section(3,'2.10.6','sec:spy-points-debug-mode'),"Spy Points and Debug Mode",swi_man_manual('debugoverview.html'),manual,26599).
i(section(3,'2.10.7','sec:trace-breakpoints'),"Breakpoints",swi_man_manual('debugoverview.html'),manual,31175).
i(section(3,'2.10.8','sec:trace-summary'),"Command Line Debugger Summary",swi_man_manual('debugoverview.html'),manual,35663).
i(section(4,'2.10.8.1','sec:trace-summary-trace-mode'),"Trace Mode",swi_man_manual('debugoverview.html'),manual,36058).
i(section(4,'2.10.8.2','sec:trace-summary-trace-points'),"Trace Points",swi_man_manual('debugoverview.html'),manual,37565).
i(section(2,'6.2','sec:defmodule'),"Defining a Module",swi_man_manual('defmodule.html'),manual,3518).
i(/(module,2),"This directive can only be used as the first term of a source file.",swi_man_manual('defmodule.html'),manual,5158).
i(/(module,3),"Same as module/2.",swi_man_manual('defmodule.html'),manual,6056).
i(section(2,'4.9','sec:delcont'),"Delimited continuations",swi_man_manual('delcont.html'),manual,3520).
i(/(reset,3),"Call Goal.",swi_man_manual('delcont.html'),manual,8219).
i(/(shift,1),"Abandon the execution of the current goal, returning control to just after the matching reset/3 call.",swi_man_manual('delcont.html'),manual,9903).
i(/(shift_for_copy,1),"Similar to shift/1.",swi_man_manual('delcont.html'),manual,10653).
i(section(2,'14.1','sec:deployment-options'),"Deployment options",swi_man_manual('deployment-options.html'),manual,3525).
i(section(2,'C.2','sec:dialect-notes'),"Notes on specific dialects",swi_man_manual('dialect-notes.html'),manual,3544).
i(section(3,'C.2.1','sec:dialect-xsb'),"Notes on specific dialects",swi_man_manual('dialect-notes.html'),manual,3983).
i(section(4,'C.2.1.1','sec:xsb-source'),"Loading XSB source files",swi_man_manual('dialect-notes.html'),manual,5677).
i(section(3,'C.2.2','sec:xsb-import'),"The XSB import directive",swi_man_manual('dialect-notes.html'),manual,8069).
i(section(1,'C','sec:dialect'),"Compatibility with other Prolog dialects",swi_man_manual('dialect.html'),manual,3539).
i(/(expects_dialect,1),"This directive states that the code following the directive is written for the given Prolog Dialect.",swi_man_manual('dialect.html'),manual,6814).
i(/(source_exports,2),"Is true if source Spec exports Export, a predicate indicator.",swi_man_manual('dialect.html'),manual,8359).
i(section(2,'A.15','sec:dicts'),"library(dicts): Dict utilities",swi_man_manual('dicts.html'),manual,3507).
i(/(dicts_same_tag,2),"True when List is a list of dicts that all have the tag Tag.",swi_man_manual('dicts.html'),manual,3925).
i(/(dict_size,2),"True when KeyCount is the number of keys in Dict.",swi_man_manual('dicts.html'),manual,4183).
i(/(dict_keys,2),"True when Keys is an ordered set of the keys appearing in Dict.",swi_man_manual('dicts.html'),manual,4421).
i(/(dicts_same_keys,2),"True if List is a list of dicts that all have the same keys and Keys is an ordered set of these keys.",swi_man_manual('dicts.html'),manual,4669).
i(/(dicts_to_same_keys,3),"DictsOut is a copy of DictsIn, where each dict contains all keys appearing in all dicts of DictsIn.",swi_man_manual('dicts.html'),manual,4972).
i(/(dict_fill,4),"Implementation for the dicts_to_same_keys/3 OnEmpty closure that fills new cells with a copy of ValueIn.",swi_man_manual('dicts.html'),manual,5584).
i(/(dicts_join,3),"Join dicts in Dicts that have the same value for Key, provided they do not have conflicting values on other keys.",swi_man_manual('dicts.html'),manual,6511).
i(/(dicts_join,4),"Join two lists of dicts (Dicts1 and Dicts2) on Key.",swi_man_manual('dicts.html'),manual,7139).
i(/(dicts_slice,3),"DictsOut is a list of Dicts only containing values for Keys.",swi_man_manual('dicts.html'),manual,8056).
i(/(dicts_to_compounds,4),"True when Dicts and Compounds are lists of the same length and each element of Compounds is a compound term whose arguments represent the values associated with the corresponding keys in Keys.",swi_man_manual('dicts.html'),manual,8319).
i(section(2,'6.13','sec:dynamic-modules'),"Dynamic Modules",swi_man_manual('dynamic-modules.html'),manual,3529).
i(section(2,'4.15','sec:declare'),"Declaring predicate properties",swi_man_manual('dynamic.html'),manual,3513).
i(/(dynamic,1),"Informs the interpreter that the definition of the predicate(s) may change during execution (using assert/1 and/or retract/1).",swi_man_manual('dynamic.html'),manual,7801).
i(/(dynamic,2),"As dynamic/1, but allows for setting additional properties.",swi_man_manual('dynamic.html'),manual,8731).
i(/(compile_predicates,1),"Compile a list of specified dynamic predicates (see dynamic/1 and assert/1) into normal static predicates.",swi_man_manual('dynamic.html'),manual,10811).
i(/(multifile,1),"Informs the system that the specified predicate(s) may be defined over more than one file.",swi_man_manual('dynamic.html'),manual,12056).
i(/(discontiguous,1),"Informs the system that the clauses of the specified predicate(s) might not be together in the source file.",swi_man_manual('dynamic.html'),manual,12486).
i(/(public,1),"Instructs the cross-referencer that the predicate can be called.",swi_man_manual('dynamic.html'),manual,12888).
i(/(non_terminal,1),"Sets the non_terminal property on the predicate.",swi_man_manual('dynamic.html'),manual,14259).
i(section(2,'4.4','sec:edit'),"Editor Interface",swi_man_manual('edit.html'),manual,3522).
i(/(edit,1),"First, exploit prolog_edit:locate/3 to translate Specification into a list of Locations.",swi_man_manual('edit.html'),manual,5302).
i(/(edit,0),"Edit the‘default' file using edit/1.",swi_man_manual('edit.html'),manual,6015).
i(section(3,'4.4.1','sec:customedit'),"Customizing the editor interface",swi_man_manual('edit.html'),manual,6799).
i(/('prolog_edit:locate',3),"Where Spec is the specification provided through edit/1.",swi_man_manual('edit.html'),manual,7277).
i(/('prolog_edit:locate',2),"Same as prolog_edit:locate/3, but only deals with fully specified objects.",swi_man_manual('edit.html'),manual,8255).
i(/('prolog_edit:edit_source',1),"Start editor on Location.",swi_man_manual('edit.html'),manual,8576).
i(/('prolog_edit:edit_command',2),"Determines how Editor is to be invoked using shell/1.",swi_man_manual('edit.html'),manual,10008).
i(/('prolog_edit:load',0),"Normally an undefined multifile predicate.",swi_man_manual('edit.html'),manual,11591).
i(section(2,'3.3','sec:editreload'),"The test-edit-reload cycle",swi_man_manual('editreload.html'),manual,3526).
i(section(3,'3.3.1','sec:editfind'),"Locating things to edit",swi_man_manual('editreload.html'),manual,4648).
i(section(3,'3.3.2','sec:editcompile'),"Editing and incremental compilation",swi_man_manual('editreload.html'),manual,5573).
i(section(2,'11.1','sec:engine-examples'),"Examples using engines",swi_man_manual('engine-examples.html'),manual,3533).
i(section(3,'11.1.1','sec:engine-aggregation'),"Aggregation using engines",swi_man_manual('engine-examples.html'),manual,4581).
i(section(3,'11.1.2','sec:engine-state'),"State accumulation using engines",swi_man_manual('engine-examples.html'),manual,9531).
i(section(3,'11.1.3','sec:engine-agents'),"Scalable many-agent applications",swi_man_manual('engine-examples.html'),manual,13480).
i(section(2,'11.3','sec:engine-predicates'),"Engine predicate reference",swi_man_manual('engine-predicates.html'),manual,3533).
i(/(engine_create,3),"Create a new engine and unify Engine with a handle to it.",swi_man_manual('engine-predicates.html'),manual,3923).
i(/(engine_create,4),"Create a new engine and unify Engine with a handle to it.",swi_man_manual('engine-predicates.html'),manual,3923).
i(/(engine_destroy,1),"Destroy Engine.",swi_man_manual('engine-predicates.html'),manual,5594).
i(/(engine_next,2),"Ask the engine Engine to produce a next answer.",swi_man_manual('engine-predicates.html'),manual,5787).
i(/(engine_next_reified,2),"Similar to engine_next/2, but instead of success, failure or or raising an exception, Term is unified with one of terms below.",swi_man_manual('engine-predicates.html'),manual,6529).
i(/(engine_post,2),"Make Term available to engine_fetch/1 inside the Engine.",swi_man_manual('engine-predicates.html'),manual,7432).
i(/(engine_post,3),"Combines engine_post/2 and engine_next/2.",swi_man_manual('engine-predicates.html'),manual,8071).
i(/(engine_yield,1),"Called from within the engine, causing engine_next/2 in the caller to return with Term.",swi_man_manual('engine-predicates.html'),manual,8484).
i(/(engine_fetch,1),"Called from within the engine to fetch the term made available through engine_post/2 or engine_post/3.",swi_man_manual('engine-predicates.html'),manual,9391).
i(/(engine_self,1),"Called from within the engine to get access to the handle to the engine itself.",swi_man_manual('engine-predicates.html'),manual,9914).
i(/(is_engine,1),"True if Term is a reference to or the alias name of an existing engine.",swi_man_manual('engine-predicates.html'),manual,10155).
i(/(current_engine,1),"True when Engine is an existing engine.",swi_man_manual('engine-predicates.html'),manual,10397).
i(section(2,'11.2','sec:engine-resources'),"Engine resource usage",swi_man_manual('engine-resources.html'),manual,3551).
i(section(1,'11','sec:engines'),"Coroutining using Prolog engines",swi_man_manual('engines.html'),manual,3517).
i(section(2,'A.16','sec:error'),"library(error): Error generating support",swi_man_manual('error.html'),manual,3509).
i(/(type_error,2),"Tell the user that Culprit is not of the expected ValidType.",swi_man_manual('error.html'),manual,4549).
i(/(domain_error,2),"The argument is of the proper type, but has a value that is outside the supported values.",swi_man_manual('error.html'),manual,5530).
i(/(existence_error,2),"Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it.",swi_man_manual('error.html'),manual,5918).
i(/(existence_error,3),"Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it in the provided set.",swi_man_manual('error.html'),manual,6232).
i(/(permission_error,3),"It is not allowed to perform Operation on (whatever is represented by) Culprit that is of the given PermissionType (in fact, the ISO Standard is confusing and vague about these terms' meaning).",swi_man_manual('error.html'),manual,6812).
i(/(instantiation_error,1),"An argument is under-instantiated.",swi_man_manual('error.html'),manual,7208).
i(/(uninstantiation_error,1),"An argument is over-instantiated.",swi_man_manual('error.html'),manual,7830).
i(/(representation_error,1),"A representation error indicates a limitation of the implementation.",swi_man_manual('error.html'),manual,8270).
i(/(syntax_error,1),"A text has invalid syntax.",swi_man_manual('error.html'),manual,8714).
i(/(resource_error,1),"A goal cannot be completed due to lack of resources.",swi_man_manual('error.html'),manual,9313).
i(/(must_be,2),"True if Term satisfies the type constraints for Type.",swi_man_manual('error.html'),manual,9596).
i(/(is_of_type,2),"True if Term satisfies Type.",swi_man_manual('error.html'),manual,13327).
i(/(has_type,2),"True if Term satisfies Type.",swi_man_manual('error.html'),manual,13546).
i(/(current_encoding,1),"True if Name is the name of a supported encoding.",swi_man_manual('error.html'),manual,13773).
i(/(current_type,3),"True when Type is a currently defined type and Var satisfies Type of the body term Body succeeds.",swi_man_manual('error.html'),manual,14085).
i(section(2,'4.16','sec:examineprog'),"Examining the program",swi_man_manual('examineprog.html'),manual,3505).
i(/(current_atom,1),"Successively unifies Atom with all atoms known to the system.",swi_man_manual('examineprog.html'),manual,3693).
i(/(current_blob,2),"Examine the type or enumerate blobs of the given Type.",swi_man_manual('examineprog.html'),manual,4074).
i(/(current_functor,2),"True when Name/Arity is a known functor.",swi_man_manual('examineprog.html'),manual,4514).
i(/(current_flag,1),"Successively unifies FlagKey with all keys used for flags (see flag/3).",swi_man_manual('examineprog.html'),manual,5505).
i(/(current_key,1),"Successively unifies Key with all keys used for records (see recorda/3, etc.).",swi_man_manual('examineprog.html'),manual,5786).
i(/(current_predicate,1),"True if PredicateIndicator is a currently defined predicate.",swi_man_manual('examineprog.html'),manual,6074).
i(/(current_predicate,2),"Classical pre-ISO implementation of current_predicate/1, where the predicate is represented by the head term.",swi_man_manual('examineprog.html'),manual,7967).
i(/(predicate_property,2),"True when Head refers to a predicate that has property Property.",swi_man_manual('examineprog.html'),manual,9049).
i(/(dwim_predicate,2),"‘Do What I Mean' (`dwim') support predicate.",swi_man_manual('examineprog.html'),manual,25864).
i(/(clause,2),"True if Head can be unified with a clause head and Body with the corresponding clause body.",swi_man_manual('examineprog.html'),manual,26724).
i(/(clause,3),"Equivalent to clause/2, but unifies Reference with a unique reference to the clause (see also assert/2, erase/1).",swi_man_manual('examineprog.html'),manual,27976).
i(/(nth_clause,3),"Provides access to the clauses of a predicate using their index number.",swi_man_manual('examineprog.html'),manual,28604).
i(/(clause_property,2),"Queries properties of a clause.",swi_man_manual('examineprog.html'),manual,29722).
i(section(2,'B.6','sec:excepthook'),"Adding context to errors: prolog_exception_hook",swi_man_manual('excepthook.html'),manual,3526).
i(:(prolog,/(prolog_exception_hook,5)),"+ExceptionIn, -ExceptionOut, +Frame, +CatcherFrame, +DebugMode This hook predicate, if defined in the module prolog, is between raising an exception and handling it.",swi_man_manual('excepthook.html'),manual,4130).
i(section(2,'4.10','sec:exception'),"Exception handling",swi_man_manual('exception.html'),manual,3517).
i(/(catch,3),"Behaves as call/1 if no exception is raised when executing Goal.",swi_man_manual('exception.html'),manual,3951).
i(/(throw,1),"Raise an exception.",swi_man_manual('exception.html'),manual,5545).
i(/(catch_with_backtrace,3),"As catch/3, but if library library(prolog_stack) is loaded and an exception of the shape error(Format, Context) is raised Context is extended with a backtrace.",swi_man_manual('exception.html'),manual,8353).
i(section(3,'4.10.1','sec:urgentexceptions'),"Urgency of exceptions",swi_man_manual('exception.html'),manual,9282).
i(section(3,'4.10.2','sec:debugexceptions'),"Debugging and exceptions",swi_man_manual('exception.html'),manual,13035).
i(section(3,'4.10.3','sec:exceptterm'),"The exception term",swi_man_manual('exception.html'),manual,15878).
i(section(4,'4.10.3.1','sec:generalformofexceptionterm'),"General form of the ISO standard exception term",swi_man_manual('exception.html'),manual,16049).
i(section(4,'4.10.3.2','sec:throwsfromuserpreds'),"Throwing exceptions from applications and libraries",swi_man_manual('exception.html'),manual,19141).
i(section(2,'B.7','sec:exception3'),"Hooks using the exception predicate",swi_man_manual('exception3.html'),manual,3530).
i(/(exception,3),"Dynamic predicate, normally not defined.",swi_man_manual('exception3.html'),manual,4584).
i(section(2,'5.5','sec:ext-integration'),"Integration of strings and dicts in the libraries",swi_man_manual('ext-integration.html'),manual,3506).
i(section(3,'5.5.1','sec:ext-dict-options'),"Dicts and option processing",swi_man_manual('ext-integration.html'),manual,4413).
i(section(3,'5.5.2','sec:ext-dict-in-core-data'),"Dicts in core data structures",swi_man_manual('ext-integration.html'),manual,4749).
i(section(3,'5.5.3','sec:ext-xml'),"Dicts, strings and XML",swi_man_manual('ext-integration.html'),manual,5304).
i(section(3,'5.5.4','sec:ext-json'),"Dicts, strings and JSON",swi_man_manual('ext-integration.html'),manual,5984).
i(section(3,'5.5.5','sec:ext-http'),"Dicts, strings and HTTP",swi_man_manual('ext-integration.html'),manual,6800).
i(section(2,'5.7','sec:ext-issues'),"Remaining issues",swi_man_manual('ext-issues.html'),manual,3506).
i(section(2,'5.1','sec:ext-lists'),"Lists are special",swi_man_manual('ext-lists.html'),manual,3518).
i(section(3,'5.1.1','sec:ext-list-motivation'),"Motivating‘[|]’and [] for lists",swi_man_manual('ext-lists.html'),manual,6281).
i(section(2,'5.3','sec:ext-syntax'),"Syntax changes since SWI-Prolog\xA0\7",swi_man_manual('ext-syntax.html'),manual,3512).
i(section(3,'5.3.1','sec:ext-syntax-op'),"Operators and quoted atoms",swi_man_manual('ext-syntax.html'),manual,3697).
i(section(3,'5.3.2','sec:ext-compound-zero'),"Compound terms with zero arguments",swi_man_manual('ext-syntax.html'),manual,5237).
i(section(3,'5.3.3','sec:ext-blockop'),"Block operators",swi_man_manual('ext-syntax.html'),manual,7914).
i(section(1,'5','sec:extensions'),"SWI-Prolog extensions",swi_man_manual('extensions.html'),manual,3509).
i(section(2,'A.17','sec:fastrw'),"library(fastrw): Fast reading and writing of terms",swi_man_manual('fastrw.html'),manual,3509).
i(/(fast_read,1),"The next term is read from current standard input and is unified with Term.",swi_man_manual('fastrw.html'),manual,5762).
i(/(fast_write,1),"Output Term in a way that fast_read/1 and fast_read/2 will be able to read it back.",swi_man_manual('fastrw.html'),manual,6149).
i(/(fast_write_to_string,3),"Perform a fast-write to the difference-slist String\\Tail.",swi_man_manual('fastrw.html'),manual,6465).
i(section(2,'4.36','sec:files'),"File System Interaction",swi_man_manual('files.html'),manual,3515).
i(/(access_file,2),"True if File exists and can be accessed by this Prolog process under mode Mode.",swi_man_manual('files.html'),manual,7021).
i(/(exists_file,1),"True if File exists and is a regular file.",swi_man_manual('files.html'),manual,8979).
i(/(file_directory_name,2),"Extracts the directory part of File.",swi_man_manual('files.html'),manual,9577).
i(/(file_base_name,2),"Extracts the file name part from name that may include directories.",swi_man_manual('files.html'),manual,11400).
i(/(same_file,2),"True if both filenames refer to the same physical file.",swi_man_manual('files.html'),manual,12310).
i(/(exists_directory,1),"True if Directory exists and is a directory.",swi_man_manual('files.html'),manual,13300).
i(/(delete_file,1),"Remove File from the file system.",swi_man_manual('files.html'),manual,13701).
i(/(rename_file,2),"Rename File1 as File2.",swi_man_manual('files.html'),manual,14600).
i(/(size_file,2),"Unify Size with the size of File in bytes.",swi_man_manual('files.html'),manual,15822).
i(/(time_file,2),"Unify the last modification time of File with Time.",swi_man_manual('files.html'),manual,16014).
i(/(absolute_file_name,2),"Expand a local filename into an absolute path.",swi_man_manual('files.html'),manual,16504).
i(/(absolute_file_name,3),"Convert the given file specification into an absolute path.",swi_man_manual('files.html'),manual,18874).
i(/(is_absolute_file_name,1),"True if File specifies an absolute path name.",swi_man_manual('files.html'),manual,24361).
i(/(file_name_extension,3),"This predicate is used to add, remove or test filename extensions.",swi_man_manual('files.html'),manual,25124).
i(/(directory_files,2),"Unify Entries with a list of entries in Directory.",swi_man_manual('files.html'),manual,25733).
i(/(expand_file_name,2),"Unify List with a sorted list of files or directories matching WildCard.",swi_man_manual('files.html'),manual,26562).
i(/(prolog_to_os_filename,2),"Convert between the internal Prolog path name conventions and the operating system path name conventions.",swi_man_manual('files.html'),manual,28308).
i(/(read_link,3),"If File points to a symbolic link, unify Link with the value of the link and Target to the file the link is pointing to.",swi_man_manual('files.html'),manual,28844).
i(/(tmp_file,2),"Create a name for a temporary file.",swi_man_manual('files.html'),manual,29347).
i(/(tmp_file_stream,3),"Create a temporary filename FileName, open it for writing and unify Stream with the output stream.",swi_man_manual('files.html'),manual,30283).
i(/(make_directory,1),"Create a new directory (folder) on the filesystem.",swi_man_manual('files.html'),manual,32640).
i(/(delete_directory,1),"Delete directory (folder) from the filesystem.",swi_man_manual('files.html'),manual,32975).
i(/(working_directory,2),"Unify Old with an absolute path to the current working directory and change working directory to New.",swi_man_manual('files.html'),manual,33279).
i(/(chdir,1),"Compatibility predicate.",swi_man_manual('files.html'),manual,34517).
i(section(2,'14.7','sec:findappfile'),"Finding Application files",swi_man_manual('findappfile.html'),manual,3521).
i(section(2,'12.6','sec:findhome'),"The Prolog‘home' directory",swi_man_manual('findhome.html'),manual,3515).
i(section(2,'2.12','sec:flags'),"Environment Control (Prolog flags)",swi_man_manual('flags.html'),manual,3519).
i(/(current_prolog_flag,2),"The predicate current_prolog_flag/2 defines an interface to installation features: options compiled in, version, home, etc.",swi_man_manual('flags.html'),manual,4323).
i(/(set_prolog_flag,2),"Define a new Prolog flag or change its value.",swi_man_manual('flags.html'),manual,97839).
i(/(create_prolog_flag,3),"Create a new Prolog flag.",swi_man_manual('flags.html'),manual,99470).
i(section(2,'4.31','sec:forall2'),"Forall",swi_man_manual('forall2.html'),manual,3523).
i(/(forall,2),"For all alternative bindings of Cond, Action can be proven.",swi_man_manual('forall2.html'),manual,3687).
i(section(2,'12.9','sec:foreign-streams'),"Foreign access to Prolog IO streams",swi_man_manual('foreign-streams.html'),manual,3519).
i(section(3,'12.9.1','sec:foreign-get-iostream'),"Get IO stream handles",swi_man_manual('foreign-streams.html'),manual,5328).
i(c('PL_get_stream'),"Get a stream handle from the Prolog term t.",swi_man_manual('foreign-streams.html'),manual,6054).
i(c('PL_get_stream_from_blob'),"Same as PL_get_stream(), but operates directly on the blob b.",swi_man_manual('foreign-streams.html'),manual,7322).
i(c('PL_acquire_stream'),"Obtain ownership of s and return s.",swi_man_manual('foreign-streams.html'),manual,7841).
i(c('PL_release_stream'),"Give up ownership acquired using PL_acquire_stream() or PL_get_stream().",swi_man_manual('foreign-streams.html'),manual,8484).
i(section(3,'12.9.2','sec:foreign-create-iostream'),"Creating an IO stream",swi_man_manual('foreign-streams.html'),manual,9636).
i(c('Snew'),"Create an IOSTREAM* from a handle, flags and a block of callback functions.",swi_man_manual('foreign-streams.html'),manual,15561).
i(c('Sopen_pipe'),"Start a process from command and connect the input or output to the returned stream.",swi_man_manual('foreign-streams.html'),manual,18307).
i(c('Sopenmem'),"Open a memory area as a stream.",swi_man_manual('foreign-streams.html'),manual,18844).
i(c('Sfree'),"This function must be used to free objects that are allocated by the stream interface.",swi_man_manual('foreign-streams.html'),manual,20194).
i(c('PL_unify_stream'),"Unify t with a blob that points at s.",swi_man_manual('foreign-streams.html'),manual,20703).
i(section(3,'12.9.3','sec:iostream-functions'),"Interacting with foreign streams",swi_man_manual('foreign-streams.html'),manual,21316).
i(c('Sset_timeout'),"Set the timeout on an input stream to milliseconds.",swi_man_manual('foreign-streams.html'),manual,21533).
i(c('Sunit_size'),"Returns the size of a code unit in bytes depending on the stream's encoding.",swi_man_manual('foreign-streams.html'),manual,21952).
i(c('Sputc'),"Emit a byte to s.",swi_man_manual('foreign-streams.html'),manual,22405).
i(c('Sgetc'),"Read a byte from s.",swi_man_manual('foreign-streams.html'),manual,22780).
i(c('Sfgetc'),"Function equivalent to Sgetc().",swi_man_manual('foreign-streams.html'),manual,23338).
i(c('Sungetc'),"Put a byte back into the input buffer.",swi_man_manual('foreign-streams.html'),manual,23561).
i(c('Sputcode'),"Emit a Unicode code point to s.",swi_man_manual('foreign-streams.html'),manual,23958).
i(c('Sgetcode'),"Read a Unicode code point from s.",swi_man_manual('foreign-streams.html'),manual,25006).
i(c('Speekcode'),"As Sgetcode(), but leaves the character in the input buffer and does not update the stream position.",swi_man_manual('foreign-streams.html'),manual,25532).
i(c('Sputw'),"Reads/writes an integer in native byte order.",swi_man_manual('foreign-streams.html'),manual,25901).
i(c('Sgetw'),"Reads/writes an integer in native byte order.",swi_man_manual('foreign-streams.html'),manual,25901).
i(c('Sfread'),"Emulations of the POSIX fread() and fwrite() calls for Prolog streams.",swi_man_manual('foreign-streams.html'),manual,26206).
i(c('Sfwrite'),"Emulations of the POSIX fread() and fwrite() calls for Prolog streams.",swi_man_manual('foreign-streams.html'),manual,26206).
i(c('Sfeof'),"Returns non-zero if the stream is at the end.",swi_man_manual('foreign-streams.html'),manual,26990).
i(c('Sfpasteof'),"Returns non-zero when a read operation was performed after signalling end-of-file.",swi_man_manual('foreign-streams.html'),manual,27378).
i(c('Ssetlocale'),"Change the locale associated with a stream.",swi_man_manual('foreign-streams.html'),manual,27825).
i(c('Sflush'),"Flush buffered output, returning 0 on success and -1 after a (write) error occurred.",swi_man_manual('foreign-streams.html'),manual,28225).
i(c('Ssize'),"Returns the size in bytes of the object associated to the stream or -1 if this is not known.",swi_man_manual('foreign-streams.html'),manual,28568).
i(c('Sseek'),"Reposition the file pointer in the object associated to s, returning 0 on success and -1 otherwise.",swi_man_manual('foreign-streams.html'),manual,28799).
i(c('Sseek64'),"Reposition the file pointer in the object associated to s, returning 0 on success and -1 otherwise.",swi_man_manual('foreign-streams.html'),manual,28799).
i(c('Stell'),"Return the current position in the stream.",swi_man_manual('foreign-streams.html'),manual,29651).
i(c('Stell64'),"Return the current position in the stream.",swi_man_manual('foreign-streams.html'),manual,29651).
i(c('Sclose'),"Close the stream.",swi_man_manual('foreign-streams.html'),manual,30075).
i(c('Sgcclose'),"As Sclose(), but intended to be used from the atom garbage collector if a stream is closed because it is garbage.",swi_man_manual('foreign-streams.html'),manual,30861).
i(c('Sfgets'),"Read a line of input as a sequence of bytes.",swi_man_manual('foreign-streams.html'),manual,32090).
i(c('Sgets'),"Shorthand for Sfgets(buf, Slinesize, Sinput).",swi_man_manual('foreign-streams.html'),manual,32625).
i(c('Sread_pending'),"Return the data buffered on an input stream.",swi_man_manual('foreign-streams.html'),manual,33025).
i(c('Spending'),"Return the number of bytes that can be read from s without blocking.",swi_man_manual('foreign-streams.html'),manual,33706).
i(c('Sfputs'),"Emit a 0-terminated C string.",swi_man_manual('foreign-streams.html'),manual,34104).
i(c('Sputs'),"Equivalent to Sfputs(q, Soutput).",swi_man_manual('foreign-streams.html'),manual,34398).
i(c('Sfprintf'),"Similar to POSIX fprintf().",swi_man_manual('foreign-streams.html'),manual,34638).
i(c('SfprintfX'),"Same as Sfprintf() but doesn't have the format-checking attribute.",swi_man_manual('foreign-streams.html'),manual,37145).
i(c('Sprintf'),"Similar to Sfprintf(), printing to Soutput",swi_man_manual('foreign-streams.html'),manual,37555).
i(c('Svprintf'),"Variadic argument list version of Sfprintf().",swi_man_manual('foreign-streams.html'),manual,37814).
i(c('Ssprintf'),"Print to a C string.",swi_man_manual('foreign-streams.html'),manual,38088).
i(c('Ssnprintf'),"Print to a C string, emitting a maximum of size bytes while ensuring buf is 0-terminated.",swi_man_manual('foreign-streams.html'),manual,38365).
i(c('SsnprintfX'),"Same as Ssnprintf() but doesn't have the format-checking attribute.",swi_man_manual('foreign-streams.html'),manual,39004).
i(c('Svsprintf'),"Variadic argument list version of Ssprintf().",swi_man_manual('foreign-streams.html'),manual,39429).
i(c('Svsnprintf'),"Variadic argument list version of Ssnprintf().",swi_man_manual('foreign-streams.html'),manual,39804).
i(c('Sdprintf'),"Print to Serror.",swi_man_manual('foreign-streams.html'),manual,40095).
i(c('SdprintfX'),"Same as Sdprintf() but doesn't have the format-checking attribute.",swi_man_manual('foreign-streams.html'),manual,40345).
i(c('Svdprintf'),"Variadic argument list version of Sdprintf().",swi_man_manual('foreign-streams.html'),manual,40743).
i(c('Slock'),"Low level versions that perform only the (un)locking part of PL_acquire_stream() and PL_release_stream().",swi_man_manual('foreign-streams.html'),manual,41006).
i(c('StryLock'),"Low level versions that perform only the (un)locking part of PL_acquire_stream() and PL_release_stream().",swi_man_manual('foreign-streams.html'),manual,41006).
i(c('Sunlock'),"Low level versions that perform only the (un)locking part of PL_acquire_stream() and PL_release_stream().",swi_man_manual('foreign-streams.html'),manual,41006).
i(c('Sfileno'),"If the stream is associated to a POSIX file handle, return this handle.",swi_man_manual('foreign-streams.html'),manual,41606).
i(c('Swinsock'),"Windows only.",swi_man_manual('foreign-streams.html'),manual,41838).
i(c('Sclosehook'),"Register a hook function to be called by Sclose() just before the stream is deallocated.",swi_man_manual('foreign-streams.html'),manual,42117).
i(c('Sset_filter'),"Register filter as a stream that reads from or writes to the stream parent.",swi_man_manual('foreign-streams.html'),manual,42568).
i(c('Ssetbuffer'),"Set the input or output buffer for s to size.",swi_man_manual('foreign-streams.html'),manual,42835).
i(section(4,'12.9.3.1','sec:iostream-write-term'),"Writing Prolog terms to foreign streams",swi_man_manual('foreign-streams.html'),manual,43317).
i(c('PL_write_term'),"Write term to s.",swi_man_manual('foreign-streams.html'),manual,43547).
i(section(3,'12.9.4','sec:iostream-errors'),"Foreign stream error handling",swi_man_manual('foreign-streams.html'),manual,46317).
i(c('Sferror'),"Returns TRUE if the stream is in an error condition, FALSE if the stream is valid and in normal condition and -1 if the stream is invalid.",swi_man_manual('foreign-streams.html'),manual,46525).
i(c('Sclearerr'),"Clear the error state of a stream.",swi_man_manual('foreign-streams.html'),manual,46828).
i(c('Sseterr'),"Set an error or warning state on the stream.",swi_man_manual('foreign-streams.html'),manual,47084).
i(c('Sset_exception'),"Associate a Prolog exception term with the stream or clear the associated exception if ex is 0 and set/clear the SIO_FERR condition on the stream.",swi_man_manual('foreign-streams.html'),manual,47579).
i(section(3,'12.9.5','sec:iostream-encoding'),"Foreign stream encoding",swi_man_manual('foreign-streams.html'),manual,48066).
i(c('Ssetenc'),"Set the encoding for s to new_enc and, if old_enc is not NULL, return the old encoding.",swi_man_manual('foreign-streams.html'),manual,49676).
i(c('ScheckBOM'),"This function may be called on a buffered input stream immediately after opening the stream.",swi_man_manual('foreign-streams.html'),manual,50269).
i(c('SwriteBOM'),"This function writes a Byte Order Mark (BOM) to s and should be called immediately after opening a stream for writing.",swi_man_manual('foreign-streams.html'),manual,50776).
i(c('Scanrepresent'),"Returns 0 if the encoding of s can represent the code point c and -1 otherwise.",swi_man_manual('foreign-streams.html'),manual,51333).
i(section(3,'12.9.6','sec:iostream-newline'),"Foreign stream line endings",swi_man_manual('foreign-streams.html'),manual,51602).
i(section(3,'12.9.7','sec:iostream-position'),"Foreign stream position information",swi_man_manual('foreign-streams.html'),manual,52912).
i(section(3,'12.9.8','sec:iostream-blob-functions'),"Support functions for blob save/load",swi_man_manual('foreign-streams.html'),manual,54465).
i(c('PL_qlf_put_int64'),"Write integers of several sizes.",swi_man_manual('foreign-streams.html'),manual,55738).
i(c('PL_qlf_put_int32'),"Write integers of several sizes.",swi_man_manual('foreign-streams.html'),manual,55738).
i(c('PL_qlf_put_uint32'),"Write integers of several sizes.",swi_man_manual('foreign-streams.html'),manual,55738).
i(c('PL_qlf_put_double'),"Write double as 8 byte big endian.",swi_man_manual('foreign-streams.html'),manual,56394).
i(c('PL_qlf_put_atom'),"Write an atom.",swi_man_manual('foreign-streams.html'),manual,56596).
i(c('PL_qlf_get_int64'),"Counterparts of corresponding PL_qlf_put_*() functions.",swi_man_manual('foreign-streams.html'),manual,56943).
i(c('PL_qlf_get_int32'),"Counterparts of corresponding PL_qlf_put_*() functions.",swi_man_manual('foreign-streams.html'),manual,56943).
i(c('PL_qlf_get_uint32'),"Counterparts of corresponding PL_qlf_put_*() functions.",swi_man_manual('foreign-streams.html'),manual,56943).
i(c('PL_qlf_get_double'),"Counterparts of corresponding PL_qlf_put_*() functions.",swi_man_manual('foreign-streams.html'),manual,56943).
i(c('PL_qlf_get_atom'),"Counterpart of PL_qlf_put_atom().",swi_man_manual('foreign-streams.html'),manual,57597).
i(section(1,'12','sec:foreign'),"Foreign Language Interface",swi_man_manual('foreign.html'),manual,3537).
i(section(2,'12.4','sec:foreigninclude'),"The Foreign Include File",swi_man_manual('foreigninclude.html'),manual,3519).
i(section(3,'12.4.1','sec:foreign-control'),"Argument Passing and Control",swi_man_manual('foreigninclude.html'),manual,3700).
i(c('PL_succeed'),"Succeed deterministically.",swi_man_manual('foreigninclude.html'),manual,4768).
i(c('PL_fail'),"Fail and start Prolog backtracking.",swi_man_manual('foreigninclude.html'),manual,5006).
i(section(4,'12.4.1.1','sec:foreignnondet'),"Non-deterministic Foreign Predicates",swi_man_manual('foreigninclude.html'),manual,5255).
i(c('PL_retry'),"The foreign function succeeds while leaving a choice point.",swi_man_manual('foreigninclude.html'),manual,7858).
i(c('PL_retry_address'),"As PL_retry(), but ensures an address as returned by malloc() is correctly recovered by PL_foreign_context_address().",swi_man_manual('foreigninclude.html'),manual,8736).
i(c('PL_foreign_control'),"Extracts the type of call from the control argument.",swi_man_manual('foreigninclude.html'),manual,9358).
i(c('PL_foreign_context'),"Extracts the context from the context argument.",swi_man_manual('foreigninclude.html'),manual,9766).
i(c('PL_foreign_context_address'),"Extracts an address as passed in by PL_retry_address().",swi_man_manual('foreigninclude.html'),manual,10267).
i(c('PL_foreign_context_predicate'),"Fetch the Prolog predicate that is executing this function.",swi_man_manual('foreigninclude.html'),manual,10564).
i(section(4,'12.4.1.2','sec:foreign-yield'),"Yielding from foreign predicates",swi_man_manual('foreigninclude.html'),manual,12817).
i(c('PL_yield_address'),"Cause PL_next_solution() of the active query to return with PL_S_YIELD.",swi_man_manual('foreigninclude.html'),manual,21211).
i(c('PL_can_yield'),"Returns TRUE when called from inside a foreign predicate if the query that (indirectly) calls this foreign predicate can yield using PL_yield_address().",swi_man_manual('foreigninclude.html'),manual,22273).
i(section(3,'12.4.2','sec:foreign-atoms'),"Atoms and functors",swi_man_manual('foreigninclude.html'),manual,24086).
i(c('PL_new_atom'),"Return an atom handle for the given C-string.",swi_man_manual('foreigninclude.html'),manual,24360).
i(c('PL_new_atom_mbchars'),"This function generalizes PL_new_atom() and PL_new_atom_nchars() while allowing for multiple encodings.",swi_man_manual('foreigninclude.html'),manual,26456).
i(c('PL_atom_mbchars'),"This function generalizes fetching the text associated with an atom.",swi_man_manual('foreigninclude.html'),manual,27295).
i(c('PL_atom_chars'),"Deprecated.",swi_man_manual('foreigninclude.html'),manual,28186).
i(c('PL_new_functor'),"Returns a functor identifier, a handle for the name/arity pair.",swi_man_manual('foreigninclude.html'),manual,29398).
i(c('PL_functor_name'),"Return an atom representing the name of the given functor.",swi_man_manual('foreigninclude.html'),manual,29935).
i(c('PL_functor_arity'),"Return the arity of the given functor.",swi_man_manual('foreigninclude.html'),manual,30151).
i(section(4,'12.4.2.1','sec:atomgc'),"Atoms and atom garbage collection",swi_man_manual('foreigninclude.html'),manual,30359).
i(c('PL_register_atom'),"Increment the reference count of the atom by one.",swi_man_manual('foreigninclude.html'),manual,31092).
i(c('PL_unregister_atom'),"Decrement the reference count of the atom.",swi_man_manual('foreigninclude.html'),manual,31606).
i(section(3,'12.4.3','sec:foreign-term-analysis'),"Analysing Terms via the Foreign Interface",swi_man_manual('foreigninclude.html'),manual,32311).
i(section(4,'12.4.3.1','sec:foreign-term-type'),"Testing the type of a term",swi_man_manual('foreigninclude.html'),manual,33343).
i(c('PL_term_type'),"Obtain the type of a term, which should be a term returned by one of the other interface predicates or passed as an argument.",swi_man_manual('foreigninclude.html'),manual,33556).
i(c('PL_is_variable'),"Returns non-zero if term is a variable.",swi_man_manual('foreigninclude.html'),manual,36318).
i(c('PL_is_ground'),"Returns non-zero if term is a ground term.",swi_man_manual('foreigninclude.html'),manual,36514).
i(c('PL_is_atom'),"Returns non-zero if term is an atom.",swi_man_manual('foreigninclude.html'),manual,36837).
i(c('PL_is_string'),"Returns non-zero if term is a string.",swi_man_manual('foreigninclude.html'),manual,37022).
i(c('PL_is_integer'),"Returns non-zero if term is an integer.",swi_man_manual('foreigninclude.html'),manual,37212).
i(c('PL_is_rational'),"Returns non-zero if term is a rational number (P/Q).",swi_man_manual('foreigninclude.html'),manual,37406).
i(c('PL_is_float'),"Returns non-zero if term is a float.",swi_man_manual('foreigninclude.html'),manual,37981).
i(c('PL_is_callable'),"Returns non-zero if term is a callable term.",swi_man_manual('foreigninclude.html'),manual,38315).
i(c('PL_is_compound'),"Returns non-zero if term is a compound term.",swi_man_manual('foreigninclude.html'),manual,38628).
i(c('PL_is_functor'),"Returns non-zero if term is compound and its functor is functor.",swi_man_manual('foreigninclude.html'),manual,38829).
i(c('PL_is_list'),"Returns non-zero if term is a compound term using the list constructor or the list terminator.",swi_man_manual('foreigninclude.html'),manual,39247).
i(c('PL_is_pair'),"Returns non-zero if term is a compound term using the list constructor.",swi_man_manual('foreigninclude.html'),manual,39656).
i(c('PL_is_dict'),"Returns non-zero if term is a dict.",swi_man_manual('foreigninclude.html'),manual,40042).
i(c('PL_is_atomic'),"Returns non-zero if term is atomic (not a variable or compound).",swi_man_manual('foreigninclude.html'),manual,40399).
i(c('PL_is_number'),"Returns non-zero if term is an rational (including integers) or float.",swi_man_manual('foreigninclude.html'),manual,40617).
i(c('PL_is_acyclic'),"Returns non-zero if term is acyclic (i.e.",swi_man_manual('foreigninclude.html'),manual,40841).
i(section(4,'12.4.3.2','sec:foreign-extract-from-term'),"Reading data from a term",swi_man_manual('foreigninclude.html'),manual,41064).
i(c('PL_get_atom'),"If t is an atom, store the unique atom identifier over a.",swi_man_manual('foreigninclude.html'),manual,42100).
i(c('PL_get_atom_chars'),"If t is an atom, store a pointer to a 0-terminated C-string in s.",swi_man_manual('foreigninclude.html'),manual,42871).
i(c('PL_get_string_chars'),"If t is a string object, store a pointer to a 0-terminated C-string in s and the length of the string in len.",swi_man_manual('foreigninclude.html'),manual,43337).
i(c('PL_get_chars'),"Convert the argument term t to a 0-terminated C-string.",swi_man_manual('foreigninclude.html'),manual,43868).
i(c('PL_get_list_chars'),"Same as PL_get_chars(l, s, CVT_LIST|flags), provided flags contains none of the CVT_* flags.",swi_man_manual('foreigninclude.html'),manual,48966).
i(c('PL_get_integer'),"If t is a Prolog integer, assign its value over i.",swi_man_manual('foreigninclude.html'),manual,49374).
i(c('PL_get_long'),"If t is a Prolog integer that can be represented as a long, assign its value over i.",swi_man_manual('foreigninclude.html'),manual,49939).
i(c('PL_get_int64'),"If t is a Prolog integer or float that can be represented as a int64_t, assign its value over i.",swi_man_manual('foreigninclude.html'),manual,50597).
i(c('PL_get_uint64'),"If t is a Prolog integer that can be represented as a uint64_t, assign its value over i.",swi_man_manual('foreigninclude.html'),manual,50980).
i(c('PL_get_intptr'),"Get an integer that is at least as wide as a pointer.",swi_man_manual('foreigninclude.html'),manual,51466).
i(c('PL_get_bool'),"If t has the value true, false, set val to the C constant TRUE or FALSE and return success, otherwise return failure.",swi_man_manual('foreigninclude.html'),manual,51965).
i(c('PL_get_pointer'),"Together with PL_put_pointer() and PL_unify_pointer(), these functions allow representing a C pointer as a Prolog integer.",swi_man_manual('foreigninclude.html'),manual,52405).
i(c('PL_get_float'),"If t is a float, integer or rational number, its value is assigned over f.",swi_man_manual('foreigninclude.html'),manual,53265).
i(c('PL_get_functor'),"If t is compound or an atom, the Prolog representation of the name-arity pair will be assigned over f.",swi_man_manual('foreigninclude.html'),manual,53646).
i(c('PL_get_name_arity'),"If t is compound or an atom, the functor name will be assigned over name and the arity over arity (either or both may be NULL).",swi_man_manual('foreigninclude.html'),manual,54116).
i(c('PL_get_compound_name_arity'),"If t is compound term, the functor name will be assigned over name and the arity over arity.",swi_man_manual('foreigninclude.html'),manual,54638).
i(c('PL_get_module'),"If t is an atom, the system will look up or create the corresponding module and assign an opaque pointer to it over module.",swi_man_manual('foreigninclude.html'),manual,55127).
i(c('PL_get_arg'),"If t is compound and index is between 1 and arity (inclusive), assign a with a term reference to the argument.",swi_man_manual('foreigninclude.html'),manual,55437).
i(c('PL_get_dict_key'),"If dict is a dict, get the associated value in value.",swi_man_manual('foreigninclude.html'),manual,56123).
i(section(4,'12.4.3.3','sec:foreign-text-with-length'),"Exchanging text using length and string",swi_man_manual('foreigninclude.html'),manual,56501).
i(c('PL_get_atom_nchars'),"See PL_get_atom_chars().",swi_man_manual('foreigninclude.html'),manual,57116).
i(c('PL_get_list_nchars'),"See PL_get_list_chars().",swi_man_manual('foreigninclude.html'),manual,57388).
i(c('PL_get_nchars'),"See PL_get_chars().",swi_man_manual('foreigninclude.html'),manual,57660).
i(c('PL_put_atom_nchars'),"See PL_put_atom_chars().",swi_man_manual('foreigninclude.html'),manual,57986).
i(c('PL_put_string_nchars'),"See PL_put_string_chars().",swi_man_manual('foreigninclude.html'),manual,58262).
i(c('PL_put_list_ncodes'),"See PL_put_list_codes().",swi_man_manual('foreigninclude.html'),manual,58546).
i(c('PL_put_list_nchars'),"See PL_put_list_chars().",swi_man_manual('foreigninclude.html'),manual,58762).
i(c('PL_unify_atom_nchars'),"See PL_unify_atom_chars().",swi_man_manual('foreigninclude.html'),manual,59038).
i(c('PL_unify_string_nchars'),"See PL_unify_string_chars().",swi_man_manual('foreigninclude.html'),manual,59322).
i(c('PL_unify_list_ncodes'),"See PL_unify_codes().",swi_man_manual('foreigninclude.html'),manual,59614).
i(c('PL_unify_list_nchars'),"See PL_unify_list_chars().",swi_man_manual('foreigninclude.html'),manual,59831).
i(c('PL_new_atom_nchars'),"Create a new atom as PL_new_atom(), but using the given length and characters.",swi_man_manual('foreigninclude.html'),manual,60232).
i(c('PL_atom_nchars'),"Extract the text and length of an atom.",swi_man_manual('foreigninclude.html'),manual,60745).
i(section(4,'12.4.3.4','sec:foreign-unicode'),"Wide-character versions",swi_man_manual('foreigninclude.html'),manual,61165).
i(c('PL_new_atom_wchars'),"Create atom from wide-character string as PL_new_atom_nchars() does for ISO-Latin-1 strings.",swi_man_manual('foreigninclude.html'),manual,62018).
i(c('PL_atom_wchars'),"Extract characters from a wide-character atom.",swi_man_manual('foreigninclude.html'),manual,62649).
i(c('PL_get_wchars'),"Wide-character version of PL_get_chars().",swi_man_manual('foreigninclude.html'),manual,63226).
i(c('PL_put_wchars'),"Put text from a wide character array in t.",swi_man_manual('foreigninclude.html'),manual,63813).
i(c('PL_unify_wchars'),"Unify t with a textual representation of the C wide-character array s.",swi_man_manual('foreigninclude.html'),manual,64439).
i(c('PL_unify_wchars_diff'),"Difference list version of PL_unify_wchars(), only supporting the types PL_CODE_LIST and PL_CHAR_LIST.",swi_man_manual('foreigninclude.html'),manual,64907).
i(section(4,'12.4.3.5','sec:foreign-read-list'),"Reading a list",swi_man_manual('foreigninclude.html'),manual,65654).
i(c('PL_get_list'),"If l is a list and not the empty list, assign a term reference to the head to h and to the tail to t.",swi_man_manual('foreigninclude.html'),manual,68380).
i(c('PL_get_head'),"If l is a list and not the empty list, assign a term reference to the head to h.",swi_man_manual('foreigninclude.html'),manual,68681).
i(c('PL_get_tail'),"If l is a list and not the empty list, assign a term reference to the tail to t.",swi_man_manual('foreigninclude.html'),manual,68939).
i(c('PL_get_nil'),"Succeeds if l represents the list termination constant.",swi_man_manual('foreigninclude.html'),manual,69197).
i(c('PL_skip_list'),"This is a multi-purpose function to deal with lists.",swi_man_manual('foreigninclude.html'),manual,69405).
i(section(4,'12.4.3.6','sec:foreign-options'),"Processing option lists and dicts",swi_man_manual('foreigninclude.html'),manual,70978).
i(c('PL_scan_options'),"Process an option list as we find with, e.g., write_term/2 and many other builtin predicates.",swi_man_manual('foreigninclude.html'),manual,71194).
i(section(4,'12.4.3.7','sec:foreign-write'),"An example: defining write/1 in C",swi_man_manual('foreigninclude.html'),manual,75890).
i(section(3,'12.4.4','sec:foreign-term-construct'),"Constructing Terms",swi_man_manual('foreigninclude.html'),manual,77528).
i(c('PL_put_variable'),"Put a fresh variable in the term, resetting the term reference to its initial state.",swi_man_manual('foreigninclude.html'),manual,78387).
i(c('PL_put_atom'),"Put an atom in the term reference from a handle.",swi_man_manual('foreigninclude.html'),manual,78734).
i(c('PL_put_bool'),"Put one of the atoms true or false in the term reference See also PL_put_atom(), PL_unify_bool() and PL_get_bool().",swi_man_manual('foreigninclude.html'),manual,79106).
i(c('PL_put_chars'),"New function to deal with setting a term from a char* with various encodings.",swi_man_manual('foreigninclude.html'),manual,79588).
i(c('PL_put_atom_chars'),"Put an atom in the term reference constructed from the zero-terminated string.",swi_man_manual('foreigninclude.html'),manual,80501).
i(c('PL_put_string_chars'),"Put a zero-terminated string in the term reference.",swi_man_manual('foreigninclude.html'),manual,80831).
i(c('PL_put_string_nchars'),"Put a string, represented by a length/start pointer pair in the term reference.",swi_man_manual('foreigninclude.html'),manual,81191).
i(c('PL_put_list_chars'),"Put a list of ASCII values in the term reference.",swi_man_manual('foreigninclude.html'),manual,81632).
i(c('PL_put_integer'),"Put a Prolog integer in the term reference.",swi_man_manual('foreigninclude.html'),manual,81857).
i(c('PL_put_int64'),"Put a Prolog integer in the term reference.",swi_man_manual('foreigninclude.html'),manual,82059).
i(c('PL_put_uint64'),"Put a Prolog integer in the term reference.",swi_man_manual('foreigninclude.html'),manual,82260).
i(c('PL_put_pointer'),"Put a Prolog integer in the term reference.",swi_man_manual('foreigninclude.html'),manual,82684).
i(c('PL_put_float'),"Put a floating-point value in the term reference.",swi_man_manual('foreigninclude.html'),manual,83055).
i(c('PL_put_functor'),"Create a new compound term from functor and bind t to this term.",swi_man_manual('foreigninclude.html'),manual,83260).
i(c('PL_put_list'),"As PL_put_functor(), using the list-cell functor.",swi_man_manual('foreigninclude.html'),manual,83779).
i(c('PL_put_nil'),"Put the list terminator constant in l.",swi_man_manual('foreigninclude.html'),manual,84258).
i(c('PL_put_term'),"Make t1 point to the same term as t2.",swi_man_manual('foreigninclude.html'),manual,84781).
i(c('PL_cons_functor'),"Create a term whose arguments are filled from a variable argument list holding the same number of term_t objects as the arity of the functor.",swi_man_manual('foreigninclude.html'),manual,85204).
i(c('PL_cons_functor_v'),"Create a compound term like PL_cons_functor(), but a0 is an array of term references as returned by PL_new_term_refs().",swi_man_manual('foreigninclude.html'),manual,86085).
i(c('PL_cons_list'),"Create a list (cons-) cell in l from the head h and tail t.",swi_man_manual('foreigninclude.html'),manual,86615).
i(c('PL_put_dict'),"Create a dict from a tag and vector of atom-value pairs and put the result in h.",swi_man_manual('foreigninclude.html'),manual,87556).
i(section(3,'12.4.5','sec:foreign-unify'),"Unifying data",swi_man_manual('foreigninclude.html'),manual,88485).
i(c('PL_unify'),"Unify two Prolog terms and return TRUE on success.",swi_man_manual('foreigninclude.html'),manual,90090).
i(c('PL_unify_atom'),"Unify t with the atom a and return non-zero on success.",swi_man_manual('foreigninclude.html'),manual,93258).
i(c('PL_unify_bool'),"Unify t with either false or true, according to whether a is zero or non-zero.",swi_man_manual('foreigninclude.html'),manual,93494).
i(c('PL_unify_chars'),"New function to deal with unification of char* with various encodings to a Prolog representation.",swi_man_manual('foreigninclude.html'),manual,93866).
i(c('PL_unify_atom_chars'),"Unify t with an atom created from chars and return non-zero on success.",swi_man_manual('foreigninclude.html'),manual,95043).
i(c('PL_unify_list_chars'),"Unify t with a list of ASCII characters constructed from chars.",swi_man_manual('foreigninclude.html'),manual,95316).
i(c('PL_unify_string_chars'),"Unify t with a Prolog string object created from the zero-terminated string chars.",swi_man_manual('foreigninclude.html'),manual,95580).
i(c('PL_unify_integer'),"Unify t with a Prolog integer from n.",swi_man_manual('foreigninclude.html'),manual,96003).
i(c('PL_unify_int64'),"Unify t with a Prolog integer from n.",swi_man_manual('foreigninclude.html'),manual,96229).
i(c('PL_unify_uint64'),"Unify t with a Prolog integer from n.",swi_man_manual('foreigninclude.html'),manual,96450).
i(c('PL_unify_float'),"Unify t with a Prolog float from f.",swi_man_manual('foreigninclude.html'),manual,96882).
i(c('PL_unify_pointer'),"Unify t with a Prolog integer describing the pointer.",swi_man_manual('foreigninclude.html'),manual,97100).
i(c('PL_unify_functor'),"If t is a compound term with the given functor, just succeed.",swi_man_manual('foreigninclude.html'),manual,97507).
i(c('PL_unify_compound'),"If t is a compound term with the given functor, just succeed.",swi_man_manual('foreigninclude.html'),manual,98082).
i(c('PL_unify_list'),"Unify l with a list-cell (./2).",swi_man_manual('foreigninclude.html'),manual,98676).
i(c('PL_unify_nil'),"Unify l with the atom [].",swi_man_manual('foreigninclude.html'),manual,101585).
i(c('PL_unify_arg'),"Unifies the index-th argument (1-based) of t with a.",swi_man_manual('foreigninclude.html'),manual,101794).
i(c('PL_unify_term'),"Unify t with a (normally) compound term.",swi_man_manual('foreigninclude.html'),manual,102046).
i(c('PL_chars_to_term'),"Parse the string chars and put the resulting Prolog term into t.",swi_man_manual('foreigninclude.html'),manual,109928).
i(c('PL_wchars_to_term'),"Wide character version of PL_chars_to_term().",swi_man_manual('foreigninclude.html'),manual,111480).
i(c('PL_quote'),"Return a quoted version of string.",swi_man_manual('foreigninclude.html'),manual,111772).
i(section(3,'12.4.6','sec:cerror'),"Convenient functions to generate Prolog exceptions",swi_man_manual('foreigninclude.html'),manual,112580).
i(c('PL_get_atom_ex'),"As PL_get_atom(), but raises a type or instantiation error if t is not an atom.",swi_man_manual('foreigninclude.html'),manual,113737).
i(c('PL_get_integer_ex'),"As PL_get_integer(), but raises a type or instantiation error if t is not an integer, or a representation error if the Prolog integer does not fit in a C int.",swi_man_manual('foreigninclude.html'),manual,114049).
i(c('PL_get_long_ex'),"As PL_get_long(), but raises a type or instantiation error if t is not an atom, or a representation error if the Prolog integer does not fit in a C long.",swi_man_manual('foreigninclude.html'),manual,114460).
i(c('PL_get_int64_ex'),"As PL_get_int64(), but raises a type or instantiation error if t is not an integer, or a representation error if the Prolog integer does not fit in a C int64_t.",swi_man_manual('foreigninclude.html'),manual,114858).
i(c('PL_get_uint64_ex'),"As PL_get_uint64(), but raises a type, domain or instantiation error if t is not an integer or t is less than zero, or a representation error if the Prolog integer does not fit in a C int64_t.",swi_man_manual('foreigninclude.html'),manual,115269).
i(c('PL_get_intptr_ex'),"As PL_get_intptr(), but raises a type or instantiation error if t is not an atom, or a representation error if the Prolog integer does not fit in a C intptr_t.",swi_man_manual('foreigninclude.html'),manual,115727).
i(c('PL_get_size_ex'),"As PL_get_size(), but raises a type or instantiation error if t is not an atom, or a representation error if the Prolog integer does not fit in a C size_t.",swi_man_manual('foreigninclude.html'),manual,116141).
i(c('PL_get_bool_ex'),"As PL_get_bool(), but raises a type or instantiation error if t is not a valid boolean value (true, false, on, constoff, 1 or 0).",swi_man_manual('foreigninclude.html'),manual,116488).
i(c('PL_get_float_ex'),"As PL_get_float(), but raises a type or instantiation error if t is not a float.",swi_man_manual('foreigninclude.html'),manual,117004).
i(c('PL_get_char_ex'),"Get a character code from t, where t is either an integer or an atom with length one.",swi_man_manual('foreigninclude.html'),manual,117320).
i(c('PL_get_pointer_ex'),"As PL_get_pointer(), but raises a type or instantiation error if t is not a pointer.",swi_man_manual('foreigninclude.html'),manual,117754).
i(c('PL_get_list_ex'),"As PL_get_list(), but raises a type or instantiation error if t is not a list.",swi_man_manual('foreigninclude.html'),manual,118083).
i(c('PL_get_nil_ex'),"As PL_get_nil(), but raises a type or instantiation error if t is not the empty list.",swi_man_manual('foreigninclude.html'),manual,118403).
i(c('PL_unify_list_ex'),"As PL_unify_list(), but raises a type error if t is not a variable, list-cell or the empty list.",swi_man_manual('foreigninclude.html'),manual,119075).
i(c('PL_unify_nil_ex'),"As PL_unify_nil(), but raises a type error if t is not a variable, list-cell or the empty list.",swi_man_manual('foreigninclude.html'),manual,119420).
i(c('PL_unify_bool_ex'),"As PL_unify_bool(), but raises a type error if t is not a variable or a boolean.",swi_man_manual('foreigninclude.html'),manual,119741).
i(c('PL_instantiation_error'),"Raise instantiation_error.",swi_man_manual('foreigninclude.html'),manual,120540).
i(c('PL_uninstantiation_error'),"Raise uninstantiation_error(culprit).",swi_man_manual('foreigninclude.html'),manual,120979).
i(c('PL_representation_error'),"Raise representation_error(resource).",swi_man_manual('foreigninclude.html'),manual,121510).
i(c('PL_type_error'),"Raise type_error(expected, culprit).",swi_man_manual('foreigninclude.html'),manual,121870).
i(c('PL_domain_error'),"Raise domain_error(expected, culprit).",swi_man_manual('foreigninclude.html'),manual,122195).
i(c('PL_existence_error'),"Raise existence_error(type, culprit).",swi_man_manual('foreigninclude.html'),manual,122532).
i(c('PL_permission_error'),"Raise permission_error(operation, type, culprit).",swi_man_manual('foreigninclude.html'),manual,122864).
i(c('PL_resource_error'),"Raise resource_error(resource).",swi_man_manual('foreigninclude.html'),manual,123252).
i(c('PL_syntax_error'),"Raise syntax_error(message).",swi_man_manual('foreigninclude.html'),manual,123577).
i(section(3,'12.4.7','sec:pl-cvt-functions'),"Foreign language wrapper support functions",swi_man_manual('foreigninclude.html'),manual,123914).
i(c('PL_cvt_i_bool'),"Equivalent to PL_get_bool_ex().",swi_man_manual('foreigninclude.html'),manual,125081).
i(c('PL_cvt_i_char'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_schar'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_uchar'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_short'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_ushort'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_int'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_uint'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_long'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_ulong'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_llong'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_ullong'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_int32'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_uint32'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_int64'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_uint64'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(c('PL_cvt_i_size_t'),"Convert a Prolog integer into a C integer of the specified size.",swi_man_manual('foreigninclude.html'),manual,125483).
i(section(3,'12.4.8','sec:foreign-serialize'),"Serializing and deserializing Prolog terms",swi_man_manual('foreigninclude.html'),manual,127952).
i(c('PL_put_term_from_chars'),"Parse the text from the C-string s holding len bytes and put the resulting term in t.",swi_man_manual('foreigninclude.html'),manual,128177).
i(section(3,'12.4.9','sec:blob'),"BLOBS: Using atoms to store arbitrary binary data",swi_man_manual('foreigninclude.html'),manual,129264).
i(section(4,'12.4.9.1','sec:blobtype'),"Defining a BLOB type",swi_man_manual('foreigninclude.html'),manual,133539).
i(c('PL_unregister_blob_type'),"Unlink the blob type from the registered type and transform the type of possible living blobs to unregistered, avoiding further reference to the type structure, functions referred by it, as well as the data.",swi_man_manual('foreigninclude.html'),manual,148554).
i(c('PL_register_blob_type'),"This function does not need to be called explicitly.",swi_man_manual('foreigninclude.html'),manual,149260).
i(section(4,'12.4.9.2','sec:blobaccess'),"Accessing blobs",swi_man_manual('foreigninclude.html'),manual,149779).
i(c('PL_is_blob'),"Succeeds if t refers to a blob, in which case type is filled with the type of the blob.",swi_man_manual('foreigninclude.html'),manual,150214).
i(c('PL_unify_blob'),"Unify t to a blob constructed from the given data and associated with the given type.",swi_man_manual('foreigninclude.html'),manual,150483).
i(c('PL_put_blob'),"Store the described blob in t.",swi_man_manual('foreigninclude.html'),manual,152170).
i(c('PL_new_blob'),"Create a blob from its internal opaque form.",swi_man_manual('foreigninclude.html'),manual,152883).
i(c('PL_get_blob'),"If t holds a blob or atom, get the data and type and return TRUE.",swi_man_manual('foreigninclude.html'),manual,153173).
i(c('PL_blob_data'),"Get the data and type associated to a blob.",swi_man_manual('foreigninclude.html'),manual,153586).
i(c('PL_free_blob'),"New in 9.1.12.",swi_man_manual('foreigninclude.html'),manual,154674).
i(section(3,'12.4.10','sec:gmpforeign'),"Exchanging GMP numbers",swi_man_manual('foreigninclude.html'),manual,155168).
i(c('PL_get_mpz'),"If t represents an integer, mpz is filled with the value and the function returns TRUE.",swi_man_manual('foreigninclude.html'),manual,157042).
i(c('PL_get_mpq'),"If t is an integer or rational number (term rdiv/2), mpq is filled with the normalised rational number and the function returns TRUE.",swi_man_manual('foreigninclude.html'),manual,157565).
i(c('PL_unify_mpz'),"Unify t with the integer value represented by mpz and return TRUE on success.",swi_man_manual('foreigninclude.html'),manual,158156).
i(c('PL_unify_mpq'),"Unify t with a rational number represented by mpq and return TRUE on success.",swi_man_manual('foreigninclude.html'),manual,158470).
i(section(3,'12.4.11','sec:calling-prolog-from-c'),"Calling Prolog from C",swi_man_manual('foreigninclude.html'),manual,158871).
i(section(4,'12.4.11.1','sec:foreign-predicate-handle'),"Predicate references",swi_man_manual('foreigninclude.html'),manual,160019).
i(c('PL_pred'),"Return a handle to a predicate for the specified name/arity in the given module.",swi_man_manual('foreigninclude.html'),manual,160518).
i(c('PL_predicate'),"Same as PL_pred(), but provides a more convenient interface to the C programmer.",swi_man_manual('foreigninclude.html'),manual,161391).
i(c('PL_predicate_info'),"Return information on the predicate p.",swi_man_manual('foreigninclude.html'),manual,162638).
i(section(4,'12.4.11.2','sec:foreign-create-query'),"Initiating a query from C",swi_man_manual('foreigninclude.html'),manual,163491).
i(c('PL_open_query'),"Opens a query and returns an identifier for it.",swi_man_manual('foreigninclude.html'),manual,164543).
i(c('PL_next_solution'),"Generate the first (next) solution for the given query.",swi_man_manual('foreigninclude.html'),manual,172713).
i(c('PL_cut_query'),"Discards the query, but does not delete any of the data created by the query.",swi_man_manual('foreigninclude.html'),manual,173506).
i(c('PL_close_query'),"As PL_cut_query(), but all data and bindings created by the query are destroyed as if the query is called as \\+ \\+ Goal.",swi_man_manual('foreigninclude.html'),manual,175551).
i(c('PL_current_query'),"Returns the query id of the current query or 0 if the current thread is not executing any queries.",swi_man_manual('foreigninclude.html'),manual,176210).
i(c('PL_query_engine'),"Return the engine to which qid belongs.",swi_man_manual('foreigninclude.html'),manual,176472).
i(c('PL_call_predicate'),"Shorthand for PL_open_query(), PL_next_solution(), PL_cut_query(), generating a single solution.",swi_man_manual('foreigninclude.html'),manual,176890).
i(c('PL_call'),"Call term t just like the Prolog predicate once/1.",swi_man_manual('foreigninclude.html'),manual,177609).
i(section(3,'12.4.12','sec:foreign-discard-term-t'),"Discarding Data",swi_man_manual('foreigninclude.html'),manual,178540).
i(c('PL_open_foreign_frame'),"Create a foreign frame, holding a mark that allows the system to undo bindings and destroy data created after it, as well as providing the environment for creating term references.",swi_man_manual('foreigninclude.html'),manual,179208).
i(c('PL_close_foreign_frame'),"Discard all term references created after the frame was opened.",swi_man_manual('foreigninclude.html'),manual,180148).
i(c('PL_discard_foreign_frame'),"Same as PL_close_foreign_frame(), but also undo all bindings made since the open and destroy all Prolog data.",swi_man_manual('foreigninclude.html'),manual,180512).
i(c('PL_rewind_foreign_frame'),"Undo all bindings and discard all term references created since the frame was created, but do not pop the frame.",swi_man_manual('foreigninclude.html'),manual,180865).
i(section(3,'12.4.13','sec:foreign-strings'),"String buffering",swi_man_manual('foreigninclude.html'),manual,181957).
i(c('PL_STRINGS_MARK'),"These macros must be paired and create a C block ({...}).",swi_man_manual('foreigninclude.html'),manual,183288).
i(c('PL_STRINGS_RELEASE'),"These macros must be paired and create a C block ({...}).",swi_man_manual('foreigninclude.html'),manual,183288).
i(section(3,'12.4.14','sec:foreign-modules'),"Foreign Code and Modules",swi_man_manual('foreigninclude.html'),manual,184381).
i(c('PL_context'),"Return the module identifier of the context module of the currently active foreign predicate.",swi_man_manual('foreigninclude.html'),manual,184706).
i(c('PL_strip_module'),"Utility function.",swi_man_manual('foreigninclude.html'),manual,185033).
i(c('PL_module_name'),"Return the name of module as an atom.",swi_man_manual('foreigninclude.html'),manual,186471).
i(c('PL_new_module'),"Find an existing module or create a new module with the name name.",swi_man_manual('foreigninclude.html'),manual,186678).
i(section(3,'12.4.15','sec:foreign-exceptions'),"Prolog exceptions in foreign code",swi_man_manual('foreigninclude.html'),manual,187076).
i(c('PL_raise_exception'),"Generate an exception (as throw/1) and return FALSE.",swi_man_manual('foreigninclude.html'),manual,191402).
i(c('PL_throw'),"Similar to PL_raise_exception(), but returns using the C longjmp() function to the innermost PL_next_solution().",swi_man_manual('foreigninclude.html'),manual,194455).
i(c('PL_exception'),"Return the pending exception.",swi_man_manual('foreigninclude.html'),manual,194928).
i(c('PL_clear_exception'),"Tells Prolog that the encountered exception must be ignored.",swi_man_manual('foreigninclude.html'),manual,197238).
i(section(3,'12.4.16','sec:csignal'),"Catching Signals (Software Interrupts)",swi_man_manual('foreigninclude.html'),manual,197951).
i(c('PL_sigaction'),"Install or query the status for signal sig.",swi_man_manual('foreigninclude.html'),manual,198951).
i(c('PL_signal'),"This function is equivalent to the BSD-Unix signal() function, regardless of the platform used.",swi_man_manual('foreigninclude.html'),manual,200476).
i(c('PL_raise'),"Register sig for synchronous handling by Prolog.",swi_man_manual('foreigninclude.html'),manual,202440).
i(c('PL_handle_signals'),"Handle any signals pending from PL_raise().",swi_man_manual('foreigninclude.html'),manual,202928).
i(c('PL_get_signum_ex'),"Extract a signal specification from a Prolog term and store as an integer signal number in sig.",swi_man_manual('foreigninclude.html'),manual,203811).
i(section(3,'12.4.17','sec:foreign-misc'),"Miscellaneous",swi_man_manual('foreigninclude.html'),manual,204359).
i(section(4,'12.4.17.1','sec:foreign-compare'),"Term Comparison",swi_man_manual('foreigninclude.html'),manual,204530).
i(c('PL_compare'),"Compares two terms using the standard order of terms and returns -1, 0 or 1.",swi_man_manual('foreigninclude.html'),manual,204730).
i(c('PL_same_compound'),"Yields TRUE if t1 and t2 refer to physically the same compound term and FALSE otherwise.",swi_man_manual('foreigninclude.html'),manual,205061).
i(section(4,'12.4.17.2','sec:foreign-recorded'),"Recorded database",swi_man_manual('foreigninclude.html'),manual,205374).
i(c('PL_record'),"Record the term t into the Prolog database as recorda/3 and return an opaque handle to the term.",swi_man_manual('foreigninclude.html'),manual,206573).
i(c('PL_duplicate_record'),"Return a duplicate of record.",swi_man_manual('foreigninclude.html'),manual,207317).
i(c('PL_recorded'),"Copy a recorded term back to the Prolog stack.",swi_man_manual('foreigninclude.html'),manual,207809).
i(c('PL_erase'),"Remove the recorded term from the Prolog database, reclaiming all associated memory resources.",swi_man_manual('foreigninclude.html'),manual,208390).
i(c('PL_record_external'),"Record the term t into the Prolog database as recorda/3 and return an opaque handle to the term.",swi_man_manual('foreigninclude.html'),manual,210022).
i(c('PL_recorded_external'),"Copy a recorded term back to the Prolog stack.",swi_man_manual('foreigninclude.html'),manual,211375).
i(c('PL_erase_external'),"Remove the recorded term from the Prolog database, reclaiming all associated memory resources.",swi_man_manual('foreigninclude.html'),manual,211885).
i(section(4,'12.4.17.3','sec:foreign-db'),"Database",swi_man_manual('foreigninclude.html'),manual,212150).
i(c('PL_assert'),"Provides direct access to asserta/1 and assertz/1 by asserting t into the database in the module m.",swi_man_manual('foreigninclude.html'),manual,212332).
i(section(4,'12.4.17.4','sec:cfilenames'),"Getting file names",swi_man_manual('foreigninclude.html'),manual,215878).
i(c('PL_get_file_name'),"Translate a Prolog term into a file name.",swi_man_manual('foreigninclude.html'),manual,216519).
i(c('PL_get_file_nameW'),"Same as PL_get_file_name(), but returns the filename as a wide-character string.",swi_man_manual('foreigninclude.html'),manual,218369).
i(section(4,'12.4.17.5','sec:cprologflags'),"Dealing with Prolog flags from C",swi_man_manual('foreigninclude.html'),manual,218927).
i(c('PL_set_prolog_flag'),"Set/create a Prolog flag from C.",swi_man_manual('foreigninclude.html'),manual,219665).
i(c('PL_current_prolog_flag'),"Retrieve the value of a Prolog flag from C.",swi_man_manual('foreigninclude.html'),manual,220834).
i(section(3,'12.4.18','sec:foreign-print-warning'),"Errors and warnings",swi_man_manual('foreigninclude.html'),manual,222453).
i(c('PL_warning'),"Print an error message starting with‘[WARNING: ’, followed by the output from format, followed by a‘]’and a newline.",swi_man_manual('foreigninclude.html'),manual,223082).
i(section(3,'12.4.19','sec:foreign-control-prolog'),"Environment Control from Foreign Code",swi_man_manual('foreigninclude.html'),manual,223563).
i(c('PL_action'),"Perform some action on the Prolog system.",swi_man_manual('foreigninclude.html'),manual,223795).
i(c('PL_version_info'),"Query version information.",swi_man_manual('foreigninclude.html'),manual,227140).
i(section(3,'12.4.20','sec:foreign-query'),"Querying Prolog",swi_man_manual('foreigninclude.html'),manual,229286).
i(c('PL_query'),"Obtain status information on the Prolog system.",swi_man_manual('foreigninclude.html'),manual,229478).
i(section(3,'12.4.21','sec:foreign-register-predicate'),"Registering Foreign Predicates",swi_man_manual('foreigninclude.html'),manual,231497).
i(c('PL_register_foreign_in_module'),"Register the C function f to implement a Prolog predicate.",swi_man_manual('foreigninclude.html'),manual,231730).
i(c('PL_register_foreign'),"Same as PL_register_foreign_in_module(), passing NULL for the module.",swi_man_manual('foreigninclude.html'),manual,235827).
i(c('PL_register_extensions_in_module'),"Register a series of predicates from an array of definitions of the type PL_extension in the given module.",swi_man_manual('foreigninclude.html'),manual,236219).
i(c('PL_register_extensions'),"Same as PL_register_extensions_in_module() using NULL for the module argument.",swi_man_manual('foreigninclude.html'),manual,237606).
i(section(3,'12.4.22','sec:foreign-hooks'),"Foreign Code Hooks",swi_man_manual('foreigninclude.html'),manual,237976).
i(c('PL_dispatch_hook'),"If this hook is not NULL, this function is called when reading from the terminal.",swi_man_manual('foreigninclude.html'),manual,238234).
i(c('PL_abort_hook'),"Install a hook when abort/0 is executed.",swi_man_manual('foreigninclude.html'),manual,238911).
i(c('PL_abort_unhook'),"Remove a hook installed with PL_abort_hook().",swi_man_manual('foreigninclude.html'),manual,239599).
i(c('PL_on_halt'),"Register the function f to be called if SWI-Prolog is halted.",swi_man_manual('foreigninclude.html'),manual,239948).
i(c('PL_exit_hook'),"Similar to PL_on_halt(), but the hooks are executed by PL_halt() instead of PL_cleanup() just before calling exit().",swi_man_manual('foreigninclude.html'),manual,241307).
i(c('PL_agc_hook'),"Register a hook with the atom-garbage collector (see garbage_collect_atoms/0) that is called on any atom that is reclaimed.",swi_man_manual('foreigninclude.html'),manual,241777).
i(section(3,'12.4.23','sec:foreigndata'),"Storing foreign data",swi_man_manual('foreigninclude.html'),manual,242931).
i(section(4,'12.4.23.1','sec:foreign-store-data'),"Examples for storing foreign data",swi_man_manual('foreigninclude.html'),manual,246855).
i(section(3,'12.4.24','sec:embedded'),"Embedding SWI-Prolog in other applications",swi_man_manual('foreigninclude.html'),manual,251042).
i(c('PL_initialise'),"Initialises the SWI-Prolog heap and stacks, restores the Prolog state, loads the system and personal initialisation files, runs the initialization/1 hooks and finally runs the initialization goals registered using -g goal.",swi_man_manual('foreigninclude.html'),manual,252730).
i(c('PL_winitialise'),"Wide character version of PL_initialise().",swi_man_manual('foreigninclude.html'),manual,255703).
i(c('PL_is_initialised'),"Test whether the Prolog engine is already initialised.",swi_man_manual('foreigninclude.html'),manual,256036).
i(c('PL_set_resource_db_mem'),"This function must be called at most once and before calling PL_initialise().",swi_man_manual('foreigninclude.html'),manual,256611).
i(c('PL_toplevel'),"Runs the goal of the -t toplevel switch (default prolog/0) and returns 1 if successful, 0 otherwise.",swi_man_manual('foreigninclude.html'),manual,259985).
i(c('PL_cleanup'),"This function may be called instead of PL_halt() to cleanup Prolog without exiting the process.",swi_man_manual('foreigninclude.html'),manual,260328).
i(c('PL_cleanup_fork'),"Stop intervaltimer that may be running on behalf of profile/1.",swi_man_manual('foreigninclude.html'),manual,263417).
i(c('PL_halt'),"Clean up the Prolog environment using PL_cleanup() and if successful call exit() with the status argument.",swi_man_manual('foreigninclude.html'),manual,263979).
i(section(4,'12.4.24.1','sec:sigembedded'),"Threading, Signals and embedded Prolog",swi_man_manual('foreigninclude.html'),manual,264421).
i(section(2,'12.2','sec:foreignlink'),"Linking Foreign Modules",swi_man_manual('foreignlink.html'),manual,3541).
i(section(3,'12.2.1','sec:foreign-linking'),"What linking is provided?",swi_man_manual('foreignlink.html'),manual,4757).
i(section(3,'12.2.2','sec:foreign-linking-options'),"What kind of loading should I be using?",swi_man_manual('foreignlink.html'),manual,5660).
i(section(3,'12.2.3','sec:shlib'),"library(shlib): Utility library for loading foreign objects (DLLs, shared objects)",swi_man_manual('foreignlink.html'),manual,6848).
i(/(use_foreign_library,1),"Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now.",swi_man_manual('foreignlink.html'),manual,8522).
i(/(use_foreign_library,2),"Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now.",swi_man_manual('foreignlink.html'),manual,8522).
i(:(qsave,/(compat_arch,2)),"User definable hook to establish if Arch1 is compatible with Arch2 when running a shared object.",swi_man_manual('foreignlink.html'),manual,10047).
i(/(load_foreign_library,1),"Load a shared object or DLL.",swi_man_manual('foreignlink.html'),manual,10758).
i(/(load_foreign_library,2),"Load a shared object or DLL.",swi_man_manual('foreignlink.html'),manual,10758).
i(/(unload_foreign_library,1),"Unload a shared object or DLL.",swi_man_manual('foreignlink.html'),manual,12728).
i(/(unload_foreign_library,2),"Unload a shared object or DLL.",swi_man_manual('foreignlink.html'),manual,12728).
i(/(current_foreign_library,2),"Query currently loaded shared libraries.",swi_man_manual('foreignlink.html'),manual,13311).
i(/(reload_foreign_libraries,0),"Reload all foreign libraries loaded (after restore of a state created using qsave_program/2.",swi_man_manual('foreignlink.html'),manual,13509).
i(section(3,'12.2.4','sec:sharedobj'),"Low-level operations on shared libraries",swi_man_manual('foreignlink.html'),manual,13806).
i(/(open_shared_object,2),"File is the name of a shared object file (DLL in MS-Windows).",swi_man_manual('foreignlink.html'),manual,14506).
i(/(open_shared_object,3),"As open_shared_object/2, but allows for additional flags to be passed.",swi_man_manual('foreignlink.html'),manual,15449).
i(/(close_shared_object,1),"Detach the shared object identified by Handle.",swi_man_manual('foreignlink.html'),manual,17762).
i(/(call_shared_object_function,2),"Call the named function in the loaded shared library.",swi_man_manual('foreignlink.html'),manual,17961).
i(section(3,'12.2.5','sec:static-linking'),"Static Linking",swi_man_manual('foreignlink.html'),manual,18438).
i(section(2,'12.8','sec:foreignnotes'),"Notes on Using Foreign Code",swi_man_manual('foreignnotes.html'),manual,3537).
i(section(3,'12.8.1','sec:foreign-debug'),"Foreign debugging functions",swi_man_manual('foreignnotes.html'),manual,3717).
i(c('PL_backtrace'),"Dump a Prolog backtrace to the user_error stream.",swi_man_manual('foreignnotes.html'),manual,4442).
i(c('PL_backtrace_string'),"As PL_backtrace(), but returns the stack as a string.",swi_man_manual('foreignnotes.html'),manual,5275).
i(c('PL_check_data'),"Check the consistency of the term data.",swi_man_manual('foreignnotes.html'),manual,6313).
i(c('PL_check_stacks'),"Check the consistency of the runtime stacks of the calling thread.",swi_man_manual('foreignnotes.html'),manual,6796).
i(/(prolog_debug,1),"Enable/disable a debug topic.",swi_man_manual('foreignnotes.html'),manual,8175).
i(/(prolog_nodebug,1),"Enable/disable a debug topic.",swi_man_manual('foreignnotes.html'),manual,8175).
i(c('PL_prolog_debug'),"(De)activate debug topics.",swi_man_manual('foreignnotes.html'),manual,9196).
i(c('PL_prolog_nodebug'),"(De)activate debug topics.",swi_man_manual('foreignnotes.html'),manual,9196).
i(section(3,'12.8.2','sec:foreign-malloc'),"Memory Allocation",swi_man_manual('foreignnotes.html'),manual,10015).
i(c('PL_malloc'),"Allocate bytes of memory.",swi_man_manual('foreignnotes.html'),manual,11097).
i(c('PL_realloc'),"Change the size of the allocated chunk, possibly moving it.",swi_man_manual('foreignnotes.html'),manual,11649).
i(c('PL_free'),"Release memory.",swi_man_manual('foreignnotes.html'),manual,12078).
i(section(3,'12.8.3','sec:foreign-compat'),"Compatibility between Prolog versions",swi_man_manual('foreignnotes.html'),manual,12454).
i(section(3,'12.8.4','sec:foreign-hash-tables'),"Foreign hash tables",swi_man_manual('foreignnotes.html'),manual,13358).
i(c('PL_new_hash_table'),"Create a new table for size key-value pairs.",swi_man_manual('foreignnotes.html'),manual,14253).
i(c('PL_free_hash_table'),"Destroy the hash table.",swi_man_manual('foreignnotes.html'),manual,14786).
i(c('PL_lookup_hash_table'),"Return the value matching key or NULL if key does not appear in the table.",swi_man_manual('foreignnotes.html'),manual,15078).
i(c('PL_add_hash_table'),"Add key-value to the table.",swi_man_manual('foreignnotes.html'),manual,15372).
i(c('PL_del_hash_table'),"Delete key from the table, returning the old associated value or NULL",swi_man_manual('foreignnotes.html'),manual,16063).
i(c('PL_clear_hash_table'),"Delete all key-value pairs from the table.",swi_man_manual('foreignnotes.html'),manual,16335).
i(c('PL_new_hash_table_enum'),"Return a table enumerator (cursor) that can be used to enumerate all key-value pairs using PL_advance_hash_table_enum().",swi_man_manual('foreignnotes.html'),manual,16598).
i(c('PL_free_hash_table_enum'),"Discard an enumerator object created using PL_new_hash_table_enum().",swi_man_manual('foreignnotes.html'),manual,17361).
i(c('PL_advance_hash_table_enum'),"Get the next key-value pair from a cursor.",swi_man_manual('foreignnotes.html'),manual,17771).
i(section(3,'12.8.5','sec:foreign-debug-and-profile'),"Debugging and profiling foreign code (valgrind, asan)",swi_man_manual('foreignnotes.html'),manual,18034).
i(section(3,'12.8.6','sec:foreign-name-conflicts'),"Name Conflicts in C modules",swi_man_manual('foreignnotes.html'),manual,20230).
i(section(3,'12.8.7','sec:foreign-quintus-sicstus'),"Compatibility of the Foreign Interface",swi_man_manual('foreignnotes.html'),manual,21215).
i(section(2,'12.1','sec:foreignoverview'),"Overview of the Interface",swi_man_manual('foreignoverview.html'),manual,3523).
i(section(2,'10.6','sec:foreignthread'),"Multithreaded mixed C and Prolog applications",swi_man_manual('foreignthread.html'),manual,3513).
i(section(3,'10.6.1','sec:threadoneone'),"A Prolog thread for each native thread (one-to-one)",swi_man_manual('foreignthread.html'),manual,5009).
i(c('PL_thread_self'),"Returns the integer Prolog identifier of the engine or -1 if the calling thread has no Prolog engine.",swi_man_manual('foreignthread.html'),manual,5949).
i(c('PL_unify_thread_id'),"Unify t with the Prolog thread identifier for thread i.",swi_man_manual('foreignthread.html'),manual,6290).
i(c('PL_thread_attach_engine'),"Creates a new Prolog engine in the calling thread.",swi_man_manual('foreignthread.html'),manual,6726).
i(c('PL_thread_destroy_engine'),"Destroy the Prolog engine in the calling thread.",swi_man_manual('foreignthread.html'),manual,9089).
i(c('PL_thread_at_exit'),"Register a handle to be called as the Prolog engine is destroyed.",swi_man_manual('foreignthread.html'),manual,9889).
i(section(3,'10.6.2','sec:threadmanymany'),"Pooling Prolog engines (many-to-many)",swi_man_manual('foreignthread.html'),manual,10699).
i(c('PL_create_engine'),"Create a new Prolog engine.",swi_man_manual('foreignthread.html'),manual,12177).
i(c('PL_destroy_engine'),"Destroy the given engine.",swi_man_manual('foreignthread.html'),manual,12944).
i(c('PL_set_engine'),"Make the calling thread ready to use engine.",swi_man_manual('foreignthread.html'),manual,13351).
i(section(2,'12.3','sec:foreigntypes'),"Interface Data Types",swi_man_manual('foreigntypes.html'),manual,3537).
i(section(3,'12.3.1','sec:type-term-t'),"Type term_t: a reference to a Prolog term",swi_man_manual('foreigntypes.html'),manual,3710).
i(c('PL_new_term_ref'),"Return a fresh reference to a term.",swi_man_manual('foreigntypes.html'),manual,9732).
i(c('PL_new_term_refs'),"Return n new term references.",swi_man_manual('foreigntypes.html'),manual,10235).
i(c('PL_copy_term_ref'),"Create a new term reference and make it point initially to the same term as from.",swi_man_manual('foreigntypes.html'),manual,11120).
i(c('PL_reset_term_refs'),"Destroy all term references that have been created after after, including after itself.",swi_man_manual('foreigntypes.html'),manual,11638).
i(section(4,'12.3.1.1','sec:foreign-gc'),"Interaction with the garbage collector and stack-shifter",swi_man_manual('foreigntypes.html'),manual,12548).
i(section(3,'12.3.2','sec:foreign-types'),"Other foreign interface types",swi_man_manual('foreigntypes.html'),manual,13372).
i(section(4,'12.3.2.1','sec:pl-arity-as-size'),"PL_ARITY_AS_SIZE",swi_man_manual('foreigntypes.html'),manual,17661).
i(section(2,'12.7','sec:foreignxmp'),"Example of Using the Foreign Interface",swi_man_manual('foreignxmp.html'),manual,3527).
i(section(2,'4.32','sec:format'),"Formatted Write",swi_man_manual('format.html'),manual,3509).
i(section(3,'4.32.1','sec:writef'),"Writef",swi_man_manual('format.html'),manual,4516).
i(/(writef,1),"Equivalent to writef(Atom, []).",swi_man_manual('format.html'),manual,4682).
i(/(writef,2),"Formatted write.",swi_man_manual('format.html'),manual,4987).
i(/(swritef,3),"Equivalent to writef/2, but “writes'' the result on String instead of the current output stream.",swi_man_manual('format.html'),manual,8697).
i(/(swritef,2),"Equivalent to swritef(String, Format, []).",swi_man_manual('format.html'),manual,9182).
i(section(3,'4.32.2','sec:format-predicates'),"Format",swi_man_manual('format.html'),manual,9418).
i(/(format,1),"Defined as‘format(Format) :- format(Format, []).",swi_man_manual('format.html'),manual,9805).
i(/(format,2),"Format is an atom, list of character codes, or a Prolog string.",swi_man_manual('format.html'),manual,10101).
i(/(format,3),"As format/2, but write the output on the given Output.",swi_man_manual('format.html'),manual,20580).
i(section(3,'4.32.3','sec:format-hook'),"Programming Format",swi_man_manual('format.html'),manual,21377).
i(/(format_predicate,2),"If a sequence ~c (tilde, followed by some character) is found, the format/3 and friends first check whether the user has defined a predicate to handle the format.",swi_man_manual('format.html'),manual,21566).
i(/(current_format_predicate,2),"True when ~Code is handled by the user-defined predicate specified by Head.",swi_man_manual('format.html'),manual,23059).
i(section(2,'F.3','sec:funcsummary'),"Arithmetic Functions",swi_man_manual('funcsummary.html'),manual,3518).
i(section(2,'2.6','sec:gemacs'),"GNU Emacs Interface",swi_man_manual('gemacs.html'),manual,3518).
i(section(2,'A.18','sec:gensym'),"library(gensym): Generate unique symbols",swi_man_manual('gensym.html'),manual,3509).
i(/(gensym,2),"Generate 1, 2, etc atoms on each subsequent call.",swi_man_manual('gensym.html'),manual,4223).
i(/(reset_gensym,0),"Reset gensym for all registered keys.",swi_man_manual('gensym.html'),manual,5120).
i(/(reset_gensym,1),"Restart generation of identifiers from Base at 1.",swi_man_manual('gensym.html'),manual,5492).
i(section(1,'D','sec:glossary'),"Glossary of Terms",swi_man_manual('glossary.html'),manual,3513).
i(section(2,'3.5','sec:guitracer'),"The Graphical Debugger",swi_man_manual('guitracer.html'),manual,3520).
i(section(3,'3.5.1','sec:start-guitracer'),"Invoking the window-based debugger",swi_man_manual('guitracer.html'),manual,4605).
i(/(guitracer,0),"This predicate installs the above-mentioned hooks that redirect tracing to the window-based environment.",swi_man_manual('guitracer.html'),manual,5724).
i(/(noguitracer,0),"Disable the hooks installed by guitracer/0, reverting to normal text console-based tracing.",swi_man_manual('guitracer.html'),manual,6329).
i(/(gtrace,0),"Utility defined as guitracer,trace.",swi_man_manual('guitracer.html'),manual,6612).
i(/(gdebug,0),"Utility defined as guitracer,debug.",swi_man_manual('guitracer.html'),manual,6756).
i(/(gspy,1),"Utility defined as guitracer,spy(Predicate).",swi_man_manual('guitracer.html'),manual,6900).
i(section(2,'4.33','sec:gvar'),"Global variables",swi_man_manual('gvar.html'),manual,3505).
i(/(b_setval,2),"Associate the term Value with the atom Name or replace the currently associated value with Value.",swi_man_manual('gvar.html'),manual,6347).
i(/(b_getval,2),"Get the value associated with the global variable Name and unify it with Value.",swi_man_manual('gvar.html'),manual,7214).
i(/(nb_setval,2),"Associates a copy of Value created with duplicate_term/2 with the atom Name.",swi_man_manual('gvar.html'),manual,7935).
i(/(nb_getval,2),"The nb_getval/2 predicate is a synonym for b_getval/2, introduced for compatibility and symmetry.",swi_man_manual('gvar.html'),manual,8386).
i(/(nb_linkval,2),"Associates the term Value with the atom Name without copying it.",swi_man_manual('gvar.html'),manual,9380).
i(/(nb_current,2),"Enumerate all defined variables with their value.",swi_man_manual('gvar.html'),manual,10388).
i(/(nb_delete,1),"Delete the named global variable.",swi_man_manual('gvar.html'),manual,11450).
i(section(3,'4.33.1','sec:gvars-compat'),"Compatibility of SWI-Prolog Global Variables",swi_man_manual('gvar.html'),manual,11984).
i(section(1,'B','sec:hack'),"Hackers corner",swi_man_manual('hack.html'),manual,3501).
i(section(2,'A.19','sec:heaps'),"library(heaps): heaps/priority queues",swi_man_manual('heaps.html'),manual,3515).
i(/(add_to_heap,4),"Adds Key with priority Priority to Heap0, constructing a new heap in Heap.",swi_man_manual('heaps.html'),manual,5088).
i(/(delete_from_heap,4),"Deletes Key from Heap0, leaving its priority in Priority and the resulting data structure in Heap.",swi_man_manual('heaps.html'),manual,5396).
i(/(empty_heap,1),"True if Heap is an empty heap.",swi_man_manual('heaps.html'),manual,5944).
i(/(singleton_heap,3),"True if Heap is a heap with the single element Priority-Key.",swi_man_manual('heaps.html'),manual,6168).
i(/(get_from_heap,4),"Retrieves the minimum-priority pair Priority-Key from Heap0.",swi_man_manual('heaps.html'),manual,6474).
i(/(heap_size,2),"Determines the number of elements in Heap.",swi_man_manual('heaps.html'),manual,6885).
i(/(heap_to_list,2),"Constructs a list List of Priority-Element terms, ordered by (ascending) priority.",swi_man_manual('heaps.html'),manual,7128).
i(/(is_heap,1),"Returns true if X is a heap.",swi_man_manual('heaps.html'),manual,7436).
i(/(list_to_heap,2),"If List is a list of Priority-Element terms, constructs a heap out of List.",swi_man_manual('heaps.html'),manual,7694).
i(/(min_of_heap,3),"Unifies Key with the minimum-priority element of Heap and Priority with its priority value.",swi_man_manual('heaps.html'),manual,7986).
i(/(min_of_heap,5),"Gets the two minimum-priority elements from Heap.",swi_man_manual('heaps.html'),manual,8314).
i(/(merge_heaps,3),"Merge the two heaps Heap0 and Heap1 in Heap.",swi_man_manual('heaps.html'),manual,8849).
i(section(2,'A.13','sec:highorder'),"library(dcg/high_order): High order grammar operations",swi_man_manual('highorder.html'),manual,3509).
i(//(sequence,2),"Match or generate a sequence of Element.",swi_man_manual('highorder.html'),manual,4193).
i(//(sequence,3),"Match or generate a sequence of Element where each pair of elements is separated by Sep.",swi_man_manual('highorder.html'),manual,4778).
i(//(sequence,5),"Match or generate a sequence of Element enclosed by Start end End, where each pair of elements is separated by Sep.",swi_man_manual('highorder.html'),manual,5367).
i(//(optional,2),"Perform an optional match, executing Default if Match is not matched.",swi_man_manual('highorder.html'),manual,6117).
i(//(foreach,2),"Generate a list from the solutions of Generator.",swi_man_manual('highorder.html'),manual,6989).
i(//(foreach,3),"Generate a list from the solutions of Generator.",swi_man_manual('highorder.html'),manual,6989).
i(section(2,'2.8','sec:history'),"Command line history",swi_man_manual('history.html'),manual,3522).
i(section(2,'2.13','sec:hooks'),"An overview of hook predicates",swi_man_manual('hooks.html'),manual,3513).
i(section(2,'3.8','sec:idepreds'),"Accessing the IDE from your program",swi_man_manual('idepreds.html'),manual,3514).
i(/(prolog_ide,1),"This predicate ensures the IDE-enabling XPCE component is loaded, creates the XPCE class prolog_ide and sends Action to its one and only instance @prolog_ide.",swi_man_manual('idepreds.html'),manual,4258).
i(section(2,'3.9','sec:idesummary'),"Summary of the IDE",swi_man_manual('idesummary.html'),manual,3516).
i(section(2,'1.5','sec:implhistory'),"Implementation history",swi_man_manual('implhistory.html'),manual,3522).
i(section(2,'6.3','sec:import'),"Importing Predicates into a Module",swi_man_manual('import.html'),manual,3534).
i(/(use_module,1),"Load the file(s) specified with Files just like ensure_loaded/1.",swi_man_manual('import.html'),manual,4478).
i(/(use_module,2),"Load File, which must be a module file, and import the predicates as specified by ImportList.",swi_man_manual('import.html'),manual,7400).
i(section(2,'6.10','sec:importmodule'),"Dynamic importing using import modules",swi_man_manual('importmodule.html'),manual,3523).
i(/(import_module,2),"True if Module inherits directly from Import.",swi_man_manual('importmodule.html'),manual,6955).
i(/(default_module,2),"True if predicates and operators in Default are visible in Module.",swi_man_manual('importmodule.html'),manual,7740).
i(/(add_import_module,3),"If Import is not already an import module for Module, add it to this list at the start or end depending on StartOrEnd.",swi_man_manual('importmodule.html'),manual,8324).
i(/(delete_import_module,2),"Delete Import from the list of import modules for Module.",swi_man_manual('importmodule.html'),manual,8923).
i(section(2,'A.20','sec:increval'),"library(increval): Incremental dynamic predicate modification",swi_man_manual('increval.html'),manual,3515).
i(/(is_incremental_subgoal,1),"This predicate non-deterministically unifies Subgoal with incrementally tabled subgoals that are currently table entries.",swi_man_manual('increval.html'),manual,4445).
i(/(incr_directly_depends,2),"True if Goal1 depends on Goal2 in the IDG.",swi_man_manual('increval.html'),manual,4754).
i(/(incr_trans_depends,2),"True for each pair in the transitive closure of incr_directly_depends(G1, G2).",swi_man_manual('increval.html'),manual,5203).
i(/(incr_invalid_subgoals,1),"List is a sorted list (set) of the incremental subgoals that are currently invalid.",swi_man_manual('increval.html'),manual,5479).
i(/(incr_is_invalid,1),"True when Subgoal’s table is marked as invalid.",swi_man_manual('increval.html'),manual,5753).
i(/(incr_invalidate_calls,1),"Invalidate all tables for subgoals of Goal as well as tables that are affected by these.",swi_man_manual('increval.html'),manual,5991).
i(/(incr_invalidate_call,1),"This is the XSB name, but the manual says incr_invalidate_calls/1 and the comment with the code suggests this is misnamed.",swi_man_manual('increval.html'),manual,6270).
i(/(incr_table_update,0),"Updated all invalid tables",swi_man_manual('increval.html'),manual,6799).
i(/(incr_propagate_calls,1),"Activate the monotonic answer propagation similarly to when a new fact is asserted for a monotonic dynamic predicate.",swi_man_manual('increval.html'),manual,6943).
i(section(0,'0','Manual/index.html'),"SWI-Prolog 9.1.15 Reference Manual",swi_man_manual('index.html'),manual,3281).
i(section(2,'2.2','sec:initfile'),"The user's initialisation file",swi_man_manual('initfile.html'),manual,3522).
i(section(2,'2.3','sec:initgoal'),"Initialisation files and goals",swi_man_manual('initgoal.html'),manual,3516).
i(section(2,'A.21','sec:intercept'),"library(intercept): Intercept and signal interface",swi_man_manual('intercept.html'),manual,3519).
i(/(intercept,3),"Run Goal as call/1.",swi_man_manual('intercept.html'),manual,5100).
i(/(intercept,4),"Similar to intercept/3, but the copy of Handler is called as call(Copy,Arg), which allows passing large context arguments or arguments subject to unification or destructive assignment.",swi_man_manual('intercept.html'),manual,6756).
i(/(intercept_all,4),"True when List contains all instances of Template that have been sent using send_signal/1 where the argument unifies with Ball.",swi_man_manual('intercept.html'),manual,7308).
i(/(nb_intercept_all,4),"As intercept_all/4, but backtracing inside Goal does not reset List.",swi_man_manual('intercept.html'),manual,8349).
i(/(send_signal,1),"If this predicate is called from a sub-goal of intercept/3, execute the associated Handler of the intercept/3 environment.",swi_man_manual('intercept.html'),manual,8970).
i(/(send_silent_signal,1),"As send_signal/1, but succeed silently if there is no matching intercept environment.",swi_man_manual('intercept.html'),manual,9491).
i(section(2,'B.4','sec:interrupt'),"Simmulating a debugger interrupt",swi_man_manual('interrupt.html'),manual,3524).
i(/(prolog_interrupt,0),"Calls the functionality that allows for debugging after receiving (normally) SIGINT.",swi_man_manual('interrupt.html'),manual,3717).
i(section(2,'B.9','sec:intlibs'),"Hooks for integrating libraries",swi_man_manual('intlibs.html'),manual,3534).
i(/(prolog_list_goal,1),"Hook, normally not defined.",swi_man_manual('intlibs.html'),manual,4190).
i(:(prolog,/(debug_control_hook,1)),"Hook for the debugger control predicates that allows the creator of more high-level programming languages to use the common front-end predicates to control the debugger.",swi_man_manual('intlibs.html'),manual,4822).
i(:(prolog,/(help_hook,1)),"Hook into help/0 and help/1.",swi_man_manual('intlibs.html'),manual,6836).
i(section(1,'1','sec:intro'),"Introduction",swi_man_manual('intro.html'),manual,3507).
i(section(2,'A.22','sec:iostream'),"library(iostream): Utilities to deal with streams",swi_man_manual('iostream.html'),manual,3519).
i(/(open_any,5),"Establish a stream from Specification that should be closed using Close, which can either be called or passed to close_any/1.",swi_man_manual('iostream.html'),manual,4906).
i(/(close_any,1),"Execute the Close closure returned by open_any/5.",swi_man_manual('iostream.html'),manual,7375).
i(/(open_hook,6),"Open Spec in Mode, producing Stream.",swi_man_manual('iostream.html'),manual,7799).
i(section(2,'2.18','sec:jitindex'),"Just-in-time clause indexing",swi_man_manual('jitindex.html'),manual,3517).
i(section(3,'2.18.1','sec:deep-indexing'),"Deep indexing",swi_man_manual('jitindex.html'),manual,8883).
i(section(3,'2.18.2','sec:indexfut'),"Future directions",swi_man_manual('jitindex.html'),manual,11655).
i(section(3,'2.18.3','sec:indexbody'),"Indexing for body code",swi_man_manual('jitindex.html'),manual,12211).
i(section(3,'2.18.4','sec:indexport'),"Indexing and portability",swi_man_manual('jitindex.html'),manual,14856).
i(section(1,'A','sec:libpl'),"The SWI-Prolog library",swi_man_manual('libpl.html'),manual,3513).
i(section(2,'F.2','sec:library'),"Library predicates",swi_man_manual('library.html'),manual,3530).
i(section(3,'F.2.1','sec:summary-lib-aggregate'),"library(aggregate)",swi_man_manual('library.html'),manual,3689).
i(section(3,'F.2.2','sec:summary-lib-ansi_term'),"library(ansi_term)",swi_man_manual('library.html'),manual,4817).
i(section(3,'F.2.3','sec:summary-lib-apply'),"library(apply)",swi_man_manual('library.html'),manual,5744).
i(section(3,'F.2.4','sec:summary-lib-assoc'),"library(assoc)",swi_man_manual('library.html'),manual,9369).
i(section(3,'F.2.5','sec:summary-lib-broadcast'),"library(broadcast)",swi_man_manual('library.html'),manual,11267).
i(section(3,'F.2.6','sec:summary-lib-charsio'),"library(charsio)",swi_man_manual('library.html'),manual,12474).
i(section(3,'F.2.7','sec:summary-lib-check'),"library(check)",swi_man_manual('library.html'),manual,14708).
i(section(3,'F.2.8','sec:summary-lib-clpb'),"library(clpb)",swi_man_manual('library.html'),manual,18013).
i(section(3,'F.2.9','sec:summary-lib-clpfd'),"library(clpfd)",swi_man_manual('library.html'),manual,18965).
i(section(3,'F.2.10','sec:summary-lib-clpqr'),"library(clpqr)",swi_man_manual('library.html'),manual,29038).
i(section(3,'F.2.11','sec:summary-lib-csv'),"library(csv)",swi_man_manual('library.html'),manual,30304).
i(section(3,'F.2.12','sec:summary-lib-dcgbasics'),"library(dcgbasics)",swi_man_manual('library.html'),manual,32051).
i(section(3,'F.2.13','sec:summary-lib-dcghighorder'),"library(dcghighorder)",swi_man_manual('library.html'),manual,35532).
i(section(3,'F.2.14','sec:summary-lib-debug'),"library(debug)",swi_man_manual('library.html'),manual,36720).
i(section(3,'F.2.15','sec:summary-lib-dicts'),"library(dicts)",swi_man_manual('library.html'),manual,38349).
i(section(3,'F.2.16','sec:summary-lib-error'),"library(error)",swi_man_manual('library.html'),manual,40417).
i(section(3,'F.2.17','sec:summary-lib-fastrw'),"library(fastrw)",swi_man_manual('library.html'),manual,43227).
i(section(3,'F.2.18','sec:summary-lib-explain'),"library(explain)",swi_man_manual('library.html'),manual,43953).
i(section(3,'F.2.19','sec:summary-lib-help'),"library(help)",swi_man_manual('library.html'),manual,44416).
i(section(3,'F.2.20','sec:summary-lib-gensym'),"library(gensym)",swi_man_manual('library.html'),manual,45138).
i(section(3,'F.2.21','sec:summary-lib-heaps'),"library(heaps)",swi_man_manual('library.html'),manual,45854).
i(section(3,'F.2.22','sec:summary-lib-increval'),"library(increval)",swi_man_manual('library.html'),manual,47924).
i(section(3,'F.2.23','sec:summary-lib-intercept'),"library(intercept)",swi_man_manual('library.html'),manual,49895).
i(section(3,'F.2.24','sec:summary-lib-iostream'),"library(iostream)",swi_man_manual('library.html'),manual,51326).
i(section(3,'F.2.25','sec:summary-lib-listing'),"library(listing)",swi_man_manual('library.html'),manual,52027).
i(section(3,'F.2.26','sec:summary-lib-lists'),"library(lists)",swi_man_manual('library.html'),manual,53048).
i(section(3,'F.2.27','sec:summary-lib-macros'),"library(macros)",swi_man_manual('library.html'),manual,58514).
i(section(3,'F.2.28','sec:summary-lib-main'),"library(main)",swi_man_manual('library.html'),manual,59189).
i(section(3,'F.2.29','sec:summary-lib-occurs'),"library(occurs)",swi_man_manual('library.html'),manual,60948).
i(section(3,'F.2.30','sec:summary-lib-option'),"library(option)",swi_man_manual('library.html'),manual,62658).
i(section(3,'F.2.31','sec:summary-lib-optparse'),"library(optparse)",swi_man_manual('library.html'),manual,63793).
i(section(3,'F.2.32','sec:summary-lib-ordsets'),"library(ordsets)",swi_man_manual('library.html'),manual,64794).
i(section(3,'F.2.33','sec:summary-lib-persistency'),"library(persistency)",swi_man_manual('library.html'),manual,67943).
i(section(3,'F.2.34','sec:summary-lib-portraytext'),"library(portraytext)",swi_man_manual('library.html'),manual,69744).
i(section(3,'F.2.35','sec:summary-lib-predicate_options'),"library(predicate_options)",swi_man_manual('library.html'),manual,70569).
i(section(3,'F.2.36','sec:summary-lib-prologdebug'),"library(prologdebug)",swi_man_manual('library.html'),manual,72760).
i(section(3,'F.2.37','sec:summary-lib-prologjiti'),"library(prologjiti)",swi_man_manual('library.html'),manual,74129).
i(section(3,'F.2.38','sec:summary-lib-prologpack'),"library(prologpack)",swi_man_manual('library.html'),manual,74651).
i(section(3,'F.2.39','sec:summary-lib-prologtrace'),"library(prologtrace)",swi_man_manual('library.html'),manual,77024).
i(section(3,'F.2.40','sec:summary-lib-prologxref'),"library(prologxref)",swi_man_manual('library.html'),manual,77913).
i(section(3,'F.2.41','sec:summary-lib-pairs'),"library(pairs)",swi_man_manual('library.html'),manual,79276).
i(section(3,'F.2.42','sec:summary-lib-pio'),"library(pio)",swi_man_manual('library.html'),manual,80375).
i(section(4,'F.2.42.1','sec:summary-lib-pure-input'),"library(pure_input)",swi_man_manual('library.html'),manual,80545).
i(section(3,'F.2.43','sec:summary-lib-random'),"library(random)",swi_man_manual('library.html'),manual,81908).
i(section(3,'F.2.44','sec:summary-lib-rbtrees'),"library(rbtrees)",swi_man_manual('library.html'),manual,84477).
i(section(3,'F.2.45','sec:summary-lib-readutil'),"library(readutil)",swi_man_manual('library.html'),manual,90011).
i(section(3,'F.2.46','sec:summary-lib-record'),"library(record)",swi_man_manual('library.html'),manual,91503).
i(section(3,'F.2.47','sec:summary-lib-registry'),"library(registry)",swi_man_manual('library.html'),manual,91817).
i(section(3,'F.2.48','sec:summary-lib-rwlocks'),"library(rwlocks)",swi_man_manual('library.html'),manual,93142).
i(section(3,'F.2.49','sec:summary-lib-settings'),"library(settings)",swi_man_manual('library.html'),manual,93632).
i(section(3,'F.2.50','sec:summary-lib-simplex'),"library(simplex)",swi_man_manual('library.html'),manual,96046).
i(section(3,'F.2.51','sec:summary-lib-statistics'),"library(statistics)",swi_man_manual('library.html'),manual,97680).
i(section(3,'F.2.52','sec:summary-lib-terms'),"library(terms)",swi_man_manual('library.html'),manual,98891).
i(section(3,'F.2.53','sec:summary-lib-ugraphs'),"library(ugraphs)",swi_man_manual('library.html'),manual,101834).
i(section(3,'F.2.54','sec:summary-lib-url'),"library(url)",swi_man_manual('library.html'),manual,107125).
i(section(3,'F.2.55','sec:summary-lib-www_browser'),"library(www_browser)",swi_man_manual('library.html'),manual,108710).
i(section(3,'F.2.56','sec:summary-lib-solution_sequences'),"library(solution_sequences)",swi_man_manual('library.html'),manual,109443).
i(section(3,'F.2.57','sec:summary-lib-thread'),"library(thread)",swi_man_manual('library.html'),manual,111155).
i(section(3,'F.2.58','sec:summary-lib-thread_pool'),"library(thread_pool)",swi_man_manual('library.html'),manual,112845).
i(section(3,'F.2.59','sec:summary-lib-varnumbers'),"library(varnumbers)",swi_man_manual('library.html'),manual,114208).
i(section(3,'F.2.60','sec:summary-lib-yall'),"library(yall)",swi_man_manual('library.html'),manual,115374).
i(section(1,'E','sec:license'),"SWI-Prolog License Conditions and Tools",swi_man_manual('license.html'),manual,3503).
i(section(2,'2.20','sec:limits'),"System limits",swi_man_manual('limits.html'),manual,3517).
i(section(3,'2.20.1','sec:memlimit'),"Limits on memory areas",swi_man_manual('limits.html'),manual,3671).
i(section(4,'2.20.1.1','sec:heap'),"The heap",swi_man_manual('limits.html'),manual,6527).
i(section(3,'2.20.2','sec:morelimits'),"Other Limits",swi_man_manual('limits.html'),manual,7022).
i(section(3,'2.20.3','sec:resnames'),"Reserved Names",swi_man_manual('limits.html'),manual,9682).
i(section(2,'A.23','sec:listing'),"library(listing): List programs and pretty print clauses",swi_man_manual('listing.html'),manual,3513).
i(/(listing,0),"Lists all predicates defined in the calling module.",swi_man_manual('listing.html'),manual,5197).
i(/(listing,1),"List matching clauses.",swi_man_manual('listing.html'),manual,5542).
i(/(listing,2),"List matching clauses.",swi_man_manual('listing.html'),manual,5542).
i(/(portray_clause,1),"Portray‘Clause’on the current output stream.",swi_man_manual('listing.html'),manual,7890).
i(/(portray_clause,2),"Portray‘Clause’on the current output stream.",swi_man_manual('listing.html'),manual,7890).
i(/(portray_clause,3),"Portray‘Clause’on the current output stream.",swi_man_manual('listing.html'),manual,7890).
i(section(2,'A.24','sec:lists'),"library(lists): List Manipulation",swi_man_manual('lists.html'),manual,3513).
i(/(member,2),"True if Elem is a member of List.",swi_man_manual('lists.html'),manual,4554).
i(/(append,3),"List1AndList2 is the concatenation of List1 and List2",swi_man_manual('lists.html'),manual,5055).
i(/(append,2),"Concatenate a list of lists.",swi_man_manual('lists.html'),manual,5281).
i(/(prefix,2),"True iff Part is a leading substring of Whole.",swi_man_manual('lists.html'),manual,5684).
i(/(select,3),"Is true when List1, with Elem removed, results in List2.",swi_man_manual('lists.html'),manual,5933).
i(/(selectchk,3),"Semi-deterministic removal of first element in List that unifies with Elem.",swi_man_manual('lists.html'),manual,6251).
i(/(select,4),"Select from two lists at the same position.",swi_man_manual('lists.html'),manual,6523).
i(/(selectchk,4),"Semi-deterministic version of select/4.",swi_man_manual('lists.html'),manual,7359).
i(/(nextto,3),"True if Y directly follows X in List.",swi_man_manual('lists.html'),manual,7622).
i(/(delete,3),"Delete matching elements from a list.",swi_man_manual('lists.html'),manual,7815).
i(/(nth0,3),"True when Elem is the Index’th element of List.",swi_man_manual('lists.html'),manual,8711).
i(/(nth1,3),"Is true when Elem is the Index’th element of List.",swi_man_manual('lists.html'),manual,9197).
i(/(nth0,4),"Select/insert element at index.",swi_man_manual('lists.html'),manual,9556).
i(/(nth1,4),"As nth0/4, but counting starts at 1.",swi_man_manual('lists.html'),manual,10196).
i(/(last,2),"Succeeds when Last is the last element of List.",swi_man_manual('lists.html'),manual,10442).
i(/(proper_length,2),"True when Length is the number of elements in the proper list List.",swi_man_manual('lists.html'),manual,11043).
i(/(same_length,2),"Is true when List1 and List2 are lists with the same number of elements.",swi_man_manual('lists.html'),manual,11440).
i(/(reverse,2),"Is true when the elements of List2 are in reverse order compared to List1.",swi_man_manual('lists.html'),manual,11944).
i(/(permutation,2),"True when Xs is a permutation of Ys.",swi_man_manual('lists.html'),manual,12321).
i(/(flatten,2),"Is true if FlatList is a non-nested version of NestedList.",swi_man_manual('lists.html'),manual,13976).
i(/(clumped,2),"Pairs is a list of Item-Count pairs that represents the run length encoding of Items.",swi_man_manual('lists.html'),manual,14903).
i(/(subseq,3),"Is true when SubList contains a subset of the elements of List in the same order and Complement contains all elements of List not in SubList, also in the order they appear in List.",swi_man_manual('lists.html'),manual,15343).
i(/(max_member,2),"True when Max is the largest member in the standard order of terms.",swi_man_manual('lists.html'),manual,16093).
i(/(min_member,2),"True when Min is the smallest member in the standard order of terms.",swi_man_manual('lists.html'),manual,16612).
i(/(max_member,3),"True when Max is the largest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2.",swi_man_manual('lists.html'),manual,17132).
i(/(min_member,3),"True when Min is the smallest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2.",swi_man_manual('lists.html'),manual,17838).
i(/(sum_list,2),"Sum is the result of adding all numbers in List.",swi_man_manual('lists.html'),manual,18545).
i(/(max_list,2),"True if Max is the largest number in List.",swi_man_manual('lists.html'),manual,18775).
i(/(min_list,2),"True if Min is the smallest number in List.",swi_man_manual('lists.html'),manual,19192).
i(/(numlist,3),"List is a list [Low, Low+1, ... High].",swi_man_manual('lists.html'),manual,19610).
i(/(is_set,1),"True if Set is a proper list without duplicates.",swi_man_manual('lists.html'),manual,20072).
i(/(list_to_set,2),"True when Set has the same elements as List in the same order.",swi_man_manual('lists.html'),manual,20588).
i(/(intersection,3),"True if Set3 unifies with the intersection of Set1 and Set2.",swi_man_manual('lists.html'),manual,21887).
i(/(union,3),"True if Set3 unifies with the union of the lists Set1 and Set2.",swi_man_manual('lists.html'),manual,22558).
i(/(subset,2),"True if all elements of SubSet belong to Set as well.",swi_man_manual('lists.html'),manual,23203).
i(/(subtract,3),"Delete all elements in Delete from Set.",swi_man_manual('lists.html'),manual,23911).
i(section(2,'B.10','sec:loadfilehook'),"Hooks for loading files",swi_man_manual('loadfilehook.html'),manual,3515).
i(/(prolog_load_file,2),"Load a single object.",swi_man_manual('loadfilehook.html'),manual,4103).
i(:(prolog,/(open_source_hook,3)),"This hooks is called by the compiler to overrule the default open/3 call open(Path, read, Stream).",swi_man_manual('loadfilehook.html'),manual,5094).
i(:(prolog,/(comment_hook,3)),"This hook allows for processing comments encountered by the compiler.",swi_man_manual('loadfilehook.html'),manual,5901).
i(section(2,'4.23','sec:locale'),"Localization (locale) support",swi_man_manual('locale.html'),manual,3521).
i(/(locale_create,3),"Create a new locale object.",swi_man_manual('locale.html'),manual,5941).
i(/(locale_destroy,1),"Destroy a locale.",swi_man_manual('locale.html'),manual,7747).
i(/(locale_property,2),"True when Locale has Property.",swi_man_manual('locale.html'),manual,8043).
i(/(set_locale,1),"Set the default locale for the current thread, as well as the locale for the standard streams (user_input, user_output, user_error, current_output and current_input.",swi_man_manual('locale.html'),manual,8414).
i(/(current_locale,1),"True when Locale is the locale of the calling thread.",swi_man_manual('locale.html'),manual,9046).
i(section(2,'A.25','sec:macros'),"library(macros): Macro expansion",swi_man_manual('macros.html'),manual,3505).
i(section(3,'A.25.1','sec:macros-define-and-use'),"Defining and using macros",swi_man_manual('macros.html'),manual,4149).
i(section(3,'A.25.2','sec:macros-implementation'),"Implementation details",swi_man_manual('macros.html'),manual,6897).
i(section(3,'A.25.3','sec:macros-predicates'),"Predicates",swi_man_manual('macros.html'),manual,8342).
i(/(include_macros,3),"Include macros from another module.",swi_man_manual('macros.html'),manual,8537).
i(/(expand_macros,5),"Perform macro expansion on TermIn with layout PosIn to produce TermOut with layout PosOut.",swi_man_manual('macros.html'),manual,9026).
i(/(macro_position,1),"True when Position is the position of the macro.",swi_man_manual('macros.html'),manual,9603).
i(section(2,'A.26','sec:main'),"library(main): Provide entry point for scripts",swi_man_manual('main.html'),manual,3511).
i(/(main,0),"Call main/1 using the passed command-line arguments.",swi_man_manual('main.html'),manual,4626).
i(/(argv_options,3),"Parse command line arguments.",swi_man_manual('main.html'),manual,5305).
i(/(argv_options,4),"As argv_options/3 in guided mode, Currently this version allows parsing argument options throwing an exception rather than calling halt/1 by passing an empty list to ParseOptions.",swi_man_manual('main.html'),manual,11633).
i(/(argv_usage,1),"Use print_message/2 to print a usage message at Level.",swi_man_manual('main.html'),manual,12729).
i(/(cli_parse_debug_options,2),"Parse certain commandline options for debugging and development purposes.",swi_man_manual('main.html'),manual,14491).
i(/(cli_debug_opt_type,3),"Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.",swi_man_manual('main.html'),manual,15643).
i(/(cli_debug_opt_help,2),"Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.",swi_man_manual('main.html'),manual,15643).
i(/(cli_debug_opt_meta,2),"Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.",swi_man_manual('main.html'),manual,15643).
i(/(cli_enable_development_system,0),"Re-enable the development environment.",swi_man_manual('main.html'),manual,16632).
i(section(2,'4.22','sec:manipatom'),"Analysing and Constructing Atoms",swi_man_manual('manipatom.html'),manual,3517).
i(/(atom_codes,2),"Convert between an atom and a list of character codes (integers denoting characters).",swi_man_manual('manipatom.html'),manual,5645).
i(/(atom_chars,2),"Similar to atom_codes/2, but CharList is a list of characters (atoms of length 1) rather than a list of character codes (integers denoting characters).",swi_man_manual('manipatom.html'),manual,6929).
i(/(char_code,2),"Convert between a single character (an atom of length 1), and its character code (an integer denoting the corresponding character).",swi_man_manual('manipatom.html'),manual,7442).
i(/(number_chars,2),"Similar to atom_chars/2, but converts between a number and its representation as a list of characters (atoms of length 1).",swi_man_manual('manipatom.html'),manual,7852).
i(/(number_codes,2),"As number_chars/2, but converts to a list of character codes rather than characters.",swi_man_manual('manipatom.html'),manual,9561).
i(/(atom_number,2),"Realises the popular combination of atom_codes/2 and number_codes/2 to convert between atom and number (integer, float or non-integer rational) in one predicate, avoiding the intermediate list.",swi_man_manual('manipatom.html'),manual,10007).
i(/(name,2),"CodeList is a list of character codes representing the same text as Atomic.",swi_man_manual('manipatom.html'),manual,10841).
i(/(term_to_atom,2),"True if Atom describes a term that unifies with Term.",swi_man_manual('manipatom.html'),manual,12391).
i(/(atom_to_term,3),"Use Atom as input to read_term/2 using the option variable_names and return the read term in Term and the variable bindings in Bindings.",swi_man_manual('manipatom.html'),manual,13320).
i(/(atom_concat,3),"Atom3 forms the concatenation of Atom1 and Atom2.",swi_man_manual('manipatom.html'),manual,14251).
i(/(atomic_concat,3),"Atom represents the text after converting Atomic1 and Atomic2 to text and concatenating the result: ?- atomic_concat(name, 42, X).",swi_man_manual('manipatom.html'),manual,15004).
i(/(atomic_list_concat,2),"List is a list of strings, atoms, integers, floating point numbers or non-integer rationals.",swi_man_manual('manipatom.html'),manual,15358).
i(/(atomic_list_concat,3),"Creates an atom just like atomic_list_concat/2, but inserts Separator between each pair of inputs.",swi_man_manual('manipatom.html'),manual,15816).
i(/(atom_length,2),"True if Atom is an atom of Length characters.",swi_man_manual('manipatom.html'),manual,17058).
i(/(atom_prefix,2),"True if Atom starts with the characters from Prefix.",swi_man_manual('manipatom.html'),manual,17718).
i(/(sub_atom,5),"ISO predicate for breaking atoms.",swi_man_manual('manipatom.html'),manual,18084).
i(/(sub_atom_icasechk,3),"True when Needle is a sub atom of Haystack starting at Start.",swi_man_manual('manipatom.html'),manual,20549).
i(section(2,'6.15','sec:manipmodule'),"Module properties",swi_man_manual('manipmodule.html'),manual,3529).
i(/(current_module,1),"True if Module is a currently defined module.",swi_man_manual('manipmodule.html'),manual,3809).
i(/(module_property,2),"True if Property is a property of Module.",swi_man_manual('manipmodule.html'),manual,4204).
i(/(set_module,1),"Modify properties of the module.",swi_man_manual('manipmodule.html'),manual,7637).
i(section(2,'B.1','sec:manipstack'),"Examining the Environment Stack",swi_man_manual('manipstack.html'),manual,3520).
i(/(prolog_current_frame,1),"Unify Frame with an integer providing a reference to the parent of the current local stack frame.",swi_man_manual('manipstack.html'),manual,3714).
i(/(prolog_current_choice,1),"Unify Choice with an integer provided a reference to the last choice point.",swi_man_manual('manipstack.html'),manual,4170).
i(/(prolog_frame_attribute,3),"Obtain information about the local stack frame Frame.",swi_man_manual('manipstack.html'),manual,4647).
i(/(prolog_choice_attribute,3),"Extract attributes of a choice point.",swi_man_manual('manipstack.html'),manual,9827).
i(/(deterministic,1),"Unifies its argument with true if no choice point exists that is more recent than the entry of the clause in which it appears.",swi_man_manual('manipstack.html'),manual,11709).
i(section(2,'4.21','sec:manipterm'),"Analysing and Constructing Terms",swi_man_manual('manipterm.html'),manual,3517).
i(/(functor,3),"True when Term is a term with functor Name/Arity.",swi_man_manual('manipterm.html'),manual,3712).
i(/(functor,4),"As functor/3, but designed to work with zero-arity terms (e.g., a(), see section 5).",swi_man_manual('manipterm.html'),manual,5209).
i(/(arg,3),"Term should be instantiated to a term, Arg to an integer between 1 and the arity of Term.",swi_man_manual('manipterm.html'),manual,7106).
i(/(=..,2),"List is a list whose head is the functor of Term and the remaining arguments are the arguments of the term.",swi_man_manual('manipterm.html'),manual,8231).
i(/(compound_name_arity,3),"Version of functor/3 that only works for compound terms and can examine and create compound terms with zero arguments (e.g, name()).",swi_man_manual('manipterm.html'),manual,9327).
i(/(compound_name_arguments,3),"Rationalized version of =../2 that can compose and decompose compound terms with zero arguments.",swi_man_manual('manipterm.html'),manual,9967).
i(/(numbervars,3),"Unify the free variables in Term with a term $VAR(N), where N is the number of the variable.",swi_man_manual('manipterm.html'),manual,10421).
i(/(numbervars,4),"As numbervars/3, providing the following options: functor_name(+Atom)Name of the functor to use instead of $VAR.",swi_man_manual('manipterm.html'),manual,11908).
i(/(var_number,2),"True if Term is numbered by numbervars/3 and VarNumber is the number given to this variable.",swi_man_manual('manipterm.html'),manual,13919).
i(/(term_variables,2),"Unify List with a list of variables, each sharing with a unique variable of Term.",swi_man_manual('manipterm.html'),manual,14453).
i(/(nonground,2),"True when Var is a variable in Term.",swi_man_manual('manipterm.html'),manual,15517).
i(/(term_variables,3),"Difference list version of term_variables/2.",swi_man_manual('manipterm.html'),manual,16457).
i(/(term_singletons,2),"Unify List with a list of variables, each sharing with a variable that appears only once in Term.",swi_man_manual('manipterm.html'),manual,16817).
i(/(is_most_general_term,1),"True if Term is a callable term where all arguments are non-sharing variables or Term is a list whose members are all non-sharing variables.",swi_man_manual('manipterm.html'),manual,17643).
i(/(copy_term,2),"Create a version of In with renamed (fresh) variables and unify it to Out.",swi_man_manual('manipterm.html'),manual,19211).
i(/(copy_term,4),"Similar to copy_term/2, but only rename the variables in VarsIn that appear in In.",swi_man_manual('manipterm.html'),manual,20227).
i(/(copy_term_nat,4),"As copy_term/4, using the attributed variable semantics of copy_term_nat/2.",swi_man_manual('manipterm.html'),manual,21547).
i(section(3,'4.21.1','sec:setarg'),"Non-logical operations on terms",swi_man_manual('manipterm.html'),manual,22251).
i(/(setarg,3),"Extra-logical predicate.",swi_man_manual('manipterm.html'),manual,22897).
i(/(nb_setarg,3),"Assigns the Arg-th argument of the compound term Term with the given Value as setarg/3, but on backtracking the assignment is not reversed.",swi_man_manual('manipterm.html'),manual,24977).
i(/(nb_linkarg,3),"As nb_setarg/3, but like nb_linkval/2 it does not duplicate Value.",swi_man_manual('manipterm.html'),manual,26787).
i(/(duplicate_term,2),"Version of copy_term/2 that also copies ground terms and therefore ensures that destructive modification using setarg/3 does not affect the copy.",swi_man_manual('manipterm.html'),manual,27342).
i(/(same_term,2),"True if T1 and T2 are equivalent and will remain equivalent, even if setarg/3 is used on either of them.",swi_man_manual('manipterm.html'),manual,28191).
i(section(2,'4.43','sec:memory'),"Memory Management",swi_man_manual('memory.html'),manual,3507).
i(section(3,'4.43.1','sec:gc'),"Garbage collection",swi_man_manual('memory.html'),manual,3665).
i(/(garbage_collect,0),"Invoke the global and trail stack garbage collector.",swi_man_manual('memory.html'),manual,3836).
i(/(garbage_collect_atoms,0),"Reclaim unused atoms.",swi_man_manual('memory.html'),manual,4377).
i(/(garbage_collect_clauses,0),"Reclaim retracted clauses.",swi_man_manual('memory.html'),manual,5069).
i(/(set_prolog_gc_thread,1),"Control whether or not atom and clause garbage collection are executed in a dedicated thread.",swi_man_manual('memory.html'),manual,6730).
i(/(trim_stacks,0),"Release stack memory resources that are not in use at this moment, returning them to the operating system.",swi_man_manual('memory.html'),manual,7386).
i(/(set_prolog_stack,2),"Set a parameter for one of the Prolog runtime stacks.",swi_man_manual('memory.html'),manual,8300).
i(/(prolog_stack_property,2),"True if KeyValue is a current property of Stack.",swi_man_manual('memory.html'),manual,10984).
i(section(3,'4.43.2','sec:malloc'),"Heap memory (malloc)",swi_man_manual('memory.html'),manual,11512).
i(/(trim_heap,0),"his predicate attempts to return heap memory to the operating system.",swi_man_manual('memory.html'),manual,14458).
i(section(4,'4.43.2.1','sec:tcmalloc'),"TCMalloc control predicates",swi_man_manual('memory.html'),manual,15044).
i(/(malloc_property,1),"True when Property is a property of the current allocator.",swi_man_manual('memory.html'),manual,15361).
i(/(set_malloc,1),"Set properties described in malloc_property/1.",swi_man_manual('memory.html'),manual,18477).
i(/(thread_idle,2),"Indicates to the system that the calling thread will idle for some time while calling Goal as once/1.",swi_man_manual('memory.html'),manual,19019).
i(section(2,'4.8','sec:metacall'),"Meta-Call Predicates",swi_man_manual('metacall.html'),manual,3514).
i(/(call,1),"Call Goal.",swi_man_manual('metacall.html'),manual,4098).
i(/(call,2),"Append ExtraArg1, ExtraArg2, ... to the argument list of Goal and call the result.",swi_man_manual('metacall.html'),manual,5343).
i(/(apply,2),"Append the members of List to the arguments of Goal and call the resulting term.",swi_man_manual('metacall.html'),manual,6660).
i(/(not,1),"True if Goal cannot be proven.",swi_man_manual('metacall.html'),manual,7084).
i(/(once,1),"Make a possibly nondet goal semidet, i.e., succeed at most once.",swi_man_manual('metacall.html'),manual,7380).
i(/(ignore,1),"Calls Goal as once/1, but succeeds, regardless of whether Goal succeeded or not.",swi_man_manual('metacall.html'),manual,8541).
i(/(call_with_depth_limit,3),"If Goal can be proven without recursion deeper than Limit levels, call_with_depth_limit/3 succeeds, binding Result to the deepest recursion level used during the proof.",swi_man_manual('metacall.html'),manual,8917).
i(/(call_with_inference_limit,3),"Equivalent to call(Goal), but limits the number of inferences for each solution of Goal.",swi_man_manual('metacall.html'),manual,10828).
i(/(setup_call_cleanup,3),"Calls (once(Setup), Goal).",swi_man_manual('metacall.html'),manual,13195).
i(/(setup_call_catcher_cleanup,4),"Similar to setup_call_cleanup(Setup, Goal, Cleanup) with additional information on the reason for calling Cleanup.",swi_man_manual('metacall.html'),manual,16345).
i(/(call_cleanup,2),"Same as setup_call_cleanup(true, Goal, Cleanup).",swi_man_manual('metacall.html'),manual,17866).
i(/(undo,1),"Add Goal to the trail.",swi_man_manual('metacall.html'),manual,18559).
i(section(2,'6.5','sec:metapred'),"Defining a meta-predicate",swi_man_manual('metapred.html'),manual,3532).
i(/(meta_predicate,1),"Define the predicates referenced by the comma-separated list Head as meta-predicates.",swi_man_manual('metapred.html'),manual,6678).
i(section(2,'4.28','sec:miscarith'),"Misc arithmetic support predicates",swi_man_manual('miscarith.html'),manual,3519).
i(/(set_random,1),"Controls the random number generator accessible through the functions random/1 and random_float/0.",swi_man_manual('miscarith.html'),manual,3716).
i(/(random_property,1),"True when Option is a current property of the random generator.",swi_man_manual('miscarith.html'),manual,5181).
i(/(current_arithmetic_function,1),"True when Head is an evaluable function.",swi_man_manual('miscarith.html'),manual,6360).
i(section(2,'4.45','sec:miscpreds'),"Miscellaneous",swi_man_manual('miscpreds.html'),manual,3513).
i(/(dwim_match,2),"True if Atom1 matches Atom2 in the‘Do What I Mean' sense.",swi_man_manual('miscpreds.html'),manual,3688).
i(/(dwim_match,3),"Equivalent to dwim_match/2, but unifies Difference with an atom identifying the difference between Atom1 and Atom2.",swi_man_manual('miscpreds.html'),manual,4431).
i(/(wildcard_match,2),"True if String matches the wildcard pattern Pattern.",swi_man_manual('miscpreds.html'),manual,5032).
i(/(wildcard_match,3),"True if String matches the wildcard pattern Pattern.",swi_man_manual('miscpreds.html'),manual,5032).
i(/(sleep,1),"Suspend execution Time seconds.",swi_man_manual('miscpreds.html'),manual,6536).
i(section(2,'6.4','sec:module-autoload'),"Controlled autoloading for modules",swi_man_manual('module-autoload.html'),manual,3514).
i(/(autoload,1),"Declare that possibly missing predicates in the module in which this declaration occurs are to be resolved by using use_module/2 on File to (possibly) load the file and make the target predicate available.",swi_man_manual('module-autoload.html'),manual,6927).
i(/(autoload,2),"Declare that possibly missing predicates in the module in which this declaration occurs are to be resolved by using use_module/2 on File to (possibly) load the file and make the target predicate available.",swi_man_manual('module-autoload.html'),manual,6927).
i(section(2,'6.16','sec:modulecompat'),"Compatibility of the Module System",swi_man_manual('modulecompat.html'),manual,3523).
i(section(2,'6.9','sec:moduleop'),"Operators and modules",swi_man_manual('moduleop.html'),manual,3526).
i(section(1,'6','sec:modules'),"Modules",swi_man_manual('modules.html'),manual,3513).
i(section(2,'10.7','sec:mt-xpce'),"Multithreading and the XPCE graphics system",swi_man_manual('mt-xpce.html'),manual,3527).
i(/(in_pce_thread,1),"Assuming XPCE is running in the foreground thread, this call gives background threads the opportunity to make calls to the XPCE thread.",swi_man_manual('mt-xpce.html'),manual,4986).
i(/(in_pce_thread_sync,1),"Same as in_pce_thread/1, but wait for Goal to be completed.",swi_man_manual('mt-xpce.html'),manual,5593).
i(/(pce_dispatch,1),"Create a Prolog thread with the alias name pce for XPCE event handling.",swi_man_manual('mt-xpce.html'),manual,6956).
i(section(2,'6.7','sec:mtoplevel'),"Interacting with modules from the top level",swi_man_manual('mtoplevel.html'),manual,3518).
i(/(module,1),"The call module(Module) may be used to switch the default working module for the interactive top level (see prolog/0).",swi_man_manual('mtoplevel.html'),manual,4656).
i(section(2,'3.6','sec:navigator'),"The Prolog Navigator",swi_man_manual('navigator.html'),manual,3512).
i(section(2,'A.27','sec:nb_set'),"library(nb_set): Non-backtrackable set",swi_man_manual('nb_set.html'),manual,3515).
i(/(empty_nb_set,1),"True if Set is a non-backtrackable empty set.",swi_man_manual('nb_set.html'),manual,4853).
i(/(add_nb_set,2),"Add Key to Set.",swi_man_manual('nb_set.html'),manual,5034).
i(/(add_nb_set,3),"If Key is not in Set and New is unified to true, Key is added to Set.",swi_man_manual('nb_set.html'),manual,5397).
i(/(gen_nb_set,2),"Generate all members of Set on backtracking in the standard order of terms.",swi_man_manual('nb_set.html'),manual,6113).
i(/(size_nb_set,2),"Unify Size with the number of elements in Set.",swi_man_manual('nb_set.html'),manual,6449).
i(/(nb_set_to_list,2),"Unify List with a list of all elements in Set in the standard order of terms (i.e., an ordered list).",swi_man_manual('nb_set.html'),manual,6648).
i(section(2,'A.29','sec:occurs'),"library(occurs): Finding and counting sub-terms",swi_man_manual('occurs.html'),manual,3519).
i(/(contains_term,2),"Succeeds if Sub is contained in Term (=, deterministically)",swi_man_manual('occurs.html'),manual,4085).
i(/(contains_var,2),"Succeeds if Sub is contained in Term (==, deterministically)",swi_man_manual('occurs.html'),manual,4341).
i(/(free_of_term,2),"Succeeds of Sub does not unify to any subterm of Term",swi_man_manual('occurs.html'),manual,4596).
i(/(free_of_var,2),"Succeeds of Sub is not equal (==) to any subterm of Term",swi_man_manual('occurs.html'),manual,4843).
i(/(occurrences_of_term,3),"Count the number of SubTerms in Term that unify with SubTerm.",swi_man_manual('occurs.html'),manual,5105).
i(/(occurrences_of_var,3),"Count the number of SubTerms in Term that are equal to SubTerm.",swi_man_manual('occurs.html'),manual,5979).
i(/(sub_term,2),"Generates (on backtracking) all subterms of Term.",swi_man_manual('occurs.html'),manual,6670).
i(/(sub_var,2),"Generates (on backtracking) all subterms (==) of Term.",swi_man_manual('occurs.html'),manual,6855).
i(/(sub_term_shared_variables,3),"If Sub is a sub term of Term, Vars is bound to the list of variables in Sub that also appear outside Sub in Term.",swi_man_manual('occurs.html'),manual,7056).
i(section(2,'2.7','sec:online-help'),"Online Help",swi_man_manual('online-help.html'),manual,3512).
i(section(3,'2.7.1','sec:help'),"library(help): Text based manual",swi_man_manual('online-help.html'),manual,3672).
i(/(help,0),"Show help for What.",swi_man_manual('online-help.html'),manual,5110).
i(/(help,1),"Show help for What.",swi_man_manual('online-help.html'),manual,5110).
i(/(show_html_hook,1),"Hook called to display the extracted HTML document.",swi_man_manual('online-help.html'),manual,7101).
i(/(apropos,1),"Print objects from the manual whose name or summary match with Query.",swi_man_manual('online-help.html'),manual,7482).
i(section(3,'2.7.2','sec:explain'),"library(explain): Describe Prolog Terms",swi_man_manual('online-help.html'),manual,8792).
i(/(explain,1),"Give an explanation on Term.",swi_man_manual('online-help.html'),manual,9716).
i(/(explain,2),"True when Explanation is an explanation of Term.",swi_man_manual('online-help.html'),manual,10267).
i(section(2,'4.25','sec:operators'),"Operators",swi_man_manual('operators.html'),manual,3519).
i(/(op,3),"Declare Name to be an operator of type Type with precedence Precedence.",swi_man_manual('operators.html'),manual,7069).
i(/(current_op,3),"True if Name is currently defined as an operator of type Type with precedence Precedence.",swi_man_manual('operators.html'),manual,13305).
i(section(2,'F.4','sec:opsummary'),"Operators",swi_man_manual('opsummary.html'),manual,3532).
i(section(2,'A.30','sec:option'),"library(option): Option list processing",swi_man_manual('option.html'),manual,3515).
i(/(option,3),"Get an Option from OptionList.",swi_man_manual('option.html'),manual,6142).
i(/(option,2),"Get an Option from OptionList.",swi_man_manual('option.html'),manual,6569).
i(/(select_option,3),"Get and remove Option from an option list.",swi_man_manual('option.html'),manual,7058).
i(/(select_option,4),"Get and remove Option with default value.",swi_man_manual('option.html'),manual,7485).
i(/(merge_options,3),"Merge two option lists.",swi_man_manual('option.html'),manual,7966).
i(/(meta_options,3),"Perform meta-expansion on options that are module-sensitive.",swi_man_manual('option.html'),manual,8517).
i(/(dict_options,2),"Convert between an option list and a dictionary.",swi_man_manual('option.html'),manual,9283).
i(section(2,'A.31','sec:optparse'),"library(optparse): command line parsing",swi_man_manual('optparse.html'),manual,3513).
i(section(3,'A.31.1','sec:optparse-notes'),"Notes and tips",swi_man_manual('optparse.html'),manual,15493).
i(/(opt_arguments,3),"Extract commandline options according to a specification.",swi_man_manual('optparse.html'),manual,17795).
i(/(opt_parse,4),"Equivalent to opt_parse(OptsSpec, ApplArgs, Opts, PositionalArgs, []).",swi_man_manual('optparse.html'),manual,19068).
i(/(opt_parse,5),"Parse the arguments Args (as list of atoms) according to OptsSpec.",swi_man_manual('optparse.html'),manual,19346).
i(/(opt_help,2),"True when Help is a help string synthesized from OptsSpec.",swi_man_manual('optparse.html'),manual,21621).
i(/(parse_type,3),"Hook to parse option text Codes to an object of type Type.",swi_man_manual('optparse.html'),manual,21871).
i(section(2,'A.32','sec:ordsets'),"library(ordsets): Ordered set manipulation",swi_man_manual('ordsets.html'),manual,3513).
i(/(is_ordset,1),"True if Term is an ordered set.",swi_man_manual('ordsets.html'),manual,5459).
i(/(ord_empty,1),"True when List is the empty ordered set.",swi_man_manual('ordsets.html'),manual,5994).
i(/(ord_seteq,2),"True if Set1 and Set2 have the same elements.",swi_man_manual('ordsets.html'),manual,6267).
i(/(list_to_ord_set,2),"Transform a list into an ordered set.",swi_man_manual('ordsets.html'),manual,6690).
i(/(ord_intersect,2),"True if both ordered sets have a non-empty intersection.",swi_man_manual('ordsets.html'),manual,6943).
i(/(ord_disjoint,2),"True if Set1 and Set2 have no common elements.",swi_man_manual('ordsets.html'),manual,7174).
i(/(ord_intersect,3),"Intersection holds the common elements of Set1 and Set2.",swi_man_manual('ordsets.html'),manual,7513).
i(/(ord_intersection,2),"Intersection of a powerset.",swi_man_manual('ordsets.html'),manual,7905).
i(/(ord_intersection,3),"Intersection holds the common elements of Set1 and Set2.",swi_man_manual('ordsets.html'),manual,8382).
i(/(ord_intersection,4),"Intersection and difference between two ordered sets.",swi_man_manual('ordsets.html'),manual,8805).
i(/(ord_add_element,3),"Insert an element into the set.",swi_man_manual('ordsets.html'),manual,9479).
i(/(ord_del_element,3),"Delete an element from an ordered set.",swi_man_manual('ordsets.html'),manual,9762).
i(/(ord_selectchk,3),"Selectchk/3, specialised for ordered sets.",swi_man_manual('ordsets.html'),manual,10057).
i(/(ord_memberchk,2),"True if Element is a member of OrdSet, compared using ==.",swi_man_manual('ordsets.html'),manual,10931).
i(/(ord_subset,2),"Is true if all elements of Sub are in Super",swi_man_manual('ordsets.html'),manual,11888).
i(/(ord_subtract,3),"Diff is the set holding all elements of InOSet that are not in NotInOSet.",swi_man_manual('ordsets.html'),manual,12122).
i(/(ord_union,2),"True if Union is the union of all elements in the superset SetOfSets.",swi_man_manual('ordsets.html'),manual,12412).
i(/(ord_union,3),"Union is the union of Set1 and Set2",swi_man_manual('ordsets.html'),manual,12897).
i(/(ord_union,4),"True iff ord_union(Set1, Set2, Union) and ord_subtract(Set2, Set1, New).",swi_man_manual('ordsets.html'),manual,13136).
i(/(ord_symdiff,3),"Is true when Difference is the symmetric difference of Set1 and Set2.",swi_man_manual('ordsets.html'),manual,13411).
i(section(2,'E.3','sec:otherlicenses'),"License conditions inherited from used code",swi_man_manual('otherlicenses.html'),manual,3522).
i(section(3,'E.3.1','sec:cryptlicense'),"Cryptographic routines",swi_man_manual('otherlicenses.html'),manual,3718).
i(section(2,'6.6','sec:overrule'),"Overruling Module Boundaries",swi_man_manual('overrule.html'),manual,3520).
i(section(3,'6.6.1','sec:set-calling-context'),"Explicit manipulation of the calling context",swi_man_manual('overrule.html'),manual,5532).
i(/(@,2),"Execute Goal, setting the calling context to Module.",swi_man_manual('overrule.html'),manual,6171).
i(section(1,'2','sec:overview'),"Overview",swi_man_manual('overview.html'),manual,3515).
i(section(2,'2.15','sec:packs'),"Packs: community add-ons",swi_man_manual('packs.html'),manual,3515).
i(/(attach_packs,0),"Attaches all packs in subdirectories of directories that are accessible through the file search path (see absolute_file_name/3) pack.",swi_man_manual('packs.html'),manual,4083).
i(/(attach_packs,1),"Attach all packs in subdirectories of Directory.",swi_man_manual('packs.html'),manual,4886).
i(/(attach_packs,2),"Attach all packs in subdirectories of Directory.",swi_man_manual('packs.html'),manual,5126).
i(section(2,'A.33','sec:pairs'),"library(pairs): Operations on key-value lists",swi_man_manual('pairs.html'),manual,3523).
i(/(pairs_keys_values,3),"True if Keys holds the keys of Pairs and Values the values.",swi_man_manual('pairs.html'),manual,4344).
i(/(pairs_values,2),"Remove the keys from a list of Key-Value pairs.",swi_man_manual('pairs.html'),manual,4987).
i(/(pairs_keys,2),"Remove the values from a list of Key-Value pairs.",swi_man_manual('pairs.html'),manual,5263).
i(/(group_pairs_by_key,2),"Group values with equivalent (==/2) consecutive keys.",swi_man_manual('pairs.html'),manual,5533).
i(/(transpose_pairs,2),"Swap Key-Value to Value-Key.",swi_man_manual('pairs.html'),manual,6798).
i(/(map_list_to_pairs,3),"Create a Key-Value list by mapping each element of List.",swi_man_manual('pairs.html'),manual,7124).
i(section(2,'3.4','sec:pceemacs'),"Using the PceEmacs built-in editor",swi_man_manual('pceemacs.html'),manual,3524).
i(section(3,'3.4.1','sec:runpceemacs'),"Activating PceEmacs",swi_man_manual('pceemacs.html'),manual,3701).
i(section(3,'3.4.2','sec:emacsbluff'),"Bluffing through PceEmacs",swi_man_manual('pceemacs.html'),manual,4301).
i(section(4,'3.4.2.1','sec:pceemacsmodes'),"Edit modes",swi_man_manual('pceemacs.html'),manual,5262).
i(section(4,'3.4.2.2','sec:pceemacscommands'),"Frequently used editor commands",swi_man_manual('pceemacs.html'),manual,6396).
i(section(3,'3.4.3','sec:emacsprologmode'),"Prolog Mode",swi_man_manual('pceemacs.html'),manual,10668).
i(section(4,'3.4.3.1','sec:pceemacshelp'),"Finding your way around",swi_man_manual('pceemacs.html'),manual,15773).
i(section(2,'A.34','sec:persistency'),"library(persistency): Provide persistent dynamic predicates",swi_man_manual('persistency.html'),manual,3503).
i(/(persistent,1),"Declare dynamic database terms.",swi_man_manual('persistency.html'),manual,6862).
i(/(current_persistent_predicate,1),"True if PI is a predicate that provides access to the persistent database DB.",swi_man_manual('persistency.html'),manual,7415).
i(/(db_attach,2),"Use File as persistent database for the calling module.",swi_man_manual('persistency.html'),manual,7698).
i(/(db_attached,1),"True if the context module attached to the persistent database File.",swi_man_manual('persistency.html'),manual,8421).
i(/(db_assert,1),"Assert Term into the database and record it for persistency.",swi_man_manual('persistency.html'),manual,8663).
i(/(db_detach,0),"Detach persistency from the calling module and delete all persistent clauses from the Prolog database.",swi_man_manual('persistency.html'),manual,8960).
i(/(db_retractall,1),"Retract all matching facts and do the same in the database.",swi_man_manual('persistency.html'),manual,9346).
i(/(db_retract,1),"Retract terms from the database one-by-one.",swi_man_manual('persistency.html'),manual,9716).
i(/(db_sync,1),"Synchronise database with the associated file.",swi_man_manual('persistency.html'),manual,9919).
i(/(db_sync_all,1),"Sync all registered databases.",swi_man_manual('persistency.html'),manual,11519).
i(section(2,'A.35','sec:pio'),"library(pio): Pure I/O",swi_man_manual('pio.html'),manual,3531).
i(section(3,'A.35.1','sec:pureinput'),"library(pure_input): Pure Input from files and streams",swi_man_manual('pio.html'),manual,3960).
i(/(phrase_from_file,2),"Process the content of File using the DCG rule Grammar.",swi_man_manual('pio.html'),manual,5239).
i(/(phrase_from_file,3),"As phrase_from_file/2, providing additional Options.",swi_man_manual('pio.html'),manual,6602).
i(/(phrase_from_stream,2),"Run Grammer against the character codes on Stream.",swi_man_manual('pio.html'),manual,6998).
i(//(syntax_error,1),"Throw the syntax error Error at the current location of the input.",swi_man_manual('pio.html'),manual,7247).
i(//(lazy_list_location,1),"Determine current (error) location in a lazy list.",swi_man_manual('pio.html'),manual,7719).
i(//(lazy_list_character_count,1),"True when CharCount is the current character count in the Lazy list.",swi_man_manual('pio.html'),manual,8669).
i(/(stream_to_lazy_list,2),"Create a lazy list representing the character codes in Stream.",swi_man_manual('pio.html'),manual,9337).
i(section(2,'12.5','sec:plld'),"Linking embedded applications using swipl-ld",swi_man_manual('plld.html'),manual,3531).
i(section(3,'12.5.1','sec:foreign-example'),"A simple example",swi_man_manual('plld.html'),manual,10533).
i(section(2,'C.1','sec:portabilitystrategies'),"Some considerations for writing portable code",swi_man_manual('portabilitystrategies.html'),manual,3526).
i(section(2,'A.36','sec:portraytext'),"library(portray_text): Portray text",swi_man_manual('portraytext.html'),manual,3527).
i(/(portray_text,1),"Switch portraying on or off.",swi_man_manual('portraytext.html'),manual,6267).
i(/(set_portray_text,2),"Set options for portraying.",swi_man_manual('portraytext.html'),manual,6858).
i(/(set_portray_text,3),"Set options for portraying.",swi_man_manual('portraytext.html'),manual,6858).
i(/(is_text_code,1),"Multifile hook that can be used to extend the set of character codes that is recognised as likely text.",swi_man_manual('portraytext.html'),manual,7782).
i(section(2,'9.3','sec:practical'),"CHR in SWI-Prolog Programs",swi_man_manual('practical.html'),manual,3556).
i(section(3,'9.3.1','sec:chr-embedding'),"Embedding CHR in Prolog Programs",swi_man_manual('practical.html'),manual,3723).
i(section(3,'9.3.2','sec:chr-declarations'),"CHR Constraint declaration",swi_man_manual('practical.html'),manual,4130).
i(/(chr_constraint,1),"Every constraint used in CHR rules has to be declared with a chr_constraint/1 declaration by the constraint specifier.",swi_man_manual('practical.html'),manual,4335).
i(/(chr_type,1),"User-defined types are algebraic data types, similar to those in Haskell or the discriminated unions in Mercury.",swi_man_manual('practical.html'),manual,7563).
i(section(3,'9.3.3','sec:chr-compilation'),"CHR Compilation",swi_man_manual('practical.html'),manual,11989).
i(section(2,'4.1','sec:preddesc'),"Notation of Predicate Descriptions",swi_man_manual('preddesc.html'),manual,3510).
i(section(3,'4.1.1','sec:argmode'),"The argument mode indicator",swi_man_manual('preddesc.html'),manual,3917).
i(section(3,'4.1.2','sec:predicate-indic'),"Predicate indicators",swi_man_manual('preddesc.html'),manual,8544).
i(section(4,'4.1.2.1','sec:nonterminal-indic'),"Non-terminal indicators",swi_man_manual('preddesc.html'),manual,9143).
i(section(3,'4.1.3','sec:determinism'),"Predicate behaviour and determinism",swi_man_manual('preddesc.html'),manual,10718).
i(section(2,'A.37','sec:predicate_options'),"library(predicate_options): Declare option-processing of predicates",swi_man_manual('predicate_options.html'),manual,3531).
i(section(3,'A.37.1','sec:predopts-pro-cons'),"The strength and weakness of predicate options",swi_man_manual('predicate_options.html'),manual,3830).
i(section(3,'A.37.2','sec:predopts-environment'),"Options as arguments or environment?",swi_man_manual('predicate_options.html'),manual,6741).
i(section(3,'A.37.3','sec:predopts-improving'),"Improving on the current situation",swi_man_manual('predicate_options.html'),manual,8643).
i(section(4,'A.37.3.1','sec:predopts-as-types'),"Options as types",swi_man_manual('predicate_options.html'),manual,9262).
i(section(4,'A.37.3.2','sec:predopts-reflextion'),"Reflective access to options",swi_man_manual('predicate_options.html'),manual,10539).
i(/(predicate_options,3),"Declare that the predicate PI processes options on Arg.",swi_man_manual('predicate_options.html'),manual,11191).
i(/(assert_predicate_options,4),"As predicate_options(:PI, +Arg, +Options).",swi_man_manual('predicate_options.html'),manual,12702).
i(/(current_predicate_option,3),"True when Arg of PI processes Option.",swi_man_manual('predicate_options.html'),manual,13344).
i(/(check_predicate_option,3),"Verify predicate options at runtime.",swi_man_manual('predicate_options.html'),manual,14110).
i(/(current_option_arg,2),"True when Arg of PI processes predicate options.",swi_man_manual('predicate_options.html'),manual,15045).
i(/(current_predicate_options,3),"True when Options is the current active option declaration for PI on Arg.",swi_man_manual('predicate_options.html'),manual,15452).
i(/(check_predicate_options,0),"Analyse loaded program for erroneous options.",swi_man_manual('predicate_options.html'),manual,16218).
i(/(derive_predicate_options,0),"Derive new predicate option declarations.",swi_man_manual('predicate_options.html'),manual,17322).
i(/(retractall_predicate_options,0),"Remove all dynamically (derived) predicate options.",swi_man_manual('predicate_options.html'),manual,17968).
i(/(derived_predicate_options,3),"Derive option arguments using static analysis.",swi_man_manual('predicate_options.html'),manual,18194).
i(/(derived_predicate_options,1),"Derive predicate option declarations for a module.",swi_man_manual('predicate_options.html'),manual,18569).
i(section(2,'F.1','sec:predsummary'),"Predicates",swi_man_manual('predsummary.html'),manual,3514).
i(section(2,'4.11','sec:printmsg'),"Printing messages",swi_man_manual('printmsg.html'),manual,3517).
i(/(print_message,2),"The predicate print_message/2 is used by the system and libraries to print messages.",swi_man_manual('printmsg.html'),manual,4769).
i(/(print_message_lines,3),"Print a message (see print_message/2) that has been translated to a list of message elements.",swi_man_manual('printmsg.html'),manual,10406).
i(/(message_hook,3),"Hook predicate that may be defined in the module user to intercept messages from print_message/2.",swi_man_manual('printmsg.html'),manual,13833).
i(/(thread_message_hook,3),"As message_hook/3, but this predicate is local to the calling thread (see thread_local/1).",swi_man_manual('printmsg.html'),manual,14779).
i(/(message_property,2),"This hook can be used to define additional message kinds and the way they are displayed.",swi_man_manual('printmsg.html'),manual,15474).
i(:(prolog,/(message_line_element,2)),"This hook is called to print the individual elements of a message from print_message_lines/3.",swi_man_manual('printmsg.html'),manual,17547).
i(:(prolog,/(message_prefix_hook,2)),"This hook is called to add context to the message prefix.",swi_man_manual('printmsg.html'),manual,18023).
i(/(message_to_string,2),"Translates a message term into a string object (see section 5.2).",swi_man_manual('printmsg.html'),manual,18484).
i(/(version,0),"Write the SWI-Prolog banner message as well as additional messages registered using version/1.",swi_man_manual('printmsg.html'),manual,18742).
i(/(version,1),"Register additional messages to be printed by version/0.",swi_man_manual('printmsg.html'),manual,19115).
i(section(3,'4.11.1','sec:libprintmsg'),"Printing from libraries",swi_man_manual('printmsg.html'),manual,19545).
i(section(2,'4.42','sec:profile'),"Execution profiling",swi_man_manual('profile.html'),manual,3535).
i(section(3,'4.42.1','sec:profiling-predicates'),"Profiling predicates",swi_man_manual('profile.html'),manual,4525).
i(/(profile,1),"Execute Goal just like once/1, collecting profiling statistics, and call show_profile([]).",swi_man_manual('profile.html'),manual,4806).
i(/(profile,2),"Execute Goal just like once/1.",swi_man_manual('profile.html'),manual,5221).
i(/(show_profile,1),"This predicate first calls prolog:show_profile_hook/1.",swi_man_manual('profile.html'),manual,6357).
i(/(profiler,2),"Query or change the status of the profiler.",swi_man_manual('profile.html'),manual,7158).
i(/(reset_profiler,0),"Switches the profiler to false and clears all collected statistics.",swi_man_manual('profile.html'),manual,7777).
i(/(noprofile,1),"Declares the predicate Name/Arity to be invisible to the profiler.",swi_man_manual('profile.html'),manual,7970).
i(section(3,'4.42.2','sec:pceprofile'),"Visualizing profiling data",swi_man_manual('profile.html'),manual,8646).
i(section(3,'4.42.3','sec:profilegather'),"Information gathering",swi_man_manual('profile.html'),manual,11525).
i(section(4,'4.42.3.1','sec:winprofile'),"Profiling in the Windows Implementation",swi_man_manual('profile.html'),manual,13743).
i(section(2,'14.4','sec:program-resources'),"Using program resources",swi_man_manual('program-resources.html'),manual,3571).
i(section(3,'14.4.1','sec:res-files'),"Resources as files",swi_man_manual('program-resources.html'),manual,4935).
i(section(3,'14.4.2','sec:res-resources'),"Access resources using open_resource",swi_man_manual('program-resources.html'),manual,7743).
i(/(open_resource,2),"Opens the resource specified by Name.",swi_man_manual('program-resources.html'),manual,8587).
i(/(open_resource,3),"Opens the resource specified by Name.",swi_man_manual('program-resources.html'),manual,8587).
i(section(3,'14.4.3','sec:res-declare'),"Declaring resources",swi_man_manual('program-resources.html'),manual,10558).
i(/(resource,2),"These predicates are defined as dynamic predicates in the module user.",swi_man_manual('program-resources.html'),manual,10748).
i(/(resource,3),"These predicates are defined as dynamic predicates in the module user.",swi_man_manual('program-resources.html'),manual,10748).
i(section(3,'14.4.4','sec:swiplrc'),"Managing resource files",swi_man_manual('program-resources.html'),manual,13011).
i(section(2,'3.1','sec:projectfiles'),"The project source files",swi_man_manual('projectfiles.html'),manual,3516).
i(section(3,'3.1.1','sec:filelocs'),"File Names and Locations",swi_man_manual('projectfiles.html'),manual,4080).
i(section(4,'3.1.1.1','sec:fileext'),"File Name Extensions",swi_man_manual('projectfiles.html'),manual,4251).
i(section(4,'3.1.1.2','sec:projectdirs'),"Project Directories",swi_man_manual('projectfiles.html'),manual,5664).
i(section(4,'3.1.1.3','sec:projectpaths'),"Sub-projects using search paths",swi_man_manual('projectfiles.html'),manual,7277).
i(section(3,'3.1.2','sec:project-special-files'),"Project Special Files",swi_man_manual('projectfiles.html'),manual,9035).
i(section(3,'3.1.3','sec:intsrcfile'),"International source files",swi_man_manual('projectfiles.html'),manual,10900).
i(section(2,'B.8','sec:prolog-event'),"Prolog events",swi_man_manual('prolog-event.html'),manual,3520).
i(/(prolog_listen,2),"Call Closure if an event that matches Channel happens inside Prolog.",swi_man_manual('prolog-event.html'),manual,4065).
i(/(prolog_listen,3),"Call Closure if an event that matches Channel happens inside Prolog.",swi_man_manual('prolog-event.html'),manual,4065).
i(/(prolog_unlisten,2),"Remove matching closures registered with prolog_listen/3.",swi_man_manual('prolog-event.html'),manual,10813).
i(section(2,'A.38','sec:prologdebug'),"library(prolog_debug): User level debugging tools",swi_man_manual('prologdebug.html'),manual,3541).
i(:(prolog,/(debug_control_hook,1)),"Allow user-hooks in the Prolog debugger interaction.",swi_man_manual('prologdebug.html'),manual,3979).
i(/(spy,1),"Set/clear spy-points.",swi_man_manual('prologdebug.html'),manual,4397).
i(/(nospy,1),"Set/clear spy-points.",swi_man_manual('prologdebug.html'),manual,4397).
i(/(nospyall,0),"Set/clear spy-points.",swi_man_manual('prologdebug.html'),manual,4397).
i(/(debugging,0),"Report current status of the debugger.",swi_man_manual('prologdebug.html'),manual,5485).
i(/(debugging_hook,0),"Multifile hook that is called as forall(debugging_hook, true) and that may be used to extend the information printed from other debugging libraries.",swi_man_manual('prologdebug.html'),manual,5660).
i(/(trap,1),"Install a trap on error(Formal, Context) exceptions that unify.",swi_man_manual('prologdebug.html'),manual,5978).
i(/(notrap,1),"Install a trap on error(Formal, Context) exceptions that unify.",swi_man_manual('prologdebug.html'),manual,5978).
i(/(trap_alias,2),"Define short hands for commonly used exceptions.",swi_man_manual('prologdebug.html'),manual,8093).
i(section(2,'A.39','sec:prologjiti'),"library(prolog_jiti): Just In Time Indexing (JITI) utilities",swi_man_manual('prologjiti.html'),manual,3531).
i(/(jiti_list,0),"List the JITI (Just In Time Indexes) of selected predicates.",swi_man_manual('prologjiti.html'),manual,4095).
i(/(jiti_list,1),"List the JITI (Just In Time Indexes) of selected predicates.",swi_man_manual('prologjiti.html'),manual,4095).
i(section(2,'A.41','sec:prologpack'),"library(prolog_pack): A package manager for Prolog",swi_man_manual('prologpack.html'),manual,3529).
i(/(pack_list_installed,0),"List currently installed packages.",swi_man_manual('prologpack.html'),manual,5436).
i(/(pack_info,1),"Print more detailed information about Pack.",swi_man_manual('prologpack.html'),manual,5951).
i(/(pack_search,1),"Query package server and installed packages and display results.",swi_man_manual('prologpack.html'),manual,6125).
i(/(pack_list,1),"Query package server and installed packages and display results.",swi_man_manual('prologpack.html'),manual,6125).
i(/(pack_install,1),"Install a package.",swi_man_manual('prologpack.html'),manual,7672).
i(/(pack_install,2),"Install package Name.",swi_man_manual('prologpack.html'),manual,8521).
i(/(pack_url_file,2),"True if File is a unique id for the referenced pack and version.",swi_man_manual('prologpack.html'),manual,11440).
i(/(ssl_verify,5),"Currently we accept all certificates.",swi_man_manual('prologpack.html'),manual,11797).
i(/(pack_rebuild,1),"Rebuild possible foreign components of Pack.",swi_man_manual('prologpack.html'),manual,12102).
i(/(pack_rebuild,0),"Rebuild foreign components of all packages.",swi_man_manual('prologpack.html'),manual,12318).
i(/(pack_upgrade,1),"Try to upgrade the package Pack.",swi_man_manual('prologpack.html'),manual,12504).
i(/(pack_remove,1),"Remove the indicated package.",swi_man_manual('prologpack.html'),manual,12833).
i(/(pack_property,2),"True when Property is a property of an installed Pack.",swi_man_manual('prologpack.html'),manual,13021).
i(/(atom_version,2),"Translate between atomic version representation and term representation.",swi_man_manual('prologpack.html'),manual,14211).
i(/(pack_attach,2),"Attach a single package in Dir.",swi_man_manual('prologpack.html'),manual,14535).
i(section(2,'A.40','sec:prologtrace'),"library(prolog_trace): Print access to predicates",swi_man_manual('prologtrace.html'),manual,3527).
i(/(trace,1),"Print passes through ports of specified predicates.",swi_man_manual('prologtrace.html'),manual,3980).
i(/(trace,2),"Print passes through ports of specified predicates.",swi_man_manual('prologtrace.html'),manual,3980).
i(/(tracing,2),"True if Spec is traced using Ports",swi_man_manual('prologtrace.html'),manual,6036).
i(/(list_tracing,0),"List predicates we are currently tracing",swi_man_manual('prologtrace.html'),manual,6217).
i(/(notraceall,0),"Remove all trace points",swi_man_manual('prologtrace.html'),manual,6365).
i(section(2,'A.42','sec:prologxref'),"library(prolog_xref): Prolog cross-referencer data collection",swi_man_manual('prologxref.html'),manual,3537).
i(:(prolog,/(called_by,4)),"True when Called is a list of callable terms called from Goal, handled by the predicate Module:Goal and executed in the context of the module Context.",swi_man_manual('prologxref.html'),manual,5843).
i(:(prolog,/(called_by,2)),"If this succeeds, the cross-referencer assumes Goal may call any of the goals in ListOfCalled.",swi_man_manual('prologxref.html'),manual,6414).
i(:(prolog,/(meta_goal,2)),"Define meta-predicates.",swi_man_manual('prologxref.html'),manual,7017).
i(:(prolog,/(hook,1)),"True if Goal is a hook that is called spontaneously (e.g., from foreign code).",swi_man_manual('prologxref.html'),manual,7299).
i(/(xref_source,1),"Generate the cross-reference data for Source if not already done and the source is not modified.",swi_man_manual('prologxref.html'),manual,7583).
i(/(xref_source,2),"Generate the cross-reference data for Source if not already done and the source is not modified.",swi_man_manual('prologxref.html'),manual,7583).
i(/(xref_clean,1),"Reset the database for the given source.",swi_man_manual('prologxref.html'),manual,9406).
i(/(xref_current_source,1),"Check what sources have been analysed.",swi_man_manual('prologxref.html'),manual,9605).
i(/(xref_done,2),"Cross-reference executed at Time",swi_man_manual('prologxref.html'),manual,9785).
i(/(xref_called,3),"True when By is called from Called in Source.",swi_man_manual('prologxref.html'),manual,9993).
i(/(xref_called,4),"True when By is called from Called in Source.",swi_man_manual('prologxref.html'),manual,9993).
i(/(xref_called,5),"True when By is called from Called in Source.",swi_man_manual('prologxref.html'),manual,9993).
i(/(xref_defined,3),"Test if Goal is accessible in Source.",swi_man_manual('prologxref.html'),manual,11826).
i(/(xref_definition_line,2),"If the 3th argument of xref_defined contains line info, return this in Line.",swi_man_manual('prologxref.html'),manual,12798).
i(/(xref_exported,2),"True when Source exports Head.",swi_man_manual('prologxref.html'),manual,13034).
i(/(xref_module,2),"True if Module is defined in Source.",swi_man_manual('prologxref.html'),manual,13262).
i(/(xref_uses_file,3),"True when Source tries to load a file using Spec.",swi_man_manual('prologxref.html'),manual,13494).
i(/(xref_op,2),"Give the operators active inside the module.",swi_man_manual('prologxref.html'),manual,14071).
i(/(xref_prolog_flag,4),"True when Flag is set to Value at Line in Source.",swi_man_manual('prologxref.html'),manual,14506).
i(/(xref_comment,3),"Is true when Source has a section comment with Title and Comment",swi_man_manual('prologxref.html'),manual,14878).
i(/(xref_comment,4),"Is true when Head in Source has the given PlDoc comment.",swi_man_manual('prologxref.html'),manual,15161).
i(/(xref_mode,3),"Is true when Source provides a predicate with Mode and determinism.",swi_man_manual('prologxref.html'),manual,15434).
i(/(xref_option,2),"True when Source was processed using Option.",swi_man_manual('prologxref.html'),manual,15698).
i(/(xref_meta,3),"True when Head calls Called in Source.",swi_man_manual('prologxref.html'),manual,16036).
i(/(xref_meta,2),"True when Called is a list of terms called from Head.",swi_man_manual('prologxref.html'),manual,16466).
i(/(xref_meta_src,3),"True when Called is a list of terms called from Head.",swi_man_manual('prologxref.html'),manual,16466).
i(/(xref_hook,1),"Definition of known hooks.",swi_man_manual('prologxref.html'),manual,17469).
i(/(xref_public_list,3),"Find meta-information about File.",swi_man_manual('prologxref.html'),manual,17742).
i(/(xref_public_list,4),"Find meta-information about File.",swi_man_manual('prologxref.html'),manual,19541).
i(/(xref_public_list,6),"Find meta-information about File.",swi_man_manual('prologxref.html'),manual,19541).
i(/(xref_public_list,7),"Find meta-information about File.",swi_man_manual('prologxref.html'),manual,19541).
i(/(xref_source_file,3),"Find named source file from Spec, relative to Src.",swi_man_manual('prologxref.html'),manual,21180).
i(/(xref_source_file,4),"Find named source file from Spec, relative to Src.",swi_man_manual('prologxref.html'),manual,21180).
i(section(2,'14.6','sec:protect-code'),"Protecting your code",swi_man_manual('protect-code.html'),manual,3553).
i(section(3,'14.6.1','sec:obfuscate'),"Obfuscating code in saved states",swi_man_manual('protect-code.html'),manual,6747).
i(section(2,'4.38','sec:protocol'),"Creating a Protocol of the User Interaction",swi_man_manual('protocol.html'),manual,3519).
i(/(protocol,1),"Start protocolling on file File.",swi_man_manual('protocol.html'),manual,4035).
i(/(protocola,1),"Equivalent to protocol/1, but does not truncate the File if it exists.",swi_man_manual('protocol.html'),manual,4305).
i(/(noprotocol,0),"Stop making a protocol of the user interaction.",swi_man_manual('protocol.html'),manual,4591).
i(/(protocolling,1),"True if a protocol was started with protocol/1 or protocola/1 and unifies File with the current protocol output file.",swi_man_manual('protocol.html'),manual,4783).
i(section(2,'A.43','sec:quasiquotations'),"library(quasi_quotations): Define Quasi Quotation syntax",swi_man_manual('quasiquotations.html'),manual,3519).
i(/(with_quasi_quotation_input,3),"Process the quasi-quoted Content using Stream parsed by Goal.",swi_man_manual('quasiquotations.html'),manual,7656).
i(/(phrase_from_quasi_quotation,2),"Process the quasi quotation using the DCG Grammar.",swi_man_manual('quasiquotations.html'),manual,8763).
i(/(quasi_quotation_syntax,1),"Declare the predicate SyntaxName/4 to implement the the quasi quote syntax SyntaxName.",swi_man_manual('quasiquotations.html'),manual,9301).
i(/(quasi_quotation_syntax_error,1),"Report syntax_error(Error) using the current location in the quasi quoted input parser.",swi_man_manual('quasiquotations.html'),manual,9627).
i(section(2,'2.1','sec:quickstart'),"Getting started quickly",swi_man_manual('quickstart.html'),manual,3518).
i(section(3,'2.1.1','sec:starting'),"Starting SWI-Prolog",swi_man_manual('quickstart.html'),manual,3688).
i(section(4,'2.1.1.1','sec:startunix'),"Starting SWI-Prolog on Unix",swi_man_manual('quickstart.html'),manual,3854).
i(section(4,'2.1.1.2','sec:startwin'),"Starting SWI-Prolog on Windows",swi_man_manual('quickstart.html'),manual,6528).
i(section(3,'2.1.2','sec:consultuser'),"Adding rules from the console",swi_man_manual('quickstart.html'),manual,7711).
i(section(3,'2.1.3','sec:execquery'),"Executing a query",swi_man_manual('quickstart.html'),manual,8732).
i(section(3,'2.1.4','sec:viewprogram'),"Examining and modifying your program",swi_man_manual('quickstart.html'),manual,10329).
i(section(3,'2.1.5','sec:halt'),"Stopping Prolog",swi_man_manual('quickstart.html'),manual,12597).
i(section(2,'A.44','sec:random'),"library(random): Random numbers",swi_man_manual('random.html'),manual,3531).
i(/(random,1),"Binds R to a new random float in the open interval (0.0,1.0).",swi_man_manual('random.html'),manual,4227).
i(/(random_between,3),"Binds R to a random integer in [L,U] (i.e., including both L and U).",swi_man_manual('random.html'),manual,4843).
i(/(random,3),"Generate a random integer or float in a range.",swi_man_manual('random.html'),manual,5213).
i(/(setrand,1),"Query/set the state of the random generator.",swi_man_manual('random.html'),manual,6263).
i(/(getrand,1),"Query/set the state of the random generator.",swi_man_manual('random.html'),manual,6263).
i(/(maybe,0),"Succeed/fail with equal probability (variant of maybe/1).",swi_man_manual('random.html'),manual,7732).
i(/(maybe,1),"Succeed with probability P, fail with probability 1-P",swi_man_manual('random.html'),manual,7969).
i(/(maybe,2),"Succeed with probability K/N (variant of maybe/1)",swi_man_manual('random.html'),manual,8192).
i(/(random_perm2,4),"Does X=A,Y=B or X=B,Y=A with equal probability.",swi_man_manual('random.html'),manual,8463).
i(/(random_member,2),"X is a random member of List.",swi_man_manual('random.html'),manual,8774).
i(/(random_select,3),"Randomly select or insert an element.",swi_man_manual('random.html'),manual,9295).
i(/(random_subseq,3),"Selects a random subsequence Subseq of List, with Complement containing all elements of List that were not selected.",swi_man_manual('random.html'),manual,9866).
i(/(randset,3),"S is a sorted list of K unique random integers in the range 1..N.",swi_man_manual('random.html'),manual,11093).
i(/(randseq,3),"S is a list of K unique random integers in the range 1..N.",swi_man_manual('random.html'),manual,12056).
i(/(random_permutation,2),"Permutation is a random permutation of List.",swi_man_manual('random.html'),manual,12588).
i(/(random_numlist,4),"Unify List with an ascending list of integers between L and U (inclusive).",swi_man_manual('random.html'),manual,13231).
i(section(2,'A.45','sec:rbtrees'),"library(rbtrees): Red black trees",swi_man_manual('rbtrees.html'),manual,3515).
i(/(rb_new,1),"Create a new Red-Black tree Tree.",swi_man_manual('rbtrees.html'),manual,5523).
i(/(rb_empty,1),"Succeeds if Tree is an empty Red-Black tree.",swi_man_manual('rbtrees.html'),manual,5853).
i(/(rb_lookup,3),"True when Value is associated with Key in the Red-Black tree Tree.",swi_man_manual('rbtrees.html'),manual,6065).
i(/(rb_min,3),"Key is the minimum key in Tree, and is associated with Val.",swi_man_manual('rbtrees.html'),manual,6713).
i(/(rb_max,3),"Key is the maximal key in Tree, and is associated with Val.",swi_man_manual('rbtrees.html'),manual,6963).
i(/(rb_next,4),"Next is the next element after Key in Tree, and is associated with Val.",swi_man_manual('rbtrees.html'),manual,7213).
i(/(rb_previous,4),"Previous is the previous element after Key in Tree, and is associated with Val.",swi_man_manual('rbtrees.html'),manual,7586).
i(/(rb_update,4),"Tree NewTree is tree Tree, but with value for Key associated with NewVal.",swi_man_manual('rbtrees.html'),manual,7979).
i(/(rb_update,5),"Same as rb_update(Tree, Key, NewVal, NewTree) but also unifies OldVal with the value associated with Key in Tree.",swi_man_manual('rbtrees.html'),manual,8630).
i(/(rb_apply,4),"If the value associated with key Key is Val0 in Tree, and if call(G,Val0,ValF) holds, then NewTree differs from Tree only in that Key is associated with value ValF in tree NewTree.",swi_man_manual('rbtrees.html'),manual,8984).
i(/(rb_in,3),"True when Key-Value is a key-value pair in red-black tree Tree.",swi_man_manual('rbtrees.html'),manual,9541).
i(/(rb_insert,4),"Add an element with key Key and Value to the tree Tree creating a new red-black tree NewTree.",swi_man_manual('rbtrees.html'),manual,10089).
i(/(rb_insert_new,4),"Add a new element with key Key and Value to the tree Tree creating a new red-black tree NewTree.",swi_man_manual('rbtrees.html'),manual,10736).
i(/(rb_delete,3),"Delete element with key Key from the tree Tree, returning the value Val associated with the key and a new tree NewTree.",swi_man_manual('rbtrees.html'),manual,11265).
i(/(rb_delete,4),"Same as rb_delete(Tree, Key, NewTree), but also unifies Val with the value associated with Key in Tree.",swi_man_manual('rbtrees.html'),manual,11788).
i(/(rb_del_min,4),"Delete the least element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree.",swi_man_manual('rbtrees.html'),manual,12081).
i(/(rb_del_max,4),"Delete the largest element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree.",swi_man_manual('rbtrees.html'),manual,12436).
i(/(rb_visit,2),"Pairs is an infix visit of tree Tree, where each element of Pairs is of the form Key-Value.",swi_man_manual('rbtrees.html'),manual,12793).
i(/(rb_map,2),"True if call(Goal, Value) is true for all nodes in T.",swi_man_manual('rbtrees.html'),manual,13080).
i(/(rb_map,3),"For all nodes Key in the tree Tree, if the value associated with key Key is Val0 in tree Tree, and if call(G,Val0,ValF) holds, then the value associated with Key in NewTree is ValF.",swi_man_manual('rbtrees.html'),manual,13315).
i(/(rb_fold,4),"Fold the given predicate over all the key-value pairs in Tree, starting with initial state State0 and returning the final state State.",swi_man_manual('rbtrees.html'),manual,14040).
i(/(rb_clone,3),"‘Clone' the red-back tree TreeIn into a new tree TreeOut with the same keys as the original but with all values set to unbound values.",swi_man_manual('rbtrees.html'),manual,14477).
i(/(rb_partial_map,4),"For all nodes Key in Keys, if the value associated with key Key is Val0 in tree Tree, and if call(G,Val0,ValF) holds, then the value associated with Key in NewTree is ValF, otherwise it is the value associated with the key in Tree.",swi_man_manual('rbtrees.html'),manual,14881).
i(/(rb_keys,2),"Keys is unified with an ordered list of all keys in the Red-Black tree Tree.",swi_man_manual('rbtrees.html'),manual,15523).
i(/(list_to_rbtree,2),"Tree is the red-black tree corresponding to the mapping in List, which should be a list of Key-Value pairs.",swi_man_manual('rbtrees.html'),manual,15781).
i(/(ord_list_to_rbtree,2),"Tree is the red-black tree corresponding to the mapping in list List, which should be a list of Key-Value pairs.",swi_man_manual('rbtrees.html'),manual,16268).
i(/(rb_size,2),"Size is the number of elements in Tree.",swi_man_manual('rbtrees.html'),manual,16859).
i(/(is_rbtree,1),"True if Term is a valid Red-Black tree.",swi_man_manual('rbtrees.html'),manual,17079).
i(section(2,'A.46','sec:readutil'),"library(readutil): Read utilities",swi_man_manual('readutil.html'),manual,3513).
i(/(read_line_to_codes,2),"Read the next line of input from Stream.",swi_man_manual('readutil.html'),manual,4264).
i(/(read_line_to_codes,3),"Difference-list version to read an input line to a list of character codes.",swi_man_manual('readutil.html'),manual,4821).
i(/(read_line_to_string,2),"Read the next line from Stream into String.",swi_man_manual('readutil.html'),manual,5822).
i(/(read_stream_to_codes,2),"Read input from Stream to a list of character codes.",swi_man_manual('readutil.html'),manual,6468).
i(/(read_stream_to_codes,3),"Read input from Stream to a list of character codes.",swi_man_manual('readutil.html'),manual,6468).
i(/(read_file_to_codes,3),"Read the file Spec into a list of Codes.",swi_man_manual('readutil.html'),manual,7015).
i(/(read_file_to_string,3),"Read the file Spec into a the string String.",swi_man_manual('readutil.html'),manual,7924).
i(/(read_file_to_terms,3),"Read the file Spec into a list of terms.",swi_man_manual('readutil.html'),manual,8597).
i(section(2,'A.47','sec:record'),"library(record): Access named fields in a term",swi_man_manual('record.html'),manual,3519).
i(/(record,1),"The construct :- record Spec, ... is used to define access to named fields in a compound.",swi_man_manual('record.html'),manual,8996).
i(section(2,'6.8','sec:reexport'),"Composing modules from other modules",swi_man_manual('reexport.html'),manual,3520).
i(/(reexport,1),"Load and import predicates as use_module/1 and re-export all imported predicates.",swi_man_manual('reexport.html'),manual,4691).
i(/(reexport,2),"Import from File as use_module/2 and re-export the imported predicates.",swi_man_manual('reexport.html'),manual,5051).
i(section(2,'A.48','sec:registry'),"library(registry): Manipulating the Windows registry",swi_man_manual('registry.html'),manual,3513).
i(/(registry_get_key,2),"Get the principal (default) value associated to this key.",swi_man_manual('registry.html'),manual,4615).
i(/(registry_get_key,3),"Get a named value associated to this key.",swi_man_manual('registry.html'),manual,4858).
i(/(registry_set_key,2),"Set the principal (default) value of this key.",swi_man_manual('registry.html'),manual,5049).
i(/(registry_set_key,3),"Associate a named value to this key.",swi_man_manual('registry.html'),manual,5297).
i(/(registry_delete_key,1),"Delete the indicated key.",swi_man_manual('registry.html'),manual,5542).
i(/(shell_register_file_type,4),"Register a file-type.",swi_man_manual('registry.html'),manual,5707).
i(/(shell_register_dde,6),"Associate DDE actions to a type.",swi_man_manual('registry.html'),manual,6232).
i(/(shell_register_prolog,1),"Default registration of SWI-Prolog, which is invoked as part of the initialisation process on Windows systems.",swi_man_manual('registry.html'),manual,6954).
i(section(2,'6.11','sec:resmodules'),"Reserved Modules and using the‘user' module",swi_man_manual('resmodules.html'),manual,3535).
i(section(1,'14','sec:runtime'),"Deploying applications",swi_man_manual('runtime.html'),manual,3533).
i(section(2,'A.49','sec:rwlocks'),"library(rwlocks): Read/write locks",swi_man_manual('rwlocks.html'),manual,3519).
i(/(with_rwlock,3),"Run Goal, synchronized with LockId in ModeSpec.",swi_man_manual('rwlocks.html'),manual,3965).
i(/(with_rwlock,4),"Run Goal, synchronized with LockId in ModeSpec.",swi_man_manual('rwlocks.html'),manual,3965).
i(section(2,'14.2','sec:saved-states'),"Understanding saved states",swi_man_manual('saved-states.html'),manual,3563).
i(section(3,'14.2.1','sec:create-saved-state'),"Creating a saved state",swi_man_manual('saved-states.html'),manual,5772).
i(/(qsave_program,2),"Saves the current state of the program to the file File.",swi_man_manual('saved-states.html'),manual,6882).
i(/(qsave_program,1),"Equivalent to qsave_program(File, []).",swi_man_manual('saved-states.html'),manual,15292).
i(/(autoload_all,0),"Check the current Prolog program for predicates that are referred to, are undefined and have a definition in the Prolog library.",swi_man_manual('saved-states.html'),manual,15471).
i(/(volatile,1),"Declare that the clauses of specified predicates should not be saved to the program.",swi_man_manual('saved-states.html'),manual,18334).
i(section(3,'14.2.2','sec:qsavelimits'),"Limitations of qsave_program",swi_man_manual('saved-states.html'),manual,18745).
i(section(3,'14.2.3','sec:qsaveforeign'),"Runtimes and Foreign Code",swi_man_manual('saved-states.html'),manual,21707).
i(section(2,'A.50','sec:settings'),"library(settings): Setting management",swi_man_manual('settings.html'),manual,3521).
i(/(setting,4),"Define a setting.",swi_man_manual('settings.html'),manual,5016).
i(/(setting,2),"True when Name is a currently defined setting with Value.",swi_man_manual('settings.html'),manual,6144).
i(/(env,2),"Evaluate environment variables on behalf of arithmetic expressions.",swi_man_manual('settings.html'),manual,6739).
i(/(env,3),"Evaluate environment variables on behalf of arithmetic expressions.",swi_man_manual('settings.html'),manual,6739).
i(/(set_setting,2),"Change a setting.",swi_man_manual('settings.html'),manual,7124).
i(/(restore_setting,1),"Restore the value of setting Name to its default.",swi_man_manual('settings.html'),manual,7870).
i(/(set_setting_default,2),"Change the default for a setting.",swi_man_manual('settings.html'),manual,8233).
i(/(load_settings,1),"Load local settings from File.",swi_man_manual('settings.html'),manual,8703).
i(/(load_settings,2),"Load local settings from File.",swi_man_manual('settings.html'),manual,8703).
i(/(save_settings,0),"Save modified settings to File.",swi_man_manual('settings.html'),manual,9745).
i(/(save_settings,1),"Save modified settings to File.",swi_man_manual('settings.html'),manual,9745).
i(/(current_setting,1),"True if Setting is a currently defined setting",swi_man_manual('settings.html'),manual,10587).
i(/(setting_property,2),"Query currently defined settings.",swi_man_manual('settings.html'),manual,10817).
i(/(list_settings,0),"List settings to current_output.",swi_man_manual('settings.html'),manual,11686).
i(/(list_settings,1),"List settings to current_output.",swi_man_manual('settings.html'),manual,11686).
i(/(convert_setting_text,3),"Converts from textual form to Prolog Value.",swi_man_manual('settings.html'),manual,12180).
i(section(2,'4.12','sec:signal'),"Handling signals",swi_man_manual('signal.html'),manual,3509).
i(/(on_signal,3),"Determines how Signal is processed.",swi_man_manual('signal.html'),manual,4446).
i(/(current_signal,3),"Enumerate the currently defined signal handling.",swi_man_manual('signal.html'),manual,7991).
i(/(prolog_alert_signal,2),"Query or set the signal used to unblock blocking system calls on Unix systems and process pending Prolog signals.",swi_man_manual('signal.html'),manual,8421).
i(section(3,'4.12.1','sec:signalhandling'),"Notes on signal handling",swi_man_manual('signal.html'),manual,8767).
i(section(2,'A.53','sec:simplex'),"library(simplex): Solve linear programming problems",swi_man_manual('simplex.html'),manual,3535).
i(section(3,'A.53.1','sec:simplex-intro'),"Introduction",swi_man_manual('simplex.html'),manual,3887).
i(/(gen_state,1),"Generates an initial state corresponding to an empty linear program.",swi_man_manual('simplex.html'),manual,5908).
i(/(constraint,3),"Adds a linear or integrality constraint to the linear program corresponding to state S0.",swi_man_manual('simplex.html'),manual,6097).
i(/(maximize,3),"Maximizes the objective function, stated as a list of Coefficient*Variable terms that represents the sum of its elements, with respect to the linear program corresponding to state S0.",swi_man_manual('simplex.html'),manual,6896).
i(/(minimize,3),"Analogous to maximize/3.",swi_man_manual('simplex.html'),manual,7337).
i(/(variable_value,3),"Value is unified with the value obtained for Variable.",swi_man_manual('simplex.html'),manual,7545).
i(/(objective,2),"Unifies Objective with the result of the objective function at the obtained extremum.",swi_man_manual('simplex.html'),manual,7828).
i(section(3,'A.53.2','sec:simplex-delayed-column'),"Delayed column generation",swi_man_manual('simplex.html'),manual,8506).
i(/(constraint,4),"Like constraint/3, and attaches the name Name (an atom or compound term) to the new constraint.",swi_man_manual('simplex.html'),manual,8904).
i(/(shadow_price,3),"Unifies Value with the shadow price corresponding to the linear constraint whose name is Name.",swi_man_manual('simplex.html'),manual,9210).
i(/(constraint_add,4),"Left is a list of Coefficient*Variable terms.",swi_man_manual('simplex.html'),manual,9526).
i(section(3,'A.53.3','sec:simplex-special-structure'),"Solving LPs with special structure",swi_man_manual('simplex.html'),manual,10109).
i(/(transportation,4),"Solves a transportation problem.",swi_man_manual('simplex.html'),manual,10434).
i(/(assignment,2),"Solves a linear assignment problem.",swi_man_manual('simplex.html'),manual,11195).
i(section(3,'A.53.4','sec:simplex-examples'),"Examples",swi_man_manual('simplex.html'),manual,11677).
i(section(4,'A.53.4.1','sec:simplex-ex-1'),"Example 1",swi_man_manual('simplex.html'),manual,11917).
i(section(4,'A.53.4.2','sec:simplex-ex-2'),"Example 2",swi_man_manual('simplex.html'),manual,12971).
i(section(4,'A.53.4.3','sec:simplex-ex-3'),"Example 3",swi_man_manual('simplex.html'),manual,14925).
i(section(2,'E.2','sec:softlicense'),"Software support to keep track of license conditions",swi_man_manual('softlicense.html'),manual,3526).
i(/(license,0),"Evaluate the license conditions of all loaded components.",swi_man_manual('softlicense.html'),manual,4261).
i(/(license,2),"Register the fact that Component is distributed under a license identified by LicenseId.",swi_man_manual('softlicense.html'),manual,4713).
i(/(license,1),"Intended as a directive in Prolog source files.",swi_man_manual('softlicense.html'),manual,5631).
i(c('PL_license'),"Intended for the install() procedure of foreign libraries.",swi_man_manual('softlicense.html'),manual,5935).
i(/(known_licenses,0),"List all licenses known to the system.",swi_man_manual('softlicense.html'),manual,6290).
i(section(2,'A.54','sec:solutionsequences'),"library(solution_sequences): Modify solution sequences",swi_man_manual('solutionsequences.html'),manual,3513).
i(/(distinct,1),"True if Goal is true and no previous solution of Goal bound Witness to the same value.",swi_man_manual('solutionsequences.html'),manual,6310).
i(/(distinct,2),"True if Goal is true and no previous solution of Goal bound Witness to the same value.",swi_man_manual('solutionsequences.html'),manual,6310).
i(/(reduced,1),"Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory.",swi_man_manual('solutionsequences.html'),manual,7255).
i(/(reduced,3),"Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory.",swi_man_manual('solutionsequences.html'),manual,7255).
i(/(limit,2),"Limit the number of solutions.",swi_man_manual('solutionsequences.html'),manual,8445).
i(/(offset,2),"Ignore the first Count solutions.",swi_man_manual('solutionsequences.html'),manual,9033).
i(/(call_nth,2),"True when Goal succeeded for the Nth time.",swi_man_manual('solutionsequences.html'),manual,9359).
i(/(order_by,2),"Order solutions according to Spec.",swi_man_manual('solutionsequences.html'),manual,9696).
i(/(group_by,4),"Group bindings of Template that have the same value for By.",swi_man_manual('solutionsequences.html'),manual,10507).
i(section(2,'1.4','sec:sponsor'),"Support the SWI-Prolog project",swi_man_manual('sponsor.html'),manual,3528).
i(section(2,'5.6','sec:ssu'),"Single Sided Unification rules",swi_man_manual('ssu.html'),manual,3536).
i(section(3,'5.6.1','sec:ssu-guard'),"Single Sided Unification Guards",swi_man_manual('ssu.html'),manual,11470).
i(section(3,'5.6.2','sec:ssu-consequences'),"Consequenses of => single sided unification rules",swi_man_manual('ssu.html'),manual,13375).
i(/(rule,2),"True when Rule is a rule/clause that implements Head.",swi_man_manual('ssu.html'),manual,14812).
i(/(rule,3),"True when Rule is a rule/clause that implements Head.",swi_man_manual('ssu.html'),manual,14812).
i(section(3,'5.6.3','sec:ssu-future'),"SSU: Future considerations",swi_man_manual('ssu.html'),manual,15313).
i(section(2,'14.3','sec:state-initialization'),"State initialization",swi_man_manual('state-initialization.html'),manual,3545).
i(section(2,'A.51','sec:statistics'),"library(statistics): Get information about resource usage",swi_man_manual('statistics.html'),manual,3517).
i(/(statistics,0),"Print information about resource usage using print_message/2.",swi_man_manual('statistics.html'),manual,4092).
i(/(statistics,1),"Stats is a dict representing the same information as statistics/0.",swi_man_manual('statistics.html'),manual,4539).
i(/(thread_statistics,2),"Obtain statistical information about a single thread.",swi_man_manual('statistics.html'),manual,5158).
i(/(time,1),"Execute Goal, reporting statistics to the user.",swi_man_manual('statistics.html'),manual,5628).
i(/(call_time,2),"Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.",swi_man_manual('statistics.html'),manual,6672).
i(/(call_time,3),"Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.",swi_man_manual('statistics.html'),manual,6672).
i(section(2,'1.2','sec:status'),"Status and releases",swi_man_manual('status.html'),manual,3524).
i(section(2,'4.18','sec:streamstat'),"Status of streams",swi_man_manual('streamstat.html'),manual,3503).
i(/(wait_for_input,3),"Wait for input on one of the streams in ListOfStreams and return a list of streams on which input is available in ReadyList.",swi_man_manual('streamstat.html'),manual,3685).
i(/(byte_count,2),"Byte position in Stream.",swi_man_manual('streamstat.html'),manual,7335).
i(/(character_count,2),"Unify Count with the current character index.",swi_man_manual('streamstat.html'),manual,7797).
i(/(line_count,2),"Unify Count with the number of lines read or written.",swi_man_manual('streamstat.html'),manual,8153).
i(/(line_position,2),"Unify Count with the position on the current line.",swi_man_manual('streamstat.html'),manual,8373).
i(section(2,'5.2','sec:string'),"The string type and its double quoted syntax",swi_man_manual('string.html'),manual,3524).
i(section(3,'5.2.1','sec:text-representation'),"Representing text: strings, atoms and code lists",swi_man_manual('string.html'),manual,6091).
i(section(3,'5.2.2','sec:string-predicates'),"Predicates that operate on strings",swi_man_manual('string.html'),manual,9139).
i(/(atom_string,2),"Bi-directional conversion between an atom and a string.",swi_man_manual('string.html'),manual,10849).
i(/(number_string,2),"Bi-directional conversion between a number and a string.",swi_man_manual('string.html'),manual,11617).
i(/(term_string,2),"Bi-directional conversion between a term and a string.",swi_man_manual('string.html'),manual,12991).
i(/(term_string,3),"As term_string/2, passing Options to either read_term/2 or write_term/2.",swi_man_manual('string.html'),manual,13418).
i(/(string_chars,2),"Bi-directional conversion between a string and a list of characters.",swi_man_manual('string.html'),manual,14037).
i(/(string_codes,2),"Bi-directional conversion between a string and a list of character codes.",swi_man_manual('string.html'),manual,14414).
i(/(string_bytes,3),"True when the (Unicode) String is represented by Bytes in Encoding.",swi_man_manual('string.html'),manual,14681).
i(/(text_to_string,2),"Converts Text to a string.",swi_man_manual('string.html'),manual,15952).
i(/(string_length,2),"Unify Length with the number of characters in String.",swi_man_manual('string.html'),manual,16350).
i(/(string_code,3),"True when Code represents the character at the 1-based Index position in String.",swi_man_manual('string.html'),manual,16892).
i(/(get_string_code,3),"Semi-deterministic version of string_code/3.",swi_man_manual('string.html'),manual,17608).
i(/(string_concat,3),"Similar to atom_concat/3, but the unbound argument will be unified with a string object rather than an atom.",swi_man_manual('string.html'),manual,18128).
i(/(split_string,4),"Break String into SubStrings.",swi_man_manual('string.html'),manual,18948).
i(/(sub_string,5),"This predicate is functionally equivalent to sub_atom/5, but operates on strings.",swi_man_manual('string.html'),manual,20842).
i(/(atomics_to_string,2),"List is a list of strings, atoms, or number types.",swi_man_manual('string.html'),manual,22074).
i(/(atomics_to_string,3),"Creates a string just like atomics_to_string/2, but inserts Separator between each pair of inputs.",swi_man_manual('string.html'),manual,22454).
i(/(string_upper,2),"Convert String to upper case and unify the result with UpperCase.",swi_man_manual('string.html'),manual,22929).
i(/(string_lower,2),"Convert String to lower case and unify the result with LowerCase.",swi_man_manual('string.html'),manual,23157).
i(/(read_string,3),"Read at most Length characters from Stream and return them in the string String.",swi_man_manual('string.html'),manual,23384).
i(/(read_string,5),"Read a string from Stream, providing functionality similar to split_string/4.",swi_man_manual('string.html'),manual,23878).
i(/(open_string,2),"True when Stream is an input stream that accesses the content of String.",swi_man_manual('string.html'),manual,25817).
i(section(3,'5.2.3','sec:ext-dquotes-motivation'),"Why has the representation of double quoted text changed?",swi_man_manual('string.html'),manual,26432).
i(section(3,'5.2.4','sec:ext-dquotes-port'),"Adapting code for double quoted strings",swi_man_manual('string.html'),manual,28938).
i(section(3,'5.2.5','sec:ext-dquotes-port-predicates'),"Predicates to support adapting code for double quoted strings",swi_man_manual('string.html'),manual,31935).
i(/(list_strings,0),"This predicate may be used to assess compatibility issues due to the representation of double quoted text as string objects.",swi_man_manual('string.html'),manual,32409).
i(:(check,/(string_predicate,1)),"Declare that PredicateIndicator has clauses that contain strings, but that this is safe.",swi_man_manual('string.html'),manual,34586).
i(:(check,/(valid_string_goal,1)),"Declare that calls to Goal are safe.",swi_man_manual('string.html'),manual,35306).
i(section(2,'A.52','sec:strings'),"library(strings): String utilities",swi_man_manual('strings.html'),manual,3521).
i(/(string,4),"Implements the quasi quotation syntax string.",swi_man_manual('strings.html'),manual,5647).
i(/(interpolate_string,4),"Establish a string from a template by replacing patterns.",swi_man_manual('strings.html'),manual,6879).
i(/(string_lines,2),"True when String represents Lines.",swi_man_manual('strings.html'),manual,7856).
i(/(dedent_lines,3),"Remove shared indentation for all lines in a string.",swi_man_manual('strings.html'),manual,9020).
i(/(indent_lines,3),"Add Prefix to the beginning of lines in In.",swi_man_manual('strings.html'),manual,9919).
i(/(indent_lines,4),"Similar to indent_lines/3, but only adds Prefix to lines for which call(Filter, Line) succeeds.",swi_man_manual('strings.html'),manual,10388).
i(section(1,'F','sec:summary'),"Summary",swi_man_manual('summary.html'),manual,3521).
i(section(2,'1.3','sec:swiorother'),"Should I be using SWI-Prolog?",swi_man_manual('swiorother.html'),manual,3512).
i(section(2,'1.1','sec:swiprolog'),"Positioning SWI-Prolog",swi_man_manual('swiprolog.html'),manual,3508).
i(section(2,'2.16','sec:syntax'),"The SWI-Prolog syntax",swi_man_manual('syntax.html'),manual,3509).
i(section(3,'2.16.1','sec:isosyntax'),"ISO Syntax Support",swi_man_manual('syntax.html'),manual,4285).
i(section(4,'2.16.1.1','sec:processorcharset'),"Processor Character Set",swi_man_manual('syntax.html'),manual,4526).
i(section(4,'2.16.1.2','sec:nestedcomments'),"Nested comments",swi_man_manual('syntax.html'),manual,5060).
i(section(4,'2.16.1.3','sec:charescapes'),"Character Escape Syntax",swi_man_manual('syntax.html'),manual,5985).
i(section(4,'2.16.1.4','sec:nondecsyntax'),"Syntax for non-decimal numbers",swi_man_manual('syntax.html'),manual,12563).
i(section(4,'2.16.1.5','sec:digitgroupsyntax'),"Using digit groups in large integers",swi_man_manual('syntax.html'),manual,13254).
i(section(4,'2.16.1.6','sec:syntax-rational-numbers'),"Rational number syntax",swi_man_manual('syntax.html'),manual,14231).
i(section(4,'2.16.1.7','sec:floatsyntax'),"NaN and Infinity floats and their syntax",swi_man_manual('syntax.html'),manual,18381).
i(section(4,'2.16.1.8','sec:varprefix'),"Force only underscore to introduce a variable",swi_man_manual('syntax.html'),manual,20078).
i(section(4,'2.16.1.9','sec:unicodesyntax'),"Unicode Prolog source",swi_man_manual('syntax.html'),manual,21565).
i(section(4,'2.16.1.10','sec:singleton'),"Singleton variable checking",swi_man_manual('syntax.html'),manual,25354).
i(section(2,'4.35','sec:system'),"Operating System Interaction",swi_man_manual('system.html'),manual,3503).
i(/(shell,1),"Equivalent to‘shell(Command, 0)’.",swi_man_manual('system.html'),manual,4086).
i(/(shell,2),"Execute Command on the operating system.",swi_man_manual('system.html'),manual,4360).
i(/(getenv,2),"Get environment variable.",swi_man_manual('system.html'),manual,6618).
i(/(setenv,2),"Set an environment variable.",swi_man_manual('system.html'),manual,6927).
i(/(unsetenv,1),"Remove an environment variable from the environment.",swi_man_manual('system.html'),manual,7894).
i(/(setlocale,3),"Set/Query the locale setting which tells the C library how to interpret text files, write numbers, dates, etc.",swi_man_manual('system.html'),manual,8276).
i(section(3,'4.35.1','sec:winsystem'),"Windows-specific Operating System Interaction",swi_man_manual('system.html'),manual,10038).
i(/(win_exec,2),"Windows only.",swi_man_manual('system.html'),manual,10841).
i(/(win_shell,3),"Windows only.",swi_man_manual('system.html'),manual,11565).
i(/(win_shell,2),"Same as win_shell(Operation, File, normal).",swi_man_manual('system.html'),manual,12379).
i(/(win_registry_get_value,3),"Windows only.",swi_man_manual('system.html'),manual,12568).
i(/(win_folder,2),"True if Name is the Windows‘CSIDL' of Directory.",swi_man_manual('system.html'),manual,13657).
i(/(win_add_dll_directory,1),"This predicate adds a directory to the search path for dependent DLL files.",swi_man_manual('system.html'),manual,14373).
i(/(win_add_dll_directory,2),"This predicate adds a directory to the search path for dependent DLL files.",swi_man_manual('system.html'),manual,15488).
i(/(win_remove_dll_directory,1),"Remove a DLL search directory installed using win_add_dll_directory/2.",swi_man_manual('system.html'),manual,17096).
i(/(win_process_modules,1),"This predicate is a wrapper around EnumProcessModules().",swi_man_manual('system.html'),manual,17422).
i(/(win_get_user_preferred_ui_languages,2),"Unifies Languages with a list of the user preferred languages (Windows Display Languages) in order of preference.",swi_man_manual('system.html'),manual,18346).
i(section(3,'4.35.2','sec:apple'),"Apple specific Operating System Interaction",swi_man_manual('system.html'),manual,19191).
i(/(apple_current_locale_identifier,1),"Unify Identifier with the value for CFLocaleGetIdentifier() of the Apple current locale.",swi_man_manual('system.html'),manual,19481).
i(section(3,'4.35.3','sec:timedate'),"Dealing with time and date",swi_man_manual('system.html'),manual,20445).
i(section(4,'4.35.3.1','sec:dattimedata'),"Time and date data structures",swi_man_manual('system.html'),manual,23033).
i(section(4,'4.35.3.2','sec:datimepreds'),"Time and date predicates",swi_man_manual('system.html'),manual,24967).
i(/(get_time,1),"Return the current time as a TimeStamp.",swi_man_manual('system.html'),manual,25166).
i(/(stamp_date_time,3),"Convert a TimeStamp to a DateTime in the given timezone.",swi_man_manual('system.html'),manual,25451).
i(/(date_time_stamp,2),"Compute the timestamp from a date/9 term.",swi_man_manual('system.html'),manual,26022).
i(/(date_time_value,3),"Extract values from a date/9 term.",swi_man_manual('system.html'),manual,27887).
i(/(format_time,3),"Modelled after POSIX strftime(), using GNU extensions.",swi_man_manual('system.html'),manual,29126).
i(/(format_time,4),"Format time given a specified Locale.",swi_man_manual('system.html'),manual,36733).
i(/(parse_time,2),"Same as parse_time(Text, _Format, Stamp).",swi_man_manual('system.html'),manual,37437).
i(/(parse_time,3),"Parse a textual time representation, producing a time-stamp.",swi_man_manual('system.html'),manual,37724).
i(/(day_of_the_week,2),"Computes the day of the week for a given date.",swi_man_manual('system.html'),manual,38879).
i(section(3,'4.35.4','sec:plwin'),"Controlling the swipl-win.exe console window",swi_man_manual('system.html'),manual,39262).
i(/(window_title,2),"Unify Old with the title displayed in the console and change the title to New.",swi_man_manual('system.html'),manual,39779).
i(/(win_window_pos,1),"Interface to the MS-Windows SetWindowPos() function, controlling size, position and stacking order of the window.",swi_man_manual('system.html'),manual,40159).
i(/(win_window_color,2),"Change the color of the console window.",swi_man_manual('system.html'),manual,41403).
i(/(win_has_menu,0),"True if win_insert_menu/2 and win_insert_menu_item/4 are present.",swi_man_manual('system.html'),manual,41911).
i(/(win_insert_menu,2),"Insert a new entry (pulldown) in the menu.",swi_man_manual('system.html'),manual,42281).
i(/(win_insert_menu_item,4),"Add an item to the named Pulldown menu.",swi_man_manual('system.html'),manual,43016).
i(section(2,'A.55','sec:tables'),"library(tables): XSB interface to tables",swi_man_manual('tables.html'),manual,3531).
i(/(tnot,1),"Tabled negation.",swi_man_manual('tables.html'),manual,4045).
i(/(tfindall,3),"This predicate emerged in XSB in an attempt to provide a safer alternative to findall/3.",swi_man_manual('tables.html'),manual,4323).
i(/(set_pil_on,0),"Dummy predicates for XSB compatibility.",swi_man_manual('tables.html'),manual,4975).
i(/(set_pil_off,0),"Dummy predicates for XSB compatibility.",swi_man_manual('tables.html'),manual,4975).
i(/(get_call,3),"True when Trie is an answer trie for a variant of CallTerm.",swi_man_manual('tables.html'),manual,5300).
i(/(get_calls,3),"True when Trie is an answer trie for a variant that unifies with CallTerm and Skeleton is the answer skeleton.",swi_man_manual('tables.html'),manual,5818).
i(/(get_returns,2),"True when Return is an answer template for the AnswerTrie.",swi_man_manual('tables.html'),manual,6209).
i(/(get_returns,3),"True when Return is an answer template for the AnswerTrie and the answer is represented by the trie node NodeID.",swi_man_manual('tables.html'),manual,6632).
i(/(get_returns_and_tvs,3),"Identical to get_returns/2, but also obtains the truth value of a given answer, setting TruthValue to t if the answer is unconditional and to u if it is conditional.",swi_man_manual('tables.html'),manual,7146).
i(/(get_returns_and_dls,3),"True when Return appears in AnswerTrie with the given DelayLists.",swi_man_manual('tables.html'),manual,7856).
i(/(get_residual,2),"True if CallTerm appears in a table and has DelayList.",swi_man_manual('tables.html'),manual,8295).
i(/(get_returns_for_call,2),"True if AnswerTerm appears in the tables for the variant CallTerm.",swi_man_manual('tables.html'),manual,9180).
i(/(abolish_table_pred,1),"Invalidates all tabled subgoals for the predicate denoted by the predicate or term indicator Pred.",swi_man_manual('tables.html'),manual,9473).
i(/(abolish_table_call,1),"Same as abolish_table_subgoals/1.",swi_man_manual('tables.html'),manual,9997).
i(/(abolish_table_call,2),"Same as abolish_table_subgoals/1.",swi_man_manual('tables.html'),manual,9997).
i(/(abolish_table_subgoals,2),"Behaves as abolish_table_subgoals/1, but allows the default table_gc_action to be over-ridden with a flag, which can be either abolish_tables_transitively or abolish_tables_singly.",swi_man_manual('tables.html'),manual,10627).
i(section(2,'7.12','sec:tabling-about'),"About the tabling implementation",swi_man_manual('tabling-about.html'),manual,3519).
i(section(4,'7.12.1','sec:tabling-status'),"Status of tabling",swi_man_manual('tabling-about.html'),manual,5902).
i(section(2,'7.7','sec:tabling-incremental'),"Incremental tabling",swi_man_manual('tabling-incremental.html'),manual,3526).
i(section(2,'7.1','sec:tabling-memoize'),"Example 1: using tabling for memoizing",swi_man_manual('tabling-memoize.html'),manual,3546).
i(section(2,'7.3','sec:tabling-mode-directed'),"Answer subsumption or mode directed tabling",swi_man_manual('tabling-mode-directed.html'),manual,3548).
i(section(2,'7.8','sec:tabling-monotonic'),"Monotonic tabling",swi_man_manual('tabling-monotonic.html'),manual,3552).
i(/(abolish_monotonic_tables,0),"Abolish all monotonic tables and their dependencies.",swi_man_manual('tabling-monotonic.html'),manual,5139).
i(section(3,'7.8.1','sec:tabling-monotonic-lazy'),"Eager and lazy monotonic tabling",swi_man_manual('tabling-monotonic.html'),manual,6319).
i(section(3,'7.8.2','sec:tabling-tracking'),"Tracking new answers to monotonic tables",swi_man_manual('tabling-monotonic.html'),manual,8104).
i(section(3,'7.8.3','sec:mono-external-data'),"Monotonic tabling with external data",swi_man_manual('tabling-monotonic.html'),manual,10360).
i(/(incr_propagate_calls,1),"Activate the monotonic answer propagation similarly to when a new fact is asserted for a monotonic dynamic predicate.",swi_man_manual('tabling-monotonic.html'),manual,12325).
i(section(2,'7.2','sec:tabling-non-termination'),"Example 2: avoiding non-termination",swi_man_manual('tabling-non-termination.html'),manual,3558).
i(section(2,'7.11','sec:tabling-preds'),"Tabling predicate reference",swi_man_manual('tabling-preds.html'),manual,3549).
i(/(table,1),"Prepare the predicates specified by Specification for tabled execution.",swi_man_manual('tabling-preds.html'),manual,3747).
i(/(tnot,1),"The tnot/1 predicate implements tabled negation.",swi_man_manual('tabling-preds.html'),manual,7058).
i(/(not_exists,1),"Handles tabled negation for non-ground (floundering) Goal as well as non tabled goals.",swi_man_manual('tabling-preds.html'),manual,7437).
i(/(tabled_call,1),"Helper predicate for not_exists/1.",swi_man_manual('tabling-preds.html'),manual,8517).
i(/(current_table,2),"True when Trie is the answer table for Variant.",swi_man_manual('tabling-preds.html'),manual,8956).
i(/(untable,1),"Remove the tables and tabling instrumentation for the specified predicates.",swi_man_manual('tabling-preds.html'),manual,9164).
i(/(abolish_all_tables,0),"Remove all tables, both private and shared (see section 7.9).",swi_man_manual('tabling-preds.html'),manual,11303).
i(/(abolish_private_tables,0),"Abolish all tables that are private to this thread.",swi_man_manual('tabling-preds.html'),manual,12694).
i(/(abolish_shared_tables,0),"Abolish all tables that are shared between threads.",swi_man_manual('tabling-preds.html'),manual,12873).
i(/(abolish_table_subgoals,1),"Abolish all tables that unify with SubGoal.",swi_man_manual('tabling-preds.html'),manual,13129).
i(/(abolish_module_tables,1),"Remove all tables that belong to predicates in Module.",swi_man_manual('tabling-preds.html'),manual,13651).
i(/(abolish_nonincremental_tables,0),"Similar to abolish_all_tables/0, but does not abolish incremental tables as their consistency is maintained by the system.",swi_man_manual('tabling-preds.html'),manual,13862).
i(/(abolish_nonincremental_tables,1),"Similar to abolish_all_tables/0, but does not abolish incremental tables as their consistency is maintained by the system.",swi_man_manual('tabling-preds.html'),manual,13862).
i(section(2,'7.10','sec:tabling-restraints'),"Tabling restraints: bounded rationality and tripwires",swi_man_manual('tabling-restraints.html'),manual,3541).
i(:(prolog,/(tripwire,2)),"Called when tripwire Wire is trapped.",swi_man_manual('tabling-restraints.html'),manual,6295).
i(/(size_abstract_term,3),"The size of a term is defined as the number of compound subterms (function symbols) that appear in term.",swi_man_manual('tabling-restraints.html'),manual,7380).
i(/(radial_restraint,0),"This predicate is undefined in the sense of well founded semantics (see section 7.6 and undefined/0).",swi_man_manual('tabling-restraints.html'),manual,8553).
i(section(3,'7.10.1','sec:tabling-restraint-subgoal'),"Restraint subgoal size",swi_man_manual('tabling-restraints.html'),manual,9091).
i(section(3,'7.10.2','sec:tabling-restraint-answer-size'),"Restraint answer size",swi_man_manual('tabling-restraints.html'),manual,10698).
i(section(3,'7.10.3','sec:tabling-restraint-answer-count'),"Restraint answer count",swi_man_manual('tabling-restraints.html'),manual,12102).
i(/(answer_count_restraint,0),"This predicate is undefined in the sense of well founded semantics (see section 7.6 and undefined/0).",swi_man_manual('tabling-restraints.html'),manual,13346).
i(section(2,'7.9','sec:tabling-shared'),"Shared tabling",swi_man_manual('tabling-shared.html'),manual,3556).
i(section(3,'7.9.1','sec:tabling-shared-abolish'),"Abolishing shared tables",swi_man_manual('tabling-shared.html'),manual,5754).
i(section(3,'7.9.2','sec:tabling-shared-status'),"Status and future of shared tabling",swi_man_manual('tabling-shared.html'),manual,7069).
i(section(2,'7.5','sec:tabling-subsumptive'),"Variant and subsumptive tabling",swi_man_manual('tabling-subsumptive.html'),manual,3508).
i(section(1,'7','sec:tabling'),"Tabled execution (SLG resolution)",swi_man_manual('tabling.html'),manual,3527).
i(section(2,'4.20','sec:termrw'),"Term reading and writing",swi_man_manual('termrw.html'),manual,3517).
i(/(write_term,2),"The predicate write_term/2 is the generic form of all Prolog term-write predicates.",swi_man_manual('termrw.html'),manual,4506).
i(/(write_term,3),"As write_term/2, but output is sent to Stream rather than the current output.",swi_man_manual('termrw.html'),manual,19900).
i(/(write_length,3),"True when Length is the number of characters emitted for write_term(Term, Options).",swi_man_manual('termrw.html'),manual,20250).
i(/(write_canonical,1),"Write Term on the current output stream using standard parenthesised prefix notation (i.e., ignoring operator declarations).",swi_man_manual('termrw.html'),manual,21018).
i(/(write_canonical,2),"Write Term in canonical form on Stream.",swi_man_manual('termrw.html'),manual,22381).
i(/(write,1),"Write Term to the current output, using brackets and operators where appropriate.",swi_man_manual('termrw.html'),manual,22619).
i(/(write,2),"Write Term to Stream.",swi_man_manual('termrw.html'),manual,22859).
i(/(writeq,1),"Write Term to the current output, using brackets and operators where appropriate.",swi_man_manual('termrw.html'),manual,23059).
i(/(writeq,2),"Write Term to Stream, inserting quotes.",swi_man_manual('termrw.html'),manual,23630).
i(/(writeln,1),"Equivalent to write(Term), nl.",swi_man_manual('termrw.html'),manual,23850).
i(/(writeln,2),"Equivalent to write(Stream, Term), nl(Stream).",swi_man_manual('termrw.html'),manual,24125).
i(/(print,1),"Print a term for debugging purposes.",swi_man_manual('termrw.html'),manual,24426).
i(/(print,2),"Print Term to Stream.",swi_man_manual('termrw.html'),manual,26345).
i(/(portray,1),"A dynamic predicate, which can be defined by the user to change the behaviour of print/1 on (sub)terms.",swi_man_manual('termrw.html'),manual,26510).
i(/(read,1),"Read the next Prolog term from the current input stream and unify it with Term.",swi_man_manual('termrw.html'),manual,27433).
i(/(read,2),"Read the next Prolog term from Stream.",swi_man_manual('termrw.html'),manual,28678).
i(/(read_clause,3),"Equivalent to read_term/3, but sets options according to the current compilation context and optionally processes comments.",swi_man_manual('termrw.html'),manual,29086).
i(/(read_term,2),"Read a term from the current input stream and unify the term with Term.",swi_man_manual('termrw.html'),manual,31343).
i(/(read_term,3),"Read term with options from Stream.",swi_man_manual('termrw.html'),manual,43650).
i(/(read_term_from_atom,3),"Use read_term/3 to read the next term from Atom.",swi_man_manual('termrw.html'),manual,43970).
i(/(read_term_with_history,2),"Read a term while providing history substitutions.",swi_man_manual('termrw.html'),manual,44587).
i(/(prompt,2),"Set prompt associated with reading from the user_input stream.",swi_man_manual('termrw.html'),manual,47074).
i(/(prompt1,1),"Sets the prompt for the next line to be read.",swi_man_manual('termrw.html'),manual,48431).
i(section(2,'A.56','sec:terms'),"library(terms): Term manipulation",swi_man_manual('terms.html'),manual,3511).
i(/(term_size,2),"True if Size is the size in cells occupied by Term on the global (term) stack.",swi_man_manual('terms.html'),manual,4043).
i(/(variant,2),"Same as SWI-Prolog Term1 =@= Term2.",swi_man_manual('terms.html'),manual,4773).
i(/(subsumes_chk,2),"True if Generic can be made equivalent to Specific without changing Specific.",swi_man_manual('terms.html'),manual,4986).
i(/(subsumes,2),"True if Generic is unified to Specific without changing Specific.",swi_man_manual('terms.html'),manual,5392).
i(/(term_subsumer,3),"General is the most specific term that is a generalisation of Special1 and Special2.",swi_man_manual('terms.html'),manual,6030).
i(/(term_factorized,3),"Is true when Skeleton is Term where all subterms that appear multiple times are replaced by a variable and Substitution is a list of Var=Value that provides the subterm at the location Var.",swi_man_manual('terms.html'),manual,6544).
i(/(mapargs,3),"Term1 and Term2 have the same functor (name/arity) and for each matching pair of arguments call(Goal, A1, A2) is true.",swi_man_manual('terms.html'),manual,7185).
i(/(mapsubterms,3),"Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds.",swi_man_manual('terms.html'),manual,7473).
i(/(mapsubterms_var,3),"Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds.",swi_man_manual('terms.html'),manual,7473).
i(/(foldsubterms,4),"The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1.",swi_man_manual('terms.html'),manual,9202).
i(/(foldsubterms,5),"The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1.",swi_man_manual('terms.html'),manual,9202).
i(/(same_functor,2),"True when Term1 and Term2 are terms that have the same functor (Name/Arity).",swi_man_manual('terms.html'),manual,10067).
i(/(same_functor,3),"True when Term1 and Term2 are terms that have the same functor (Name/Arity).",swi_man_manual('terms.html'),manual,10067).
i(/(same_functor,4),"True when Term1 and Term2 are terms that have the same functor (Name/Arity).",swi_man_manual('terms.html'),manual,10067).
i(section(2,'2.5','sec:theme'),"UI Themes",swi_man_manual('theme.html'),manual,3512).
i(section(3,'2.5.1','sec:theme-status'),"Status of theme support",swi_man_manual('theme.html'),manual,5636).
i(section(2,'10.2','sec:thmonitor'),"Monitoring threads",swi_man_manual('thmonitor.html'),manual,3529).
i(/(is_thread,1),"True if Term is a handle to an existing thread.",swi_man_manual('thmonitor.html'),manual,4330).
i(/(thread_property,2),"True if thread Id has Property.",swi_man_manual('thmonitor.html'),manual,4508).
i(/(thread_statistics,3),"Obtains statistical information on thread Id as statistics/2 does in single-threaded applications.",swi_man_manual('thmonitor.html'),manual,9053).
i(/(mutex_statistics,0),"Print usage statistics on internal mutexes and mutexes associated with dynamic predicates.",swi_man_manual('thmonitor.html'),manual,10295).
i(section(2,'A.57','sec:thread'),"library(thread): High level thread primitives",swi_man_manual('thread.html'),manual,3517).
i(/(concurrent,3),"Run Goals in parallel using N threads.",swi_man_manual('thread.html'),manual,5470).
i(/(concurrent_forall,2),"True when Action is true for all solutions of Generate.",swi_man_manual('thread.html'),manual,7922).
i(/(concurrent_forall,3),"True when Action is true for all solutions of Generate.",swi_man_manual('thread.html'),manual,7922).
i(/(concurrent_and,2),"Concurrent version of (Generator,Test).",swi_man_manual('thread.html'),manual,9376).
i(/(concurrent_and,3),"Concurrent version of (Generator,Test).",swi_man_manual('thread.html'),manual,9376).
i(/(concurrent_maplist,2),"Concurrent version of maplist/2.",swi_man_manual('thread.html'),manual,10970).
i(/(concurrent_maplist,3),"Concurrent version of maplist/2.",swi_man_manual('thread.html'),manual,10970).
i(/(concurrent_maplist,4),"Concurrent version of maplist/2.",swi_man_manual('thread.html'),manual,10970).
i(/(first_solution,3),"Try alternative solvers concurrently, returning the first answer.",swi_man_manual('thread.html'),manual,12402).
i(/(call_in_thread,2),"Run Goal as an interrupt in the context of Thread.",swi_man_manual('thread.html'),manual,14447).
i(section(2,'10.3','sec:threadcom'),"Thread communication",swi_man_manual('threadcom.html'),manual,3525).
i(section(3,'10.3.1','sec:msgqueue'),"Message queues",swi_man_manual('threadcom.html'),manual,3692).
i(/(thread_send_message,2),"Place Term in the given queue or default queue of the indicated thread (which can even be the message queue of itself, see thread_self/1).",swi_man_manual('threadcom.html'),manual,4766).
i(/(thread_send_message,3),"As thread_send_message/2, but providing additional Options.",swi_man_manual('threadcom.html'),manual,6096).
i(/(thread_get_message,1),"Examines the thread message queue and if necessary blocks execution until a term that unifies to Term arrives in the queue.",swi_man_manual('threadcom.html'),manual,8673).
i(/(thread_peek_message,1),"Examines the thread message queue and compares the queued terms with Term until one unifies or the end of the queue has been reached.",swi_man_manual('threadcom.html'),manual,10303).
i(/(message_queue_create,1),"Equivalent to message_queue_create(Queue,[]).",swi_man_manual('threadcom.html'),manual,11042).
i(/(message_queue_create,2),"Create a message queue from Options.",swi_man_manual('threadcom.html'),manual,11563).
i(/(message_queue_destroy,1),"Destroy a message queue created with message_queue_create/1.",swi_man_manual('threadcom.html'),manual,12877).
i(/(thread_get_message,2),"As thread_get_message/1, operating on a given queue.",swi_man_manual('threadcom.html'),manual,13528).
i(/(thread_get_message,3),"As thread_get_message/2, but providing additional Options: deadline(+AbsTime)The call fails (silently) if no message has arrived before AbsTime.",swi_man_manual('threadcom.html'),manual,14222).
i(/(thread_peek_message,2),"As thread_peek_message/1, operating on a given queue.",swi_man_manual('threadcom.html'),manual,16298).
i(/(message_queue_property,2),"True if Property is a property of Queue.",swi_man_manual('threadcom.html'),manual,16797).
i(/(message_queue_set,2),"Set a property on the queue.",swi_man_manual('threadcom.html'),manual,18242).
i(section(3,'10.3.2','sec:thread-wait'),"Waiting for events",swi_man_manual('threadcom.html'),manual,20184).
i(/(thread_wait,2),"Block execution of the calling thread until Goal becomes true.",swi_man_manual('threadcom.html'),manual,22808).
i(/(thread_update,2),"Update a module (typically using assert/1 and/or retract/1 and friends) and on completion signal threads waiting for this module using thread_wait/2 to reevaluate their Goal.",swi_man_manual('threadcom.html'),manual,26811).
i(section(3,'10.3.3','sec:thread-signal'),"Signalling threads",swi_man_manual('threadcom.html'),manual,28882).
i(/(thread_signal,2),"Make thread ThreadId execute Goal at the first opportunity.",swi_man_manual('threadcom.html'),manual,29882).
i(/(sig_pending,1),"True when List contains all signals submitted using thread_signal/2 that are not yet processed.",swi_man_manual('threadcom.html'),manual,35294).
i(/(sig_remove,2),"Remove all signals that unify with Pattern from the signal queue and make the removed signals available in List",swi_man_manual('threadcom.html'),manual,35784).
i(/(sig_block,1),"Block thread signals queued using thread_signal/2 that match Pattern.",swi_man_manual('threadcom.html'),manual,36086).
i(/(sig_unblock,1),"Remove any effect of sig_block/1 for patterns that are more specific (see subsumes_term/2).",swi_man_manual('threadcom.html'),manual,36418).
i(/(sig_atomic,1),"Execute Goal as once/1 while blocking both thread signals (see thread_signal/2) and OS signals (see on_signal/3).",swi_man_manual('threadcom.html'),manual,37086).
i(section(3,'10.3.4','sec:threadlocal'),"Threads and dynamic predicates",swi_man_manual('threadcom.html'),manual,39637).
i(/(thread_local,1),"This directive is related to the dynamic/1 directive.",swi_man_manual('threadcom.html'),manual,40963).
i(section(2,'10.1','sec:threadcreate'),"Creating and destroying Prolog threads",swi_man_manual('threadcreate.html'),manual,3519).
i(/(thread_create,2),"Shorthand for thread_create(Goal, Id, []).",swi_man_manual('threadcreate.html'),manual,3726).
i(/(thread_create,3),"Create a new Prolog thread (and underlying operating system thread) and start it by executing Goal.",swi_man_manual('threadcreate.html'),manual,4032).
i(/(thread_self,1),"Get the Prolog thread identifier of the running thread.",swi_man_manual('threadcreate.html'),manual,12729).
i(/(thread_join,1),"Calls thread_join/2 and succeeds if thread Id terminated with success.",swi_man_manual('threadcreate.html'),manual,12963).
i(/(thread_join,2),"Wait for the termination of the thread with the given Id.",swi_man_manual('threadcreate.html'),manual,13517).
i(/(thread_alias,1),"Set the alias name of the calling thread to Alias.",swi_man_manual('threadcreate.html'),manual,16399).
i(/(thread_detach,1),"Switch thread into detached state (see detached(Bool) option at thread_create/3) at runtime.",swi_man_manual('threadcreate.html'),manual,16712).
i(/(thread_exit,1),"Terminates the thread immediately, leaving exited(Term) as result state for thread_join/2.",swi_man_manual('threadcreate.html'),manual,17765).
i(/(thread_initialization,1),"Run Goal when thread is started.",swi_man_manual('threadcreate.html'),manual,19338).
i(/(thread_at_exit,1),"Run Goal just before releasing the thread resources.",swi_man_manual('threadcreate.html'),manual,20239).
i(/(thread_setconcurrency,2),"Determine the concurrency of the process, which is defined as the maximum number of concurrently active threads.‘Active' here means they are using CPU time.",swi_man_manual('threadcreate.html'),manual,22116).
i(/(thread_affinity,3),"True when Current is unified with the current thread affinity and the thread affinity is successfully set to New.",swi_man_manual('threadcreate.html'),manual,22685).
i(section(2,'A.58','sec:threadpool'),"library(thread_pool): Resource bounded thread management",swi_man_manual('threadpool.html'),manual,3513).
i(/(thread_pool_create,3),"Create a pool of threads.",swi_man_manual('threadpool.html'),manual,5698).
i(/(thread_pool_destroy,1),"Destroy the thread pool named Name.",swi_man_manual('threadpool.html'),manual,7136).
i(/(current_thread_pool,1),"True if Name refers to a defined thread pool.",swi_man_manual('threadpool.html'),manual,7472).
i(/(thread_pool_property,2),"True if Property is a property of thread pool Name.",swi_man_manual('threadpool.html'),manual,7706).
i(/(thread_create_in_pool,4),"Create a thread in Pool.",swi_man_manual('threadpool.html'),manual,8756).
i(/(worker_exitted,3),"It is possible that’__thread_pool_manager' no longer exists while closing down the process because the manager was killed before the worker.",swi_man_manual('threadpool.html'),manual,9665).
i(/(create_pool,1),"Hook to create a thread pool lazily.",swi_man_manual('threadpool.html'),manual,10093).
i(section(1,'10','sec:threads'),"Multithreaded applications",swi_man_manual('threads.html'),manual,3543).
i(section(2,'10.4','sec:threadsync'),"Thread synchronisation",swi_man_manual('threadsync.html'),manual,3517).
i(/(mutex_create,1),"Create a mutex.",swi_man_manual('threadsync.html'),manual,6112).
i(/(mutex_create,2),"Create a mutex using options.",swi_man_manual('threadsync.html'),manual,6450).
i(/(mutex_destroy,1),"Destroy a mutex.",swi_man_manual('threadsync.html'),manual,6882).
i(/(with_mutex,2),"Execute Goal while holding MutexId.",swi_man_manual('threadsync.html'),manual,7324).
i(/(mutex_lock,1),"Lock the mutex.",swi_man_manual('threadsync.html'),manual,8336).
i(/(mutex_trylock,1),"As mutex_lock/1, but if the mutex is held by another thread, this predicates fails immediately.",swi_man_manual('threadsync.html'),manual,9688).
i(/(mutex_unlock,1),"Unlock the mutex.",swi_man_manual('threadsync.html'),manual,10004).
i(/(mutex_unlock_all,0),"Unlock all mutexes held by the current thread.",swi_man_manual('threadsync.html'),manual,10298).
i(/(mutex_property,2),"True if Property is a property of MutexId.",swi_man_manual('threadsync.html'),manual,11018).
i(section(2,'10.5','sec:thutil'),"Thread support library(threadutil)",swi_man_manual('thutil.html'),manual,3533).
i(/(threads,0),"Lists all current threads and their status.",swi_man_manual('thutil.html'),manual,3881).
i(/(join_threads,0),"Join all terminated threads.",swi_man_manual('thutil.html'),manual,4022).
i(/(interactor,0),"Create a new console and run the Prolog top level in this new console.",swi_man_manual('thutil.html'),manual,4571).
i(section(3,'10.5.1','sec:threaddebug'),"Debugging threads",swi_man_manual('thutil.html'),manual,4975).
i(/(attach_console,0),"If the current thread has no console attached yet, attach one and redirect the user streams (input, output, and error) to the new console window.",swi_man_manual('thutil.html'),manual,5986).
i(/(tdebug,1),"Prepare ThreadId for debugging using the graphical tracer.",swi_man_manual('thutil.html'),manual,6773).
i(/(tdebug,0),"Call tdebug/1 in all running threads.",swi_man_manual('thutil.html'),manual,7476).
i(/(tnodebug,1),"Disable debugging thread ThreadId.",swi_man_manual('thutil.html'),manual,7687).
i(/(tnodebug,0),"Disable debugging in all threads.",swi_man_manual('thutil.html'),manual,7854).
i(/(tspy,2),"Set a spy point as spy/1 and enable the thread for debugging using tdebug/1.",swi_man_manual('thutil.html'),manual,7987).
i(/(tspy,1),"Set a spy point as spy/1 and enable debugging in all threads using tdebug/0.",swi_man_manual('thutil.html'),manual,8538).
i(section(3,'10.5.2','sec:tprofile'),"Profiling threads",swi_man_manual('thutil.html'),manual,9172).
i(/(tprofile,1),"Start collecting profile data in ThreadId and ask the user to hit to stop the profiler.",swi_man_manual('thutil.html'),manual,9809).
i(section(2,'7.4','sec:tnotpure'),"Tabling for impure programs",swi_man_manual('tnotpure.html'),manual,3566).
i(section(2,'4.37','sec:toplevel'),"User Top-level Manipulation",swi_man_manual('toplevel.html'),manual,3513).
i(/(break,0),"Recursively start a new Prolog top level.",swi_man_manual('toplevel.html'),manual,3701).
i(/(abort,0),"Abort the Prolog execution and restart the top level.",swi_man_manual('toplevel.html'),manual,4966).
i(/(halt,0),"Terminate Prolog execution with default exit code using halt/1.",swi_man_manual('toplevel.html'),manual,5979).
i(/(halt,1),"Terminate Prolog execution with Status.",swi_man_manual('toplevel.html'),manual,6523).
i(/(prolog,0),"This goal starts the default interactive top level.",swi_man_manual('toplevel.html'),manual,8884).
i(/(expand_query,4),"Hook in module user, normally not defined.",swi_man_manual('toplevel.html'),manual,9625).
i(/(expand_answer,2),"Hook in module user, normally not defined.",swi_man_manual('toplevel.html'),manual,10606).
i(section(2,'2.9','sec:topvars'),"Reuse of top-level bindings",swi_man_manual('topvars.html'),manual,3526).
i(section(2,'B.3','sec:tracehook'),"Intercepting the Tracer",swi_man_manual('tracehook.html'),manual,3530).
i(/(prolog_trace_interception,4),"Dynamic predicate, normally not defined.",swi_man_manual('tracehook.html'),manual,3714).
i(/(prolog_skip_frame,1),"Indicate Frame as a skipped frame and set the‘skip level' (see prolog_skip_level/2 to the recursion depth of Frame.",swi_man_manual('tracehook.html'),manual,9805).
i(/(prolog_skip_level,2),"Unify Old with the old value of‘skip level' and then set this level according to New.",swi_man_manual('tracehook.html'),manual,10466).
i(section(2,'4.34','sec:tty'),"Terminal Control",swi_man_manual('tty.html'),manual,3507).
i(/(tty_get_capability,3),"Get the capability named Name from the termcap library.",swi_man_manual('tty.html'),manual,3943).
i(/(tty_goto,2),"Goto position (X, Y) on the screen.",swi_man_manual('tty.html'),manual,4634).
i(/(tty_put,2),"Put an atom via the termcap library function tputs().",swi_man_manual('tty.html'),manual,5122).
i(/(tty_size,2),"Determine the size of the terminal.",swi_man_manual('tty.html'),manual,5651).
i(section(2,'4.5','sec:typetest'),"Verify Type of a Term",swi_man_manual('typetest.html'),manual,3508).
i(/(var,1),"True if Term currently is a free variable.",swi_man_manual('typetest.html'),manual,3928).
i(/(nonvar,1),"True if Term currently is not a free variable.",swi_man_manual('typetest.html'),manual,4124).
i(/(integer,1),"True if Term is bound to an integer.",swi_man_manual('typetest.html'),manual,4330).
i(/(float,1),"True if Term is bound to a floating point number.",swi_man_manual('typetest.html'),manual,4528).
i(/(rational,1),"True if Term is bound to a rational number.",swi_man_manual('typetest.html'),manual,4735).
i(/(rational,3),"True if Term is a rational number with given Numerator and Denominator.",swi_man_manual('typetest.html'),manual,4943).
i(/(number,1),"True if Term is bound to a rational number (including integers) or a floating point number.",swi_man_manual('typetest.html'),manual,5418).
i(/(atom,1),"True if Term is bound to an atom.",swi_man_manual('typetest.html'),manual,5670).
i(/(blob,2),"True if Term is a blob of type Type.",swi_man_manual('typetest.html'),manual,5859).
i(/(string,1),"True if Term is bound to a string.",swi_man_manual('typetest.html'),manual,6121).
i(/(atomic,1),"True if Term is bound (i.e., not a variable) and is not compound.",swi_man_manual('typetest.html'),manual,6800).
i(/(compound,1),"True if Term is bound to a compound term.",swi_man_manual('typetest.html'),manual,7850).
i(/(callable,1),"True if Term is bound to an atom or a compound term.",swi_man_manual('typetest.html'),manual,8431).
i(/(ground,1),"True if Term holds no free variables.",swi_man_manual('typetest.html'),manual,10024).
i(/(cyclic_term,1),"True if Term contains cycles, i.e.",swi_man_manual('typetest.html'),manual,10444).
i(/(acyclic_term,1),"True if Term does not contain cycles, i.e.",swi_man_manual('typetest.html'),manual,11192).
i(section(2,'A.59','sec:ugraphs'),"library(ugraphs): Graph manipulation library",swi_man_manual('ugraphs.html'),manual,3513).
i(/(vertices,2),"Unify Vertices with all vertices appearing in Graph.",swi_man_manual('ugraphs.html'),manual,4491).
i(/(vertices_edges_to_ugraph,3),"Create a UGraph from Vertices and edges.",swi_man_manual('ugraphs.html'),manual,4804).
i(/(add_vertices,3),"Unify NewGraph with a new graph obtained by adding the list of Vertices to Graph.",swi_man_manual('ugraphs.html'),manual,5760).
i(/(del_vertices,3),"Unify NewGraph with a new graph obtained by deleting the list of Vertices and all the edges that start from or go to a vertex in Vertices to the Graph.",swi_man_manual('ugraphs.html'),manual,6144).
i(/(add_edges,3),"Unify NewGraph with a new graph obtained by adding the list of Edges to Graph.",swi_man_manual('ugraphs.html'),manual,7074).
i(/(ugraph_union,3),"NewGraph is the union of Graph1 and Graph2.",swi_man_manual('ugraphs.html'),manual,7570).
i(/(del_edges,3),"Unify NewGraph with a new graph obtained by removing the list of Edges from Graph.",swi_man_manual('ugraphs.html'),manual,7918).
i(/(edges,2),"Unify Edges with all edges appearing in Graph.",swi_man_manual('ugraphs.html'),manual,8423).
i(/(transitive_closure,2),"Generate the graph Closure as the transitive closure of Graph.",swi_man_manual('ugraphs.html'),manual,8723).
i(/(transpose_ugraph,2),"Unify NewGraph with a new graph obtained from Graph by replacing all edges of the form V1-V2 by edges of the form V2-V1.",swi_man_manual('ugraphs.html'),manual,9084).
i(/(compose,3),"Compose NewGraph by connecting the drains of LeftGraph to the sources of RightGraph.",swi_man_manual('ugraphs.html'),manual,10120).
i(/(ugraph_layers,2),"Sort vertices topologically.",swi_man_manual('ugraphs.html'),manual,10512).
i(/(top_sort,2),"Sort vertices topologically.",swi_man_manual('ugraphs.html'),manual,10512).
i(/(neighbors,3),"Neigbours is a sorted list of the neighbours of Vertex in Graph.",swi_man_manual('ugraphs.html'),manual,12429).
i(/(neighbours,3),"Neigbours is a sorted list of the neighbours of Vertex in Graph.",swi_man_manual('ugraphs.html'),manual,12429).
i(/(connect_ugraph,3),"Adds Start as an additional vertex that is connected to all vertices in UGraphIn.",swi_man_manual('ugraphs.html'),manual,13004).
i(/(complement,2),"UGraphOut is a ugraph with an edge between all vertices that are not connected in UGraphIn and all edges from UGraphIn removed.",swi_man_manual('ugraphs.html'),manual,13830).
i(/(reachable,3),"True when Vertices is an ordered set of vertices reachable in UGraph, including Vertex.",swi_man_manual('ugraphs.html'),manual,14546).
i(section(2,'A.60','sec:url'),"library(url): Analysing and constructing URL",swi_man_manual('url.html'),manual,3521).
i(/(global_url,3),"Translate a possibly relative URL into an absolute one.",swi_man_manual('url.html'),manual,4554).
i(/(is_absolute_url,1),"True if URL is an absolute URL.",swi_man_manual('url.html'),manual,4930).
i(/(http_location,2),"Construct or analyze an HTTP location.",swi_man_manual('url.html'),manual,5181).
i(/(parse_url,2),"Construct or analyse a URL.",swi_man_manual('url.html'),manual,5797).
i(/(parse_url,3),"Similar to parse_url/2 for relative URLs.",swi_man_manual('url.html'),manual,8529).
i(/(www_form_encode,2),"En/decode to/from application/x-www-form-encoded.",swi_man_manual('url.html'),manual,8898).
i(/(set_url_encoding,2),"Query and set the encoding for URLs.",swi_man_manual('url.html'),manual,9874).
i(/(url_iri,2),"Convert between a URL, encoding in US-ASCII and an IRI.",swi_man_manual('url.html'),manual,10358).
i(/(parse_url_search,2),"Construct or analyze an HTTP search specification.",swi_man_manual('url.html'),manual,10843).
i(/(file_name_to_url,2),"Translate between a filename and a file:// URL.",swi_man_manual('url.html'),manual,11214).
i(section(2,'3.2','sec:usingmodules'),"Using modules",swi_man_manual('usingmodules.html'),manual,3530).
i(section(2,'A.61','sec:varnumbers'),"library(varnumbers): Utilities for numbered terms",swi_man_manual('varnumbers.html'),manual,3501).
i(/(numbervars,1),"Number variables in Term using $VAR(N).",swi_man_manual('varnumbers.html'),manual,4771).
i(/(varnumbers,2),"Inverse of numbervars/1.",swi_man_manual('varnumbers.html'),manual,5234).
i(/(varnumbers,3),"Inverse of numbervars/3.",swi_man_manual('varnumbers.html'),manual,5534).
i(/(max_var_number,3),"True when Max is the max of Start and the highest numbered $VAR(N) term.",swi_man_manual('varnumbers.html'),manual,6302).
i(/(varnumbers_names,3),"If Term is a term with numbered and named variables using the reserved term’$VAR'(X), Copy is a copy of Term where each’$VAR'(X) is consistently replaced by a fresh variable and Bindings is a list X = Var, relating the X terms with the variable it is mapped to.",swi_man_manual('varnumbers.html'),manual,6712).
i(section(2,'13.2','sec:wasm-calling'),"Calling Prolog from JavaScript",swi_man_manual('wasm-calling.html'),manual,3535).
i(section(3,'13.2.1','sec:wasm-query'),"The JavaScript class Query",swi_man_manual('wasm-calling.html'),manual,8175).
i(section(3,'13.2.2','sec:wasm-data-conversion'),"Translating data between JavaScript and Prolog",swi_man_manual('wasm-calling.html'),manual,10336).
i(section(4,'13.2.2.1','sec:wasm-data-js-to-prolog'),"Translating JavaScript data to Prolog",swi_man_manual('wasm-calling.html'),manual,10925).
i(section(4,'13.2.2.2','sec:wasm-data-prolog-to-js'),"Translating Prolog data to JavaScript",swi_man_manual('wasm-calling.html'),manual,15214).
i(section(2,'13.3','sec:wasm-js-call'),"Accessing JavaScript from Prolog",swi_man_manual('wasm-js-call.html'),manual,3525).
i(/(:=,2),"Depending on Left, this predicate implements two different actions.",swi_man_manual('wasm-js-call.html'),manual,3888).
i(/(is_object,1),"True if Term is a reference to a JavaScript object.",swi_man_manual('wasm-js-call.html'),manual,7695).
i(/(is_object,2),"True when Term is an instance of Class.",swi_man_manual('wasm-js-call.html'),manual,7917).
i(/(js_script,2),"Evaluate String as JavaScript.",swi_man_manual('wasm-js-call.html'),manual,8307).
i(/(fetch,3),"Wrapper around JavaScript fetch(), conversion of the Response object and waiting for the Promise.",swi_man_manual('wasm-js-call.html'),manual,8790).
i(section(4,'13.3.1','sec:wasm-js-async-call'),"Asynchronous access to JavaScript from Prolog",swi_man_manual('wasm-js-call.html'),manual,9375).
i(/(await,2),"Yield the Prolog VM, returning control back to JavaScript.",swi_man_manual('wasm-js-call.html'),manual,10238).
i(/(is_async,0),"True when we can call await/2 in the current state.",swi_man_manual('wasm-js-call.html'),manual,11809).
i(section(4,'13.3.2','sec:wasm-promise-abort'),"JavaScript Promise that can be aborted",swi_man_manual('wasm-js-call.html'),manual,12248).
i(section(2,'13.1','sec:wasm-loading'),"Loading and initializing Prolog",swi_man_manual('wasm-loading.html'),manual,3519).
i(section(3,'13.1.1','sec:wasm-consult'),"Loading Prolog files",swi_man_manual('wasm-loading.html'),manual,7462).
i(section(1,'13','sec:wasm'),"Using SWI-Prolog in your browser (WASM)",swi_man_manual('wasm.html'),manual,3527).
i(section(2,'6.1','sec:whymodules'),"Why Use Modules?",swi_man_manual('whymodules.html'),manual,3518).
i(section(2,'2.19','sec:widechars'),"Wide character support",swi_man_manual('widechars.html'),manual,3515).
i(section(3,'2.19.1','sec:encoding'),"Wide character encodings on streams",swi_man_manual('widechars.html'),manual,6073).
i(section(4,'2.19.1.1','sec:bom'),"BOM: Byte Order Mark",swi_man_manual('widechars.html'),manual,11580).
i(section(2,'A.28','sec:wwwbrowser'),"library(www_browser): Open a URL in the users browser",swi_man_manual('wwwbrowser.html'),manual,3511).
i(/(www_open_url,1),"Open URL in running version of the users' browser or start a new browser.",swi_man_manual('wwwbrowser.html'),manual,4107).
i(/(known_browser,2),"True if browser FileBaseName has a remote protocol compatible to Compatible.",swi_man_manual('wwwbrowser.html'),manual,5178).
i(/(expand_url_path,2),"Expand URL specifications similar to absolute_file_name/3.",swi_man_manual('wwwbrowser.html'),manual,5470).
i(section(2,'3.7','sec:xref'),"Cross-referencer",swi_man_manual('xref.html'),manual,3520).
i(/(gxref,0),"Run cross-referencer on all currently loaded files and present a graphical overview of the result.",swi_man_manual('xref.html'),manual,5149).
i(section(2,'A.62','sec:yall'),"library(yall): Lambda expressions",swi_man_manual('yall.html'),manual,3515).
i(/(>>,2),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(>>,3),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(>>,4),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(>>,5),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(>>,6),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(>>,7),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(>>,8),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(>>,9),"Calls a copy of Lambda.",swi_man_manual('yall.html'),manual,8941).
i(/(/,2),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(/,3),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(/,4),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(/,5),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(/,6),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(/,7),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(/,8),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(/,9),"Shorthand for Free/[]>>Lambda.",swi_man_manual('yall.html'),manual,10693).
i(/(is_lambda,1),"True if Term is a valid Lambda expression.",swi_man_manual('yall.html'),manual,12302).
i(/(lambda_calls,2),"Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N.",swi_man_manual('yall.html'),manual,12514).
i(/(lambda_calls,3),"Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N.",swi_man_manual('yall.html'),manual,12514).
i(section(0,'0','packages/archive.html'),"SWI-Prolog binding to libarchive",swi_man_packages('archive.html'),packages,2784).
i(section(2,'1','sec:archive-motivation'),"Motivation",swi_man_packages('archive.html'),packages,4200).
i(section(2,'2','sec:archive'),"library(archive): Access several archive formats",swi_man_packages('archive.html'),packages,6621).
i(/(archive_open,3),"Wrapper around archive_open/4 that opens the archive in read mode.",swi_man_packages('archive.html'),packages,8339).
i(/(archive_open,4),"Open the archive in Data and unify Archive with a handle to the opened archive.",swi_man_packages('archive.html'),packages,8631).
i(/(archive_close,1),"Close the archive.",swi_man_packages('archive.html'),packages,12839).
i(/(archive_property,2),"True when Property is a property of the archive Handle.",swi_man_packages('archive.html'),packages,13725).
i(/(archive_next_header,2),"Forward to the next entry of the archive for which Name unifies with the pathname of the entry.",swi_man_packages('archive.html'),packages,14200).
i(/(archive_open_entry,2),"Open the current entry as a stream.",swi_man_packages('archive.html'),packages,15448).
i(/(archive_set_header_property,2),"Set Property of the current header.",swi_man_packages('archive.html'),packages,15860).
i(/(archive_header_property,2),"True when Property is a property of the current header.",swi_man_packages('archive.html'),packages,16910).
i(/(archive_extract,3),"Extract files from the given archive into Dir.",swi_man_packages('archive.html'),packages,18343).
i(/(archive_entries,2),"True when Paths is a list of pathnames appearing in Archive.",swi_man_packages('archive.html'),packages,19874).
i(/(archive_data_stream,3),"True when DataStream is a stream to a data object inside Archive.",swi_man_packages('archive.html'),packages,20135).
i(/(archive_create,3),"Convenience predicate to create an archive in OutputFile with data from a list of InputFiles and the given Options.",swi_man_packages('archive.html'),packages,21878).
i(/(archive_foldl,4),"Operates like foldl/4 but for the entries in the archive.",swi_man_packages('archive.html'),packages,23119).
i(section(2,'3','sec:archive-status'),"Status",swi_man_packages('archive.html'),packages,24053).
i(section(0,'0','packages/utf8proc.html'),"SWI-Prolog Unicode library",swi_man_packages('utf8proc.html'),packages,2778).
i(section(2,'1','sec:unicode'),"library(unicode): Unicode string handling",swi_man_packages('utf8proc.html'),packages,3722).
i(/(unicode_map,3),"Perform unicode normalization operations.",swi_man_packages('utf8proc.html'),packages,6088).
i(/(unicode_nfd,2),"Characters are decomposed by canonical equivalence.",swi_man_packages('utf8proc.html'),packages,8748).
i(/(unicode_nfc,2),"Characters are decomposed and then recomposed by canonical equivalence.",swi_man_packages('utf8proc.html'),packages,8963).
i(/(unicode_nfkd,2),"Characters are decomposed by compatibility equivalence.",swi_man_packages('utf8proc.html'),packages,9510).
i(/(unicode_nfkc,2),"Characters are decomposed by compatibility equivalence, then recomposed by canonical equivalence.",swi_man_packages('utf8proc.html'),packages,9731).
i(/(unicode_property,2),"True if Property is defined for Char.",swi_man_packages('utf8proc.html'),packages,9995).
i(section(2,'2','sec:utf8proc-license'),"License",swi_man_packages('utf8proc.html'),packages,11768).
i(section(0,'0','packages/jpl.html'),"JPL: A bidirectional Prolog/Java interface",swi_man_packages('jpl.html'),packages,2794).
i(section(3,'1','sec:jpl'),"library(jpl): A Java interface for SWI Prolog 7.x",swi_man_packages('jpl.html'),packages,3486).
i(/(jpl_new,3),"X can be: an atomic classname, e.g.",swi_man_packages('jpl.html'),packages,3906).
i(/(jpl_call,4),"X should be either an object reference, e.g.",swi_man_packages('jpl.html'),packages,5604).
i(/(jpl_get,3),"X can be a classnameor a descriptoror an (object or array) type (for static fields)or a non-array object (for static and non-static fields)or an array (for’length' pseudo field, or indexed element retrieval) Fspec can be an atomic field nameor an integral array index (to get an element from an array)or a pair I-J of integers (to get a subrange of an array).",swi_man_packages('jpl.html'),packages,6979).
i(/(jpl_set,3),"sets the Fspec-th field of (class or object) X to value V iff it is assignable X can be a class instance (for static or non-static fields)or an array (for indexed element or subrange assignment)or a classname, or a class(_,_) or array(_) type (for static fields)but not a String (no fields to retrieve) Fspec can be an atomic field name (overloading through shadowing has yet to be handled properly)or an array index I (X must be an array object: V is assigned to X[I])or a pair I-J of integers (X must be an array object, V must be a list of values: successive members of V are assigned to X[I..J]) V must be a suitable value or object.",swi_man_packages('jpl.html'),packages,7982).
i(/(jpl_get_default_jvm_opts,1),"Returns (as a list of atoms) the options which will be passed to the JVM when it is initialised, e.g.",swi_man_packages('jpl.html'),packages,9060).
i(/(jpl_set_default_jvm_opts,1),"Replaces the default JVM initialisation options with those supplied.",swi_man_packages('jpl.html'),packages,9380).
i(/(jpl_get_actual_jvm_opts,1),"Returns (as a list of atoms) the options with which the JVM was initialised.",swi_man_packages('jpl.html'),packages,9644).
i(/(jpl_pl_lib_version,1),"Version is the fully qualified version identifier of the in-use Prolog component (jpl.pl) of JPL.",swi_man_packages('jpl.html'),packages,10013).
i(/(jpl_c_lib_version,1),"Version is the fully qualified version identifier of the in-use C component (jpl.c) of JPL.",swi_man_packages('jpl.html'),packages,10459).
i(/(jpl_class_to_classname,2),"Class is a reference to a class object.",swi_man_packages('jpl.html'),packages,10908).
i(/(jpl_class_to_type,2),"The Class is a reference to a (Java Universe) instance of java.lang.Class.",swi_man_packages('jpl.html'),packages,11613).
i(/(jpl_classname_to_class,2),"EntityName is the entity name to be mapped to a class reference.",swi_man_packages('jpl.html'),packages,12220).
i(/(jpl_entityname_to_type,2),"EntityName is the entity name (an atom) denoting a Java type, to be mapped to a JPL type.",swi_man_packages('jpl.html'),packages,12623).
i(/(jpl_type_to_entityname,2),"This is the converse of jpl_entityname_to_type/2",swi_man_packages('jpl.html'),packages,14200).
i(/(jpl_classname_to_type,2),"This is a wrapper around jpl_entityname_to_type/2 to keep the old exported predicate alive.",swi_man_packages('jpl.html'),packages,14475).
i(/(jpl_type_to_classname,2),"This is a wrapper around jpl_type_to_entityname/2 to keep the old exported predicate alive.",swi_man_packages('jpl.html'),packages,15014).
i(/(jpl_datum_to_type,2),"Datum must be a JPL representation of an instance of one (or more) Java types; Type is the unique most specialised type of which Datum denotes an instance; NB 3 is an instance of byte, char, short, int and long, of which byte and char are the joint, overlapping most specialised types, so this relates 3 to the pseudo subtype’char_byte'; See alsojpl_type_to_preferred_concrete_type/2 for converting inferred types to instantiable types",swi_man_packages('jpl.html'),packages,15553).
i(/(jpl_object_to_class,2),"fails silently if Object is not a valid reference to a Java object Class is a (canonical) reference to the (canonical) class object which represents the class of Object NB what's the point of caching the type if we don't look there first?",swi_man_packages('jpl.html'),packages,16286).
i(/(jpl_object_to_type,2),"Object must be a proper JPL reference to a Java object (i.e.",swi_man_packages('jpl.html'),packages,16728).
i(/(jpl_primitive_type,1),"Type is an atomic JPL representation of one of Java's primitive types.",swi_man_packages('jpl.html'),packages,17068).
i(/(jpl_ref_to_type,2),"Ref must be a proper JPL reference (to an object, null or void).",swi_man_packages('jpl.html'),packages,17513).
i(/(jpl_type_to_class,2),"Type is the JPL type, a ground term designating a class or an array type.",swi_man_packages('jpl.html'),packages,17771).
i(/(jpl_is_class,1),"True if Term is a JPL reference to an instance of java.lang.Class.",swi_man_packages('jpl.html'),packages,18145).
i(/(jpl_is_false,1),"True if Term is @(false), the JPL representation of the Java boolean value’false'.",swi_man_packages('jpl.html'),packages,18361).
i(/(jpl_is_null,1),"True if Term is @(null), the JPL representation of Java's’null' reference.",swi_man_packages('jpl.html'),packages,18600).
i(/(jpl_is_object,1),"True if Term is a well-formed JPL object reference.",swi_man_packages('jpl.html'),packages,18829).
i(/(jpl_is_object_type,1),"True if Term is an object (class or array) type, not e.g.",swi_man_packages('jpl.html'),packages,19082).
i(/(jpl_is_ref,1),"True if Term is a well-formed JPL reference, either to a Java object or to Java's notional but important’null' non-object.",swi_man_packages('jpl.html'),packages,19316).
i(/(jpl_is_true,1),"True if Term is @(true), the JPL representation of the Java boolean value’true'.",swi_man_packages('jpl.html'),packages,19578).
i(/(jpl_is_type,1),"True if Term is a well-formed JPL type structure.",swi_man_packages('jpl.html'),packages,19813).
i(/(jpl_is_void,1),"True if Term is @(void), the JPL representation of the pseudo Java value’void' (which is returned by jpl_call/4 when invoked on void methods).",swi_man_packages('jpl.html'),packages,19997).
i(/(jpl_false,1),"X is @(false), the JPL representation of the Java boolean value’false'.",swi_man_packages('jpl.html'),packages,20421).
i(/(jpl_null,1),"X is @(null), the JPL representation of Java's’null' reference.",swi_man_packages('jpl.html'),packages,20811).
i(/(jpl_true,1),"X is @(true), the JPL representation of the Java boolean value’true'.",swi_man_packages('jpl.html'),packages,21189).
i(/(jpl_void,1),"X is @(void), the JPL representation of the pseudo Java value’void'.",swi_man_packages('jpl.html'),packages,21573).
i(/(jpl_array_to_length,2),"Array should be a JPL reference to a Java array of any type.",swi_man_packages('jpl.html'),packages,21956).
i(/(jpl_array_to_list,2),"Array should be a JPL reference to a Java array of any type.",swi_man_packages('jpl.html'),packages,22421).
i(/(jpl_datums_to_array,2),"A will be a JPL reference to a new Java array, whose base type is the most specific Java type of which each member of Datums is (directly or indirectly) an instance.",swi_man_packages('jpl.html'),packages,23054).
i(/(jpl_enumeration_element,2),"Generates each Element from Enumeration.",swi_man_packages('jpl.html'),packages,23657).
i(/(jpl_enumeration_to_list,2),"Enumeration should be a JPL reference to an object which implements the Enumeration interface.",swi_man_packages('jpl.html'),packages,24132).
i(/(jpl_hashtable_pair,2),"Generates Key-Value pairs from the given HashTable.",swi_man_packages('jpl.html'),packages,24847).
i(/(jpl_iterator_element,2),"Iterator should be a JPL reference to an object which implements the java.util.Iterator interface.",swi_man_packages('jpl.html'),packages,25318).
i(/(jpl_list_to_array,2),"Datums should be a proper Prolog list of JPL datums (values or references).",swi_man_packages('jpl.html'),packages,25937).
i(/(jpl_terms_to_array,2),"Terms should be a proper Prolog list of arbitrary terms.",swi_man_packages('jpl.html'),packages,26454).
i(/(jpl_array_to_terms,2),"JRef should be a JPL reference to a Java array of org.jpl7.Term instances (or ots subtypes); Terms will be a list of the terms which the respective array elements represent.",swi_man_packages('jpl.html'),packages,26877).
i(/(jpl_map_element,2),"Map must be a JPL Reference to an object which implements the java.util.Map interface This generates each Key-Value pair from the Map, e.g.",swi_man_packages('jpl.html'),packages,27237).
i(/(jpl_set_element,2),"Set must be a JPL reference to an object which implements the java.util.Set interface.",swi_man_packages('jpl.html'),packages,28158).
i(/(jpl_servlet_byref,3),"This serves the byref servlet demo, exemplifying one tactic for implementing a servlet in Prolog by accepting the Request and Response objects as JPL references and accessing their members via JPL as required; See alsojpl_servlet_byval/3",swi_man_packages('jpl.html'),packages,28732).
i(/(jpl_servlet_byval,3),"This exemplifies an alternative (to jpl_servlet_byref) tactic for implementing a servlet in Prolog; most Request fields are extracted in Java before this is called, and passed in as a multimap (a map, some of whose values are maps).",swi_man_packages('jpl.html'),packages,29268).
i(/(jpl_pl_syntax,1),"Unifies Syntax with’traditional' or’modern' according to the mode in which SWI Prolog 7.x was started",swi_man_packages('jpl.html'),packages,29675).
i(section(0,'0','packages/pl2cpp.html'),"A C++ interface to SWI-Prolog",swi_man_packages('pl2cpp.html'),packages,2781).
i(section(1,'1','sec:cpp'),"A C++ interface to SWI-Prolog (Version 1)",swi_man_packages('pl2cpp.html'),packages,21829).
i(section(2,'1.1','sec:cpp-intro'),"Introduction",swi_man_packages('pl2cpp.html'),packages,21999).
i(section(2,'1.2','sec:cpp-overview'),"Overview",swi_man_packages('pl2cpp.html'),packages,23170).
i(section(2,'1.3','sec:cpp-examples'),"Examples",swi_man_packages('pl2cpp.html'),packages,27956).
i(section(3,'1.3.1','sec:cpp-hello-world'),"Hello(World)",swi_man_packages('pl2cpp.html'),packages,28252).
i(section(3,'1.3.2','sec:cpp-ex-adding-numbers'),"Adding numbers",swi_man_packages('pl2cpp.html'),packages,29322).
i(section(3,'1.3.3','sec:cpp-ex-average'),"Average of solutions",swi_man_packages('pl2cpp.html'),packages,30463).
i(section(2,'1.4','sec:cpp-plterm'),"The class PlTerm",swi_man_packages('pl2cpp.html'),packages,31548).
i(section(3,'1.4.1','sec:cpp-plterm-constructurs'),"Constructors",swi_man_packages('pl2cpp.html'),packages,31931).
i(section(3,'1.4.2','sec:cpp-plterm-casting'),"Casting PlTerm to native C-types",swi_man_packages('pl2cpp.html'),packages,34187).
i(section(3,'1.4.3','sec:cpp-plterm-unification'),"Unification",swi_man_packages('pl2cpp.html'),packages,36120).
i(section(3,'1.4.4','sec:cpp-plterm-comparison'),"Comparison",swi_man_packages('pl2cpp.html'),packages,37243).
i(section(3,'1.4.5','sec:cpp-plterm-compound'),"Analysing compound terms",swi_man_packages('pl2cpp.html'),packages,40952).
i(section(3,'1.4.6','sec:cpp-plterm-misc'),"Miscellaneous",swi_man_packages('pl2cpp.html'),packages,43089).
i(section(3,'1.4.7','sec:cpp-plstring'),"The class PlString",swi_man_packages('pl2cpp.html'),packages,43935).
i(section(3,'1.4.8','sec:cpp-codelist'),"The class PlCodeList",swi_man_packages('pl2cpp.html'),packages,45089).
i(section(3,'1.4.9','sec:cpp-plcharlist'),"The class PlCharList",swi_man_packages('pl2cpp.html'),packages,45546).
i(section(3,'1.4.10','sec:cpp-plcompound'),"The class PlCompound",swi_man_packages('pl2cpp.html'),packages,46146).
i(section(3,'1.4.11','sec:pltail'),"The class PlTail",swi_man_packages('pl2cpp.html'),packages,47332).
i(section(2,'1.5','sec:cpp-pltermv'),"The class PlTermv",swi_man_packages('pl2cpp.html'),packages,50300).
i(section(2,'1.6','sec:cpp-prolog-constants'),"Supporting Prolog constants",swi_man_packages('pl2cpp.html'),packages,51845).
i(section(2,'1.7','sec:cpp-plregister'),"The class PlRegister",swi_man_packages('pl2cpp.html'),packages,55431).
i(section(2,'1.8','sec:cpp-plquery'),"The class PlQuery",swi_man_packages('pl2cpp.html'),packages,57241).
i(section(3,'1.8.1','sec:cpp-plframe'),"The class PlFrame",swi_man_packages('pl2cpp.html'),packages,59796).
i(section(2,'1.9','sec:cpp-predicate-macro'),"The PREDICATE macro",swi_man_packages('pl2cpp.html'),packages,62223).
i(section(3,'1.9.1','sec:cpp-predicate-macro-variations'),"Variations of the PREDICATE macro",swi_man_packages('pl2cpp.html'),packages,63396).
i(section(3,'1.9.2','sec:cpp-module'),"Controlling the Prolog destination module",swi_man_packages('pl2cpp.html'),packages,64932).
i(section(2,'1.10','sec:cpp-exceptions'),"Exceptions",swi_man_packages('pl2cpp.html'),packages,65961).
i(section(3,'1.10.1','sec:cpp-plexception'),"The class PlException",swi_man_packages('pl2cpp.html'),packages,67076).
i(section(3,'1.10.2','sec:cpp-pl-type-error'),"The class PlTypeError",swi_man_packages('pl2cpp.html'),packages,70154).
i(section(3,'1.10.3','sec:cpp-pl-domain-error'),"The class PlDomainError",swi_man_packages('pl2cpp.html'),packages,70749).
i(section(2,'1.11','sec:cpp-embedding'),"Embedded applications",swi_man_packages('pl2cpp.html'),packages,71717).
i(section(2,'1.12','sec:cpp-considerations'),"Considerations",swi_man_packages('pl2cpp.html'),packages,73662).
i(section(3,'1.12.1','sec:cpp-vs-c'),"The C++ versus the C interface",swi_man_packages('pl2cpp.html'),packages,73840).
i(section(3,'1.12.2','sec:cpp-linking'),"Static linking and embedding",swi_man_packages('pl2cpp.html'),packages,74741).
i(section(3,'1.12.3','sec:cpp-status'),"Status and compiler versions",swi_man_packages('pl2cpp.html'),packages,75171).
i(section(2,'1.13','sec:conclusions'),"Conclusions",swi_man_packages('pl2cpp.html'),packages,75829).
i(section(1,'2','sec:cpp2'),"A C++ interface to SWI-Prolog (Version 2)",swi_man_packages('pl2cpp.html'),packages,76452).
i(section(2,'2.1','sec:summary-cpp2-changes'),"Summary of changes between Versions 1 and 2",swi_man_packages('pl2cpp.html'),packages,76624).
i(section(2,'2.2','sec:cpp2-sample-code'),"Sample code (version 2)",swi_man_packages('pl2cpp.html'),packages,85252).
i(section(2,'2.3','sec:cpp2-intro'),"Introduction (version 2)",swi_man_packages('pl2cpp.html'),packages,88080).
i(section(3,'2.3.1','sec:cpp2-acknowledgements'),"Acknowledgements (version 2)",swi_man_packages('pl2cpp.html'),packages,90229).
i(section(2,'2.4','sec:cpp2-life-of-a-predicate'),"The life of a PREDICATE (version 2)",swi_man_packages('pl2cpp.html'),packages,90718).
i(section(2,'2.5','sec:cpp2-overview'),"Overview (version 2)",swi_man_packages('pl2cpp.html'),packages,93719).
i(section(3,'2.5.1','sec:cpp2-philosophy'),"Design philosophy of the classes",swi_man_packages('pl2cpp.html'),packages,94457).
i(section(3,'2.5.2','sec:cpp2-files-summary'),"Summary of files",swi_man_packages('pl2cpp.html'),packages,97903).
i(section(3,'2.5.3','sec:cpp2-class-summary'),"Summary of classes",swi_man_packages('pl2cpp.html'),packages,99256).
i(section(3,'2.5.4','sec:cpp2-wrapper-functions'),"Wrapper functions",swi_man_packages('pl2cpp.html'),packages,108891).
i(section(3,'2.5.5','sec:cpp2-naming'),"Naming conventions, utility functions and methods (version 2)",swi_man_packages('pl2cpp.html'),packages,111113).
i(section(3,'2.5.6','sec:cpp2-blobs'),"Blobs",swi_man_packages('pl2cpp.html'),packages,115854).
i(section(4,'2.5.6.1','sec:cpp2-blobs-howto'),"How to define a blob using C++",swi_man_packages('pl2cpp.html'),packages,120366).
i(section(4,'2.5.6.2','sec:cpp2-blobs-life'),"The life of a PlBlob",swi_man_packages('pl2cpp.html'),packages,121083).
i(section(4,'2.5.6.3','sec:cpp2-blobs-exceptions'),"C++ exceptions and blobs",swi_man_packages('pl2cpp.html'),packages,124059).
i(section(4,'2.5.6.4','sec:cpp2-blobs-sample-code'),"Sample PlBlob code",swi_man_packages('pl2cpp.html'),packages,125621).
i(section(4,'2.5.6.5','sec:cpp2-blobs-sample-code-discussion'),"Discussion of the sample PlBlob code",swi_man_packages('pl2cpp.html'),packages,128374).
i(section(3,'2.5.7','sec:cpp2-limitations'),"Limitations of the interface",swi_man_packages('pl2cpp.html'),packages,136817).
i(section(4,'2.5.7.1','sec:cpp2-limitations-strings'),"Strings",swi_man_packages('pl2cpp.html'),packages,137052).
i(section(4,'2.5.7.2','sec:cpp2-limitations-handles'),"Object handles",swi_man_packages('pl2cpp.html'),packages,139586).
i(section(3,'2.5.8','sec:cpp2-plld'),"Linking embedded applications using swipl-ld",swi_man_packages('pl2cpp.html'),packages,141189).
i(section(2,'2.6','sec:cpp2-examples'),"Examples (version 2)",swi_man_packages('pl2cpp.html'),packages,142447).
i(section(3,'2.6.1','sec:cpp2-hello-world'),"Hello(World) (version 2)",swi_man_packages('pl2cpp.html'),packages,142758).
i(section(3,'2.6.2','sec:cpp2-ex-adding-numbers'),"Adding numbers (version 2)",swi_man_packages('pl2cpp.html'),packages,144062).
i(section(3,'2.6.3','sec:cpp2-ex-average'),"Average of solutions (version 2)",swi_man_packages('pl2cpp.html'),packages,145448).
i(section(2,'2.7','sec:cpp2-rationale'),"Rationale for changes from version 1 (version 2)",swi_man_packages('pl2cpp.html'),packages,146877).
i(section(3,'2.7.1','sec:cpp2-rationale-ctors'),"Implicit constructors and conversion operators",swi_man_packages('pl2cpp.html'),packages,147080).
i(section(3,'2.7.2','sec:cpp2-rationale-strings'),"Strings",swi_man_packages('pl2cpp.html'),packages,150362).
i(section(2,'2.8','sec:cpp2-porting-1-2'),"Porting from version 1 to version 2",swi_man_packages('pl2cpp.html'),packages,152022).
i(section(2,'2.9','sec:cpp2-plfail'),"The class PlFail (version 2)",swi_man_packages('pl2cpp.html'),packages,155727).
i(section(3,'2.9.1','sec:cpp2-plcheck'),"PlCheckFail(), PlCheckEx(), and PlCheck_PL() convenience functions",swi_man_packages('pl2cpp.html'),packages,157482).
i(section(2,'2.10','sec:cpp2-plterm'),"The class PlTerm (version 2)",swi_man_packages('pl2cpp.html'),packages,158616).
i(section(3,'2.10.1','sec:cpp2-plterm-constructurs'),"Constructors (version 2)",swi_man_packages('pl2cpp.html'),packages,158991).
i(section(3,'2.10.2','sec:cpp2-plterm-get-put-unify'),"Overview of accessing and changing values (version 2)",swi_man_packages('pl2cpp.html'),packages,162466).
i(section(3,'2.10.3','sec:cpp2-plterm-casting'),"Converting PlTerm to native C and C++ types (version 2)",swi_man_packages('pl2cpp.html'),packages,164450).
i(section(3,'2.10.4','sec:cpp2-plterm-unification'),"Unification (version 2)",swi_man_packages('pl2cpp.html'),packages,169340).
i(section(3,'2.10.5','sec:cpp2-plterm-comparison'),"Comparison (version 2)",swi_man_packages('pl2cpp.html'),packages,172829).
i(section(3,'2.10.6','sec:cpp2-plterm-compound'),"Analysing compound terms (version 2)",swi_man_packages('pl2cpp.html'),packages,176890).
i(section(3,'2.10.7','sec:cpp2-plterm-misc'),"Miscellaneous (version 2)",swi_man_packages('pl2cpp.html'),packages,178946).
i(section(3,'2.10.8','sec:cpp2-plstring'),"The class PlTermString (version 2)",swi_man_packages('pl2cpp.html'),packages,180574).
i(section(3,'2.10.9','sec:cpp2-codelist'),"The class PlCodeList (version 2)",swi_man_packages('pl2cpp.html'),packages,181888).
i(section(3,'2.10.10','sec:cpp2-plcharlist'),"The class PlCharList (version 2)",swi_man_packages('pl2cpp.html'),packages,182361).
i(section(3,'2.10.11','sec:cpp2-plcompound'),"The class PlCompound (version 2)",swi_man_packages('pl2cpp.html'),packages,182980).
i(section(3,'2.10.12','sec:cpp2-pltail'),"The class PlTail (version 2)",swi_man_packages('pl2cpp.html'),packages,184158).
i(section(2,'2.11','sec:cpp2-pltermv'),"The class PlTermv (version 2)",swi_man_packages('pl2cpp.html'),packages,186938).
i(section(2,'2.12','sec:cpp2-prolog-constants'),"The class PlAtom - Supporting Prolog constants (version 2)",swi_man_packages('pl2cpp.html'),packages,188451).
i(section(3,'2.12.1','sec:cpp2-direct-commparison-to-char-star'),"Direct comparision to char *",swi_man_packages('pl2cpp.html'),packages,189081).
i(section(3,'2.12.2','sec:cpp2-dirplatom'),"Direct comparision to PlAtom",swi_man_packages('pl2cpp.html'),packages,189706).
i(section(3,'2.12.3','sec:cpp2-extraction-comparison-atoms'),"Extraction of the atom and comparison to PlAtom",swi_man_packages('pl2cpp.html'),packages,190285).
i(section(3,'2.12.4','sec:cpp2-extraction-comparison-char-star'),"Extraction of the atom and comparison to char *",swi_man_packages('pl2cpp.html'),packages,190862).
i(section(2,'2.13','sec:cpp2-plrecord'),"Classes for the recorded database: PlRecord and PlRecordExternalCopy",swi_man_packages('pl2cpp.html'),packages,196601).
i(section(2,'2.14','sec:cpp2-foreign-frame'),"Unification and foreign frames (version 2)",swi_man_packages('pl2cpp.html'),packages,200780).
i(section(2,'2.15','sec:cpp2-plregister'),"The class PlRegister (version 2)",swi_man_packages('pl2cpp.html'),packages,201745).
i(section(2,'2.16','sec:cpp2-plquery'),"The class PlQuery (version 2)",swi_man_packages('pl2cpp.html'),packages,203571).
i(section(3,'2.16.1','sec:cpp2-plframe'),"The class PlFrame (version 2)",swi_man_packages('pl2cpp.html'),packages,206522).
i(section(2,'2.17','sec:cpp2-predicate-macro'),"The PREDICATE and PREDICATE_NONDET macros (version 2)",swi_man_packages('pl2cpp.html'),packages,209534).
i(section(3,'2.17.1','sec:cpp2-predicate-macro-variations'),"Variations of the PREDICATE macro (version 2)",swi_man_packages('pl2cpp.html'),packages,210890).
i(section(3,'2.17.2','sec:cpp2-nondet'),"Non-deterministic predicates (version 2)",swi_man_packages('pl2cpp.html'),packages,212756).
i(section(3,'2.17.3','sec:cpp2-module'),"Controlling the Prolog destination module (version 2)",swi_man_packages('pl2cpp.html'),packages,214720).
i(section(2,'2.18','sec:cpp2-exceptions'),"Exceptions (version 2)",swi_man_packages('pl2cpp.html'),packages,215765).
i(section(3,'2.18.1','sec:cpp2-plexception'),"The class PlException (version 2)",swi_man_packages('pl2cpp.html'),packages,217916).
i(section(3,'2.18.2','sec:cpp2-pl-type-error'),"The class PlTypeError (version 2)",swi_man_packages('pl2cpp.html'),packages,219199).
i(section(3,'2.18.3','sec:cpp2-pl-domain-error'),"The class PlDomainError (version 2)",swi_man_packages('pl2cpp.html'),packages,219820).
i(section(2,'2.19','sec:cpp2-embedding'),"Embedded applications (version 2)",swi_man_packages('pl2cpp.html'),packages,220814).
i(section(2,'2.20','sec:cpp2-considerations'),"Considerations (version 2)",swi_man_packages('pl2cpp.html'),packages,222748).
i(section(3,'2.20.1','sec:cpp2-vs-c'),"The C++ versus the C interface (version 2)",swi_man_packages('pl2cpp.html'),packages,222941).
i(section(3,'2.20.2','sec:cpp2-exceptions-notes'),"Notes on exceptions",swi_man_packages('pl2cpp.html'),packages,224076).
i(section(3,'2.20.3','sec:cpp2-global'),"Global terms, atoms, and functors",swi_man_packages('pl2cpp.html'),packages,226753).
i(section(3,'2.20.4','sec:cpp2-linking'),"Static linking and embedding (version 2)",swi_man_packages('pl2cpp.html'),packages,228516).
i(section(3,'2.20.5','sec:cpp2-status'),"Status and compiler versions (version 2)",swi_man_packages('pl2cpp.html'),packages,228960).
i(section(2,'2.21','sec:cpp2-conclusions'),"Conclusions (version 2)",swi_man_packages('pl2cpp.html'),packages,231179).
i(section(0,'0','packages/yaml.html'),"SWI-Prolog YAML library",swi_man_packages('yaml.html'),packages,2775).
i(section(2,'1','sec:yaml'),"library(yaml): Process YAML data",swi_man_packages('yaml.html'),packages,3695).
i(/(yaml_read,2),"Parse Input to a YAML DOM.",swi_man_packages('yaml.html'),packages,4216).
i(/(yaml_write,2),"Emit a YAML DOM object as a serialized YAML document to the stream Out.",swi_man_packages('yaml.html'),packages,6180).
i(/(yaml_write,3),"Emit a YAML DOM object as a serialized YAML document to the stream Out.",swi_man_packages('yaml.html'),packages,6180).
i(/(tagged,3),"Hook that allows convering !!tag values to be decoded or encoded.",swi_man_packages('yaml.html'),packages,7476).
i(section(0,'0','packages/sweep.html'),"sweep: SWI-Prolog Embedded in Emacs",swi_man_packages('sweep.html'),packages,2787).
i(section(2,'1','sec:sweep-installation'),"Installation",swi_man_packages('sweep.html'),packages,3699).
i(section(2,'2','sec:sweep-getting-started'),"Getting started",swi_man_packages('sweep.html'),packages,4416).
i(section(0,'0','packages/pldoc.html'),"SWI-Prolog Source Documentation Version 2",swi_man_packages('pldoc.html'),packages,2793).
i(section(2,'1','sec:pldoc-intro'),"Introduction",swi_man_packages('pldoc.html'),packages,8247).
i(section(2,'2','sec:pldoc-overview'),"Overview",swi_man_packages('pldoc.html'),packages,9507).
i(section(2,'3','sec:pldoc-comments'),"Structured comments",swi_man_packages('pldoc.html'),packages,10733).
i(section(2,'4','sec:sectioncomments'),"File (module) comments",swi_man_packages('pldoc.html'),packages,12929).
i(section(2,'5','sec:modes'),"Type, mode and determinism declaration headers",swi_man_packages('pldoc.html'),packages,14052).
i(section(2,'6','sec:tags'),"Tags: @see, etc.",swi_man_packages('pldoc.html'),packages,21071).
i(section(2,'7','sec:wiki'),"Wiki notation",swi_man_packages('pldoc.html'),packages,23694).
i(section(3,'7.1','sec:pldoc-comment-structure'),"Structuring conventions",swi_man_packages('pldoc.html'),packages,24033).
i(section(3,'7.2','sec:pldoc-markup'),"Text markup: fonts and links",swi_man_packages('pldoc.html'),packages,31430).
i(section(4,'7.2.1','sec:emph'),"Emphasizing text",swi_man_packages('pldoc.html'),packages,31609).
i(section(4,'7.2.2','sec:inlinecode'),"Inline code",swi_man_packages('pldoc.html'),packages,34173).
i(section(4,'7.2.3','sec:pldoc-links'),"Links",swi_man_packages('pldoc.html'),packages,35529).
i(section(3,'7.3','sec:pldoc-images'),"Images",swi_man_packages('pldoc.html'),packages,38248).
i(section(2,'8','sec:dirindex'),"Directory indices",swi_man_packages('pldoc.html'),packages,39289).
i(section(2,'9','sec:wikifiles'),"Documentation files",swi_man_packages('pldoc.html'),packages,39901).
i(section(2,'10','sec:running'),"Running the documentation system",swi_man_packages('pldoc.html'),packages,40761).
i(section(3,'10.1','sec:pldoc-development'),"During development",swi_man_packages('pldoc.html'),packages,40932).
i(/(doc_collect,1),"Enable/disable collecting structured comments into the Prolog database.",swi_man_packages('pldoc.html'),packages,41871).
i(/(doc_server,1),"Start documentation server at Port.",swi_man_packages('pldoc.html'),packages,42381).
i(/(doc_server,2),"Start documentation server at Port using Options.",swi_man_packages('pldoc.html'),packages,42893).
i(/(doc_browser,0),"Open the user's default browser on the running documentation server.",swi_man_packages('pldoc.html'),packages,44910).
i(/(doc_browser,1),"Open the user's default browser on the specified page.",swi_man_packages('pldoc.html'),packages,45116).
i(section(3,'10.2','sec:manserver'),"As a manual server",swi_man_packages('pldoc.html'),packages,45599).
i(/(doc_load_library,0),"Load all library files.",swi_man_packages('pldoc.html'),packages,45974).
i(section(3,'10.3','sec:browser'),"Using the browser interface",swi_man_packages('pldoc.html'),packages,46559).
i(section(4,'10.3.1','sec:pldoc-search'),"Searching",swi_man_packages('pldoc.html'),packages,46994).
i(section(4,'10.3.2','sec:pldoc-views'),"Views",swi_man_packages('pldoc.html'),packages,48217).
i(section(4,'10.3.3','sec:pldoc-editing'),"Editing",swi_man_packages('pldoc.html'),packages,49789).
i(section(3,'10.4','sec:docfiles'),"library(doc_files): Create stand-alone documentation files",swi_man_packages('pldoc.html'),packages,50661).
i(/(doc_save,2),"Save documentation for FileOrDir to file(s).",swi_man_packages('pldoc.html'),packages,51308).
i(section(3,'10.5','sec:doclatex'),"Including PlDoc in a LaTeX document",swi_man_packages('pldoc.html'),packages,53745).
i(section(4,'10.5.1','sec:pldoc-latex-predicates'),"Predicate reference for the LaTeX backend",swi_man_packages('pldoc.html'),packages,55162).
i(/(doc_latex,3),"Process one or more objects, writing the LaTeX output to OutFile.",swi_man_packages('pldoc.html'),packages,55820).
i(/(latex_for_file,3),"Generate a LaTeX description of all commented predicates in File, writing the LaTeX text to the stream Out.",swi_man_packages('pldoc.html'),packages,57991).
i(/(latex_for_wiki_file,3),"Write a LaTeX translation of a Wiki file to the steam Out.",swi_man_packages('pldoc.html'),packages,58499).
i(/(latex_for_predicates,3),"Generate LaTeX for a list of predicate indicators.",swi_man_packages('pldoc.html'),packages,58957).
i(section(2,'11','sec:motivation'),"Motivation of choices",swi_man_packages('pldoc.html'),packages,59447).
i(section(2,'12','sec:pldoc-compatibility'),"Compatibility and standards",swi_man_packages('pldoc.html'),packages,63598).
i(section(0,'0','packages/paxos.html'),"Paxos -- a SWI-Prolog replicating key-value store",swi_man_packages('paxos.html'),packages,2801).
i(section(2,'1','sec:paxos'),"library(paxos): A Replicated Data Store",swi_man_packages('paxos.html'),packages,3670).
i(/(paxos_initialize,1),"Initialize this Prolog process as a paxos node.",swi_man_packages('paxos.html'),packages,7682).
i(/(paxos_property,1),"True if Property is a current property for the paxos network.",swi_man_packages('paxos.html'),packages,8752).
i(/(paxos_set,1),"Equivalent to paxos_key(Term,Key), pasox_set(Key,Term).",swi_man_packages('paxos.html'),packages,9082).
i(/(paxos_set,2),"negotiates to have Key-Value recorded in the ledger for each of the quorum's members.",swi_man_packages('paxos.html'),packages,9482).
i(/(paxos_set,3),"negotiates to have Key-Value recorded in the ledger for each of the quorum's members.",swi_man_packages('paxos.html'),packages,9482).
i(/(paxos_quorum_ask,4),"Ask the paxos forum for their opinion.",swi_man_packages('paxos.html'),packages,11483).
i(/(paxos_get,1),"Equivalent to paxos_key(Term,Key), pasox_get(Key,Term).",swi_man_packages('paxos.html'),packages,12472).
i(/(paxos_get,2),"unifies Term with the entry retrieved from the Paxon's ledger.",swi_man_packages('paxos.html'),packages,12865).
i(/(paxos_get,3),"unifies Term with the entry retrieved from the Paxon's ledger.",swi_man_packages('paxos.html'),packages,12865).
i(/(paxos_replicate_key,3),"Replicate a Key to Nodes.",swi_man_packages('paxos.html'),packages,14246).
i(/(paxos_on_change,2),"Executes the specified Goal when Key changes.",swi_man_packages('paxos.html'),packages,14777).
i(/(paxos_on_change,3),"Executes the specified Goal when Key changes.",swi_man_packages('paxos.html'),packages,14777).
i(/(paxos_ledger_hook,5),"Hook called for all operations on the ledger.",swi_man_packages('paxos.html'),packages,15941).
i(section(0,'0','packages/pengines.html'),"Pengines: Web Logic Programming Made Easy",swi_man_packages('pengines.html'),packages,2793).
i(section(2,'1','sec:pengine-overview'),"An overview of Pengines",swi_man_packages('pengines.html'),packages,5099).
i(section(3,'1.1','sec:pengine-references'),"Pengine references",swi_man_packages('pengines.html'),packages,10584).
i(section(3,'1.2','sec:pengine-examples'),"Pengine by examples",swi_man_packages('pengines.html'),packages,11614).
i(section(3,'1.3','sec:pengine-server-code'),"Making predicates available to clients",swi_man_packages('pengines.html'),packages,15400).
i(section(3,'1.4','sec:prolog-canonical-json'),"Mapping Prolog terms into JSON",swi_man_packages('pengines.html'),packages,17318).
i(section(3,'1.5','sec:pengine-settings'),"Pengine settings",swi_man_packages('pengines.html'),packages,18948).
i(section(2,'2','sec:pengine-libs'),"Pengine libraries",swi_man_packages('pengines.html'),packages,19878).
i(section(3,'2.1','sec:pengines'),"library(pengines): Pengines: Web Logic Programming Made Easy",swi_man_packages('pengines.html'),packages,20041).
i(/(pengine_create,1),"Creates a new pengine.",swi_man_packages('pengines.html'),packages,20549).
i(/(pengine_ask,3),"Asks pengine NameOrID a query Query.",swi_man_packages('pengines.html'),packages,23136).
i(/(pengine_next,2),"Asks pengine NameOrID for the next solution to a query started by pengine_ask/3.",swi_man_packages('pengines.html'),packages,26413).
i(/(pengine_stop,2),"Tells pengine NameOrID to stop looking for more solutions to a query started by pengine_ask/3.",swi_man_packages('pengines.html'),packages,28448).
i(/(pengine_abort,1),"Aborts the running query.",swi_man_packages('pengines.html'),packages,29027).
i(/(pengine_destroy,1),"Destroys the pengine NameOrID.",swi_man_packages('pengines.html'),packages,29419).
i(/(pengine_destroy,2),"Destroys the pengine NameOrID.",swi_man_packages('pengines.html'),packages,29419).
i(/(pengine_self,1),"True if the current thread is a pengine with Id.",swi_man_packages('pengines.html'),packages,29974).
i(/(pengine_application,1),"Directive that must be used to declare a pengine application module.",swi_man_packages('pengines.html'),packages,30192).
i(/(current_pengine_application,1),"True when Application is a currently defined application.",swi_man_packages('pengines.html'),packages,30831).
i(/(pengine_property,2),"True when Property is a property of the given Pengine.",swi_man_packages('pengines.html'),packages,31240).
i(/(pengine_output,1),"Sends Term to the parent pengine or thread.",swi_man_packages('pengines.html'),packages,33288).
i(/(pengine_debug,2),"Create a message using format/3 from Format and Args and send this to the client.",swi_man_packages('pengines.html'),packages,33507).
i(/('thread_pool:create_pool',1),"On demand creation of a thread pool for a pengine application.",swi_man_packages('pengines.html'),packages,34389).
i(/(pengine_done,0),"Called from the pengine thread at_exit option.",swi_man_packages('pengines.html'),packages,34681).
i(/(prepare_module,3),"Hook, called to initialize the temporary private module that provides the working context of a pengine.",swi_man_packages('pengines.html'),packages,35116).
i(/(prepare_goal,3),"Pre-preparation hook for running Goal0.",swi_man_packages('pengines.html'),packages,36174).
i(/(not_sandboxed,2),"This hook is called to see whether the Pengine must be executed in a protected environment.",swi_man_packages('pengines.html'),packages,36898).
i(/(pengine_pull_response,2),"Pulls a response (an event term) from the slave Pengine if Pengine is a remote process, else does nothing at all.",swi_man_packages('pengines.html'),packages,37699).
i(/(pengine_input,2),"Sends Prompt to the master (parent) pengine and waits for input.",swi_man_packages('pengines.html'),packages,38028).
i(/(pengine_respond,3),"Sends a response in the form of the term Input to a slave (child) pengine that has prompted its master (parent) for input.",swi_man_packages('pengines.html'),packages,38351).
i(/(pengine_event_loop,2),"Starts an event loop accepting event terms sent to the current pengine or thread.",swi_man_packages('pengines.html'),packages,38880).
i(/(pengine_rpc,2),"Semantically equivalent to the sequence below, except that the query is executed in (and in the Prolog context of) the pengine server referred to by URL, rather than locally.",swi_man_packages('pengines.html'),packages,40168).
i(/(pengine_rpc,3),"Semantically equivalent to the sequence below, except that the query is executed in (and in the Prolog context of) the pengine server referred to by URL, rather than locally.",swi_man_packages('pengines.html'),packages,40168).
i(/(prompt,3),"Hook to handle pengine_input/2 from the remote pengine.",swi_man_packages('pengines.html'),packages,41447).
i(/(output,2),"Hook to handle pengine_output/1 from the remote pengine.",swi_man_packages('pengines.html'),packages,41873).
i(/(portray_blob,2),"Portray non-text blobs that may appear in output terms.",swi_man_packages('pengines.html'),packages,42233).
i(/(write_result,3),"Hook that allows for different output formats.",swi_man_packages('pengines.html'),packages,42742).
i(/(add_error_details,3),"Add format error code and location information to an error.",swi_man_packages('pengines.html'),packages,43251).
i(/(event_to_json,3),"Hook that translates a Pengine event structure into a term suitable for reply_json/1, according to the language specification Lang.",swi_man_packages('pengines.html'),packages,43505).
i(/(authentication_hook,3),"This hook is called from the =/pengine/create= HTTP handler to discover whether the server is accessed by an authorized user.",swi_man_packages('pengines.html'),packages,44104).
i(/(pengine_user,1),"True when the pengine was create by an HTTP request that authorized User.",swi_man_packages('pengines.html'),packages,45269).
i(/(pengine_event,1),"Examines the pengine's event queue and if necessary blocks execution until a term that unifies to Term arrives in the queue.",swi_man_packages('pengines.html'),packages,45718).
i(/(pengine_event,2),"Examines the pengine's event queue and if necessary blocks execution until a term that unifies to Term arrives in the queue.",swi_man_packages('pengines.html'),packages,45718).
i(section(3,'2.2','sec:termtojson'),"library(term_to_json)",swi_man_packages('pengines.html'),packages,46740).
i(/(term_to_json,3),"Convert any general Prolog term into a JSON term.",swi_man_packages('pengines.html'),packages,46926).
i(/(term_to_json,2),"Convert any general Prolog term into a JSON term.",swi_man_packages('pengines.html'),packages,46926).
i(section(0,'0','packages/tipc.html'),"Transparent Inter-Process Communications (TIPC) libraries",swi_man_packages('tipc.html'),packages,2809).
i(section(2,'1','sec:tipc-main'),"Transparent Inter-Process Communications (TIPC)",swi_man_packages('tipc.html'),packages,5477).
i(section(3,'1.1','sec:tipc-overview'),"Overview",swi_man_packages('tipc.html'),packages,6442).
i(section(3,'1.2','sec:tipc-address-structures'),"TIPC Address Structures",swi_man_packages('tipc.html'),packages,12123).
i(section(2,'2','sec:tipc-libraries'),"The TIPC libraries: library(tipc/...)",swi_man_packages('tipc.html'),packages,15621).
i(section(3,'2.1','sec:tipc'),"library(tipc/tipc): TIPC Sockets",swi_man_packages('tipc.html'),packages,15819).
i(/(tipc_socket,2),"Creates a TIPC-domain socket of the type specified by SocketType, and unifies it to an identifier, SocketId.",swi_man_packages('tipc.html'),packages,17537).
i(/(tipc_close_socket,1),"Closes the indicated socket, making SocketId invalid.",swi_man_packages('tipc.html'),packages,18215).
i(/(tipc_open_socket,3),"Opens two SWI-Prolog I/O-streams, one to deal with input from the socket and one with output to the socket.",swi_man_packages('tipc.html'),packages,19637).
i(/(tipc_bind,3),"Associates/disassociates a socket with the name/3 or name_seq/3 address specified in Address.",swi_man_packages('tipc.html'),packages,20185).
i(/(tipc_listen,2),"Listens for incoming requests for connections.",swi_man_packages('tipc.html'),packages,23043).
i(/(tipc_accept,3),"Blocks on a server socket and waits for connection requests from clients.",swi_man_packages('tipc.html'),packages,23622).
i(/(tipc_connect,2),"Provides a connection-oriented, client-interface to connect a socket to a given TIPC_address.",swi_man_packages('tipc.html'),packages,24074).
i(/(tipc_get_name,2),"Unifies TIPC_address with the port-id assigned to the socket.",swi_man_packages('tipc.html'),packages,24510).
i(/(tipc_get_peer_name,2),"Unifies TIPC_address with the port-id assigned to the socket that this socket is connected to.",swi_man_packages('tipc.html'),packages,24763).
i(/(tipc_setopt,2),"Sets options on the socket.",swi_man_packages('tipc.html'),packages,25060).
i(/(tipc_receive,4),"Waits for, and returns the next datagram.",swi_man_packages('tipc.html'),packages,26129).
i(/(tipc_send,4),"sends a TIPC datagram to one or more destinations.",swi_man_packages('tipc.html'),packages,27645).
i(/(tipc_canonical_address,2),"Translates a port_id/2 address into canonical TIPC form: tipc_address(Zone, Cluster, Node, Reference)It is provided for debugging an printing purposes only.",swi_man_packages('tipc.html'),packages,29042).
i(/(tipc_service_exists,2),"Interrogates the TIPC topology server to see if a service is available at an advertised Address.",swi_man_packages('tipc.html'),packages,29583).
i(/(tipc_service_exists,1),"Interrogates the TIPC topology server to see if a service is available at an advertised Address.",swi_man_packages('tipc.html'),packages,29583).
i(/(tipc_service_probe,1),"Allows a user to discover the instance ranges and/or port-ids for a particular service.",swi_man_packages('tipc.html'),packages,30862).
i(/(tipc_service_probe,2),"Allows a user to discover the instance ranges and/or port-ids for a particular service.",swi_man_packages('tipc.html'),packages,30862).
i(/(tipc_service_port_monitor,2),"Monitors a collection of worker threads that are bound to a list of Addresses.",swi_man_packages('tipc.html'),packages,31576).
i(/(tipc_service_port_monitor,3),"Monitors a collection of worker threads that are bound to a list of Addresses.",swi_man_packages('tipc.html'),packages,31576).
i(/(tipc_initialize,0),"causes the TIPC service and the TIPC stack to be initialized and made ready for service.",swi_man_packages('tipc.html'),packages,33819).
i(section(3,'2.2','sec:tipcbroadcast'),"library(tipc/tipc_broadcast): A TIPC Broadcast Bridge",swi_man_packages('tipc.html'),packages,34223).
i(section(4,'2.2.1','sec:tipc-caveats'),"Caveats",swi_man_packages('tipc.html'),packages,39295).
i(/(tipc_host_to_address,2),"locates a TIPC service by name.",swi_man_packages('tipc.html'),packages,43210).
i(/(tipc_initialize,0),"See tipc:tipc_initialize/0",swi_man_packages('tipc.html'),packages,44021).
i(section(3,'2.3','sec:tipcpaxos'),"library(tipc/tipc_paxos): Paxos on TIPC",swi_man_packages('tipc.html'),packages,44241).
i(/(tipc_paxos_set,1),"",swi_man_packages('tipc.html'),packages,44762).
i(/(tipc_paxos_get,1),"",swi_man_packages('tipc.html'),packages,44762).
i(/(tipc_paxos_get,2),"",swi_man_packages('tipc.html'),packages,44762).
i(/(tipc_paxos_set,2),"",swi_man_packages('tipc.html'),packages,44762).
i(/(tipc_paxos_on_change,2),"",swi_man_packages('tipc.html'),packages,44762).
i(/(tipc_initialize,0),"causes the TIPC service and the TIPC stack to be initialized and made ready for service.",swi_man_packages('tipc.html'),packages,45537).
i(section(3,'2.4','sec:tipclinda'),"library(tipc/tipc_linda): A Process Communication Interface",swi_man_packages('tipc.html'),packages,45941).
i(section(4,'2.4.1','sec:tipc-linda-servers'),"Servers",swi_man_packages('tipc.html'),packages,50602).
i(section(4,'2.4.2','sec:tipc-linda-clients'),"Clients",swi_man_packages('tipc.html'),packages,51224).
i(/(linda,0),"Starts a Linda-server in this process.",swi_man_packages('tipc.html'),packages,51734).
i(/(linda,1),"Starts a Linda-server in this process.",swi_man_packages('tipc.html'),packages,51734).
i(/(linda_client,1),"Establishes a connection to a Linda-server providing a named tuple space.",swi_man_packages('tipc.html'),packages,52927).
i(/(close_client,0),"Closes the connection to the Linda-server.",swi_man_packages('tipc.html'),packages,53499).
i(/(linda_timeout,2),"Controls Linda's message-passing timeout.",swi_man_packages('tipc.html'),packages,53753).
i(/(linda_timeout,1),"Temporarily sets Linda's timeout.",swi_man_packages('tipc.html'),packages,55120).
i(/(out,1),"Places a Tuple in Linda's tuple-space.",swi_man_packages('tipc.html'),packages,55639).
i(/(in,1),"Atomically removes the tuple Tuple from Linda's tuple-space if it is there.",swi_man_packages('tipc.html'),packages,55832).
i(/(in_noblock,1),"Atomically removes the tuple Tuple from Linda's tuple-space if it is there.",swi_man_packages('tipc.html'),packages,56257).
i(/(in,2),"As in/1 but succeeds when any one of the tuples in TupleList is available.",swi_man_packages('tipc.html'),packages,56578).
i(/(rd,1),"Succeeds nondeterministically if Tuple is available in the tuple-space, suspends otherwise until it is available.",swi_man_packages('tipc.html'),packages,56905).
i(/(rd_noblock,1),"Succeeds nondeterministically if Tuple is available in the tuple-space, fails otherwise.",swi_man_packages('tipc.html'),packages,57259).
i(/(rd,2),"As in/2 but provides a choice point that does not remove any tuples.",swi_man_packages('tipc.html'),packages,57562).
i(/(bagof_in_noblock,3),"Bag is the list of all instances of Template such that Tuple exists in the tuple-space.",swi_man_packages('tipc.html'),packages,57822).
i(/(bagof_rd_noblock,3),"Bag is the list of all instances of Template such that Tuple exists in the tuple-space.",swi_man_packages('tipc.html'),packages,57822).
i(/(linda_eval,1),"Causes Goal to be evaluated in parallel with a parent predicate.",swi_man_packages('tipc.html'),packages,58993).
i(/(linda_eval,2),"Causes Goal to be evaluated in parallel with a parent predicate.",swi_man_packages('tipc.html'),packages,58993).
i(/(linda_eval_detached,1),"Causes Goal to be evaluated in parallel with a parent predicate.",swi_man_packages('tipc.html'),packages,58993).
i(/(linda_eval_detached,2),"Causes Goal to be evaluated in parallel with a parent predicate.",swi_man_packages('tipc.html'),packages,58993).
i(/(tuple,1),"registers Head as a virtual tuple in TIPC Linda's tuple space.",swi_man_packages('tipc.html'),packages,61792).
i(/(tuple,2),"registers Head as a virtual tuple in TIPC Linda's tuple space.",swi_man_packages('tipc.html'),packages,61792).
i(/(tipc_linda_server,0),"Acts as a stand-alone Linda server.",swi_man_packages('tipc.html'),packages,63671).
i(/(tipc_initialize,0),"See tipc:tipc_initialize/0.",swi_man_packages('tipc.html'),packages,64783).
i(section(0,'0','packages/mqi.html'),"mqi -- Python and Other Programming Languge Integration for SWI Prolog",swi_man_packages('mqi.html'),packages,2823).
i(section(2,'1','sec:mqi-overview'),"Machine Query Interface Overview",swi_man_packages('mqi.html'),packages,5423).
i(section(3,'1.1','sec:mqi-python-installation'),"Installation Steps for Python",swi_man_packages('mqi.html'),packages,8824).
i(section(3,'1.2','sec:mqi-language-installation'),"Installation Steps for Other Languages",swi_man_packages('mqi.html'),packages,9482).
i(section(3,'1.3','sec:mqi-toplevel-differences'),"Prolog Language Differences from the Top Level",swi_man_packages('mqi.html'),packages,11282).
i(section(3,'1.4','sec:mqi-embedded-mode'),"Embedded Mode: Integrating the Machine Query Interface Into a New Programming Language",swi_man_packages('mqi.html'),packages,15270).
i(section(3,'1.5','sec:mqi-standalone-mode'),"Standalone Mode: Debugging Prolog Code Used in an Application",swi_man_packages('mqi.html'),packages,23299).
i(section(3,'1.6','sec:mqi-messages'),"Machine Query Interface Messages",swi_man_packages('mqi.html'),packages,26215).
i(section(4,'1.6.1','sec:mqi-message-format'),"Machine Query Interface Message Format",swi_man_packages('mqi.html'),packages,27423).
i(section(4,'1.6.2','sec:mqi-messages'),"Machine Query Interface Messages Reference",swi_man_packages('mqi.html'),packages,29775).
i(section(2,'2','sec:mqi'),"library(mqi)",swi_man_packages('mqi.html'),packages,43343).
i(/(mqi_start,1),"Starts a Prolog Machine Query Interface ('MQI') using Options.",swi_man_packages('mqi.html'),packages,43502).
i(/(mqi_version,2),"Provides the major and minor version number of the protocol used by the MQI.",swi_man_packages('mqi.html'),packages,51561).
i(/(mqi_start,0),"Main entry point for running the Machine Query Interface in \"Embedded Mode\" (section 1.4) and designed to be called from the command line.",swi_man_packages('mqi.html'),packages,53327).
i(/(mqi_stop,1),"If Server_Thread_ID is a variable, stops all Machine Query Interfaces and associated threads.",swi_man_packages('mqi.html'),packages,55066).
i(section(0,'0','packages/plunit.html'),"Prolog Unit Tests",swi_man_packages('plunit.html'),packages,2769).
i(section(2,'1','sec:plunit-intro'),"Introduction",swi_man_packages('plunit.html'),packages,6589).
i(section(2,'2','sec:unitbox'),"A Unit Test box",swi_man_packages('plunit.html'),packages,7524).
i(section(3,'2.1','sec:unitoptions'),"Test Unit options",swi_man_packages('plunit.html'),packages,14847).
i(/(begin_tests,1),"Start named test-unit.",swi_man_packages('plunit.html'),packages,15029).
i(/(begin_tests,2),"Start named test-unit with options.",swi_man_packages('plunit.html'),packages,15219).
i(section(3,'2.2','sec:testbody'),"Writing the test body",swi_man_packages('plunit.html'),packages,16440).
i(section(4,'2.2.1','sec:testdet'),"Testing deterministic predicates",swi_man_packages('plunit.html'),packages,17115).
i(section(4,'2.2.2','sec:testsemidet'),"Testing semi-deterministic predicates",swi_man_packages('plunit.html'),packages,18380).
i(section(4,'2.2.3','sec:testnondet'),"Testing non-deterministic predicates",swi_man_packages('plunit.html'),packages,19028).
i(section(4,'2.2.4','sec:testerror'),"Testing error conditions",swi_man_packages('plunit.html'),packages,19748).
i(section(4,'2.2.5','sec:testassertion'),"One body with multiple tests using assertions",swi_man_packages('plunit.html'),packages,20325).
i(section(2,'3','sec:testfiles'),"Using separate test files",swi_man_packages('plunit.html'),packages,22750).
i(section(2,'4','sec:pldoc-running'),"Running the test-suite",swi_man_packages('plunit.html'),packages,23330).
i(section(3,'4.1','sec:pldoc-running-repl'),"Running the test suite from Prolog",swi_man_packages('plunit.html'),packages,23501).
i(/(run_tests,0),"Run all test-units.",swi_man_packages('plunit.html'),packages,23908).
i(/(run_tests,1),"Run only the specified tests.",swi_man_packages('plunit.html'),packages,24029).
i(section(3,'4.2','sec:pldoc-running-cli'),"Running the test suite from the command line",swi_man_packages('plunit.html'),packages,24941).
i(section(2,'5','sec:state'),"Tests and production systems",swi_man_packages('plunit.html'),packages,25650).
i(section(2,'6','sec:options'),"Controlling the test suite",swi_man_packages('plunit.html'),packages,26186).
i(/(set_test_options,1),"Defined options are: load(+Load)Determines whether or not tests are loaded.",swi_man_packages('plunit.html'),packages,26365).
i(/(load_test_files,1),"Load .plt test-files that belong to the currently loaded sources.",swi_man_packages('plunit.html'),packages,29456).
i(/(running_tests,0),"Print all currently running tests to the terminal.",swi_man_packages('plunit.html'),packages,29670).
i(/(test_report,1),"Print report on the executed tests.",swi_man_packages('plunit.html'),packages,29972).
i(section(2,'7','sec:wizard'),"Auto-generating tests",swi_man_packages('plunit.html'),packages,30297).
i(section(2,'8','sec:testcover'),"library(test_cover): Clause coverage analysis",swi_man_packages('plunit.html'),packages,32472).
i(/(show_coverage,1),"Report on coverage by Goal.",swi_man_packages('plunit.html'),packages,33959).
i(/(show_coverage,2),"Report on coverage by Goal.",swi_man_packages('plunit.html'),packages,33959).
i(/(report_hook,2),"This hook is called after the data collection.",swi_man_packages('plunit.html'),packages,36435).
i(section(2,'9','sec:porting'),"Portability of the test-suite",swi_man_packages('plunit.html'),packages,37135).
i(section(3,'9.1','sec:sicstus'),"PlUnit on SICStus",swi_man_packages('plunit.html'),packages,38183).
i(section(2,'10','sec:plunit-motivation'),"Motivation of choices",swi_man_packages('plunit.html'),packages,39483).
i(section(0,'0','packages/sgml.html'),"SWI-Prolog SGML/XML parser",swi_man_packages('sgml.html'),packages,2778).
i(section(2,'1','sec:sgml-intro'),"Introduction",swi_man_packages('sgml.html'),packages,7329).
i(section(2,'2','sec:sgml-bluffers-guide'),"Bluffer's Guide",swi_man_packages('sgml.html'),packages,8572).
i(section(3,'2.1','sec:sgml-goodies'),"‘Goodies' Predicates",swi_man_packages('sgml.html'),packages,11253).
i(/(load_sgml,3),"Calls load_structure/3 with the given Options, using the default option dialect(sgml)",swi_man_packages('sgml.html'),packages,11706).
i(/(load_xml,3),"Calls load_structure/3 with the given Options, using the default option dialect(xml)",swi_man_packages('sgml.html'),packages,12043).
i(/(load_html,3),"Calls load_structure/3 with the given Options, using the default options dialect(HTMLDialect), where HTMLDialect is html4 or html5 (default), depending on the Prolog flag html_dialect.",swi_man_packages('sgml.html'),packages,12377).
i(section(2,'3','sec:sgml-predicates'),"Predicate Reference",swi_man_packages('sgml.html'),packages,13127).
i(section(3,'3.1','sec:sgml-load-structure'),"Loading Structured Documents",swi_man_packages('sgml.html'),packages,13299).
i(/(load_structure,3),"Parse Source and return the resulting structure in ListOfContent.",swi_man_packages('sgml.html'),packages,14016).
i(section(3,'3.2','sec:xml-whitespace'),"Handling white-space",swi_man_packages('sgml.html'),packages,22981).
i(section(3,'3.3','sec:xml'),"XML documents",swi_man_packages('sgml.html'),packages,25715).
i(section(4,'3.3.1','sec:xmlns'),"XML Namespaces",swi_man_packages('sgml.html'),packages,27526).
i(/(iri_xml_namespace,3),"Split an IRI (Unicode URI) into its Namespace (an IRI) and Localname (a Unicode XML name, see xml_name/2).",swi_man_packages('sgml.html'),packages,30006).
i(/(iri_xml_namespace,2),"Same as iri_xml_namespace/3, but avoids creating an atom for the Localname.",swi_man_packages('sgml.html'),packages,31552).
i(section(3,'3.4','sec:sgml-dtd'),"DTD-Handling",swi_man_packages('sgml.html'),packages,31917).
i(/(new_dtd,2),"Creates an empty DTD for the named DocType.",swi_man_packages('sgml.html'),packages,32397).
i(/(free_dtd,1),"Deallocate all resources associated to the DTD.",swi_man_packages('sgml.html'),packages,32682).
i(/(load_dtd,2),"Define the DTD by loading the SGML-DTD file File.",swi_man_packages('sgml.html'),packages,32889).
i(/(load_dtd,3),"Define the DTD by loading File.",swi_man_packages('sgml.html'),packages,33185).
i(/(open_dtd,3),"Open a DTD as an output stream.",swi_man_packages('sgml.html'),packages,33712).
i(/(dtd,2),"Find the DTD representing the indicated doctype.",swi_man_packages('sgml.html'),packages,34246).
i(/(dtd_property,2),"This predicate is used to examine the content of a DTD.",swi_man_packages('sgml.html'),packages,35824).
i(section(4,'3.4.1','sec:sgml-doctype'),"The DOCTYPE declaration",swi_man_packages('sgml.html'),packages,40660).
i(section(3,'3.5','sec:implicitdtd'),"Extracting a DTD",swi_man_packages('sgml.html'),packages,41237).
i(section(3,'3.6','sec:sgml-primitives'),"Parsing Primitives",swi_man_packages('sgml.html'),packages,42386).
i(/(new_sgml_parser,2),"Creates a new parser.",swi_man_packages('sgml.html'),packages,42577).
i(/(free_sgml_parser,1),"Destroy all resources related to the parser.",swi_man_packages('sgml.html'),packages,43393).
i(/(set_sgml_parser,2),"Sets attributes to the parser.",swi_man_packages('sgml.html'),packages,43670).
i(/(get_sgml_parser,2),"Retrieve infomation on the current status of the parser.",swi_man_packages('sgml.html'),packages,48866).
i(/(sgml_parse,2),"Parse an XML file.",swi_man_packages('sgml.html'),packages,53685).
i(section(4,'3.6.1','sec:sgml-partial-documents'),"Partial Parsing",swi_man_packages('sgml.html'),packages,61452).
i(section(3,'3.7','sec:sgml-type'),"Type checking",swi_man_packages('sgml.html'),packages,63355).
i(/(xml_is_dom,1),"True if Term is an SGML/XML term as produced by one of the above predicates and acceptable by xml_write/3 and friends.",swi_man_packages('sgml.html'),packages,63529).
i(section(2,'4','sec:sgml-encoding'),"Stream encoding issues",swi_man_packages('sgml.html'),packages,63862).
i(section(2,'5','sec:xpath'),"library(xpath): Select nodes in an XML DOM",swi_man_packages('sgml.html'),packages,64768).
i(/(xpath_chk,3),"Semi-deterministic version of xpath/3.",swi_man_packages('sgml.html'),packages,65681).
i(/(xpath,3),"Match an element in a DOM structure.",swi_man_packages('sgml.html'),packages,65931).
i(section(2,'6','sec:indexaccess'),"Processing Indexed Files",swi_man_packages('sgml.html'),packages,73651).
i(section(2,'7','sec:sgml-external-entities'),"External entities",swi_man_packages('sgml.html'),packages,76077).
i(/(sgml_register_catalog_file,2),"Register the indicated File as a catalog file.",swi_man_packages('sgml.html'),packages,77119).
i(section(2,'8','sec:pwp'),"library(pwp): Prolog Well-formed Pages",swi_man_packages('sgml.html'),packages,78744).
i(/(pwp_files,2),"loads an Xml document from the file named In, transforms it using the PWP attributes, and writes the transformed version to the new file named Out.",swi_man_packages('sgml.html'),packages,91012).
i(/(pwp_stream,3),"Loads an Xml document from the given Input stream, transforms it using the PWP attributes, and writes the transformed version to the given Output stream.",swi_man_packages('sgml.html'),packages,91353).
i(/(pwp_xml,3),"maps down a list of XML items, acting specially on elements and copying everything else unchanged, including white space.",swi_man_packages('sgml.html'),packages,91827).
i(section(2,'9','sec:sgml-write-markup'),"Writing markup",swi_man_packages('sgml.html'),packages,92191).
i(section(3,'9.1','sec:sgml-write'),"Writing documents",swi_man_packages('sgml.html'),packages,92362).
i(/(xml_write,3),"Write the XML header with encoding information and the content of the document as represented by Term to Stream.",swi_man_packages('sgml.html'),packages,93172).
i(/(sgml_write,3),"Write the SGML DOCTYPE header and the content of the document as represented by Term to Stream.",swi_man_packages('sgml.html'),packages,96455).
i(/(html_write,3),"Same as sgml_write/3, but passes the HTML DTD as obtained from dtd/2.",swi_man_packages('sgml.html'),packages,96853).
i(section(3,'9.2','sec:xml-escaping'),"XML Quote primitives",swi_man_packages('sgml.html'),packages,97330).
i(/(xml_quote_attribute,3),"Map the characters that may not appear in XML attributes to entities.",swi_man_packages('sgml.html'),packages,98510).
i(/(xml_quote_attribute,2),"Backward compatibility version for xml_quote_attribute/3.",swi_man_packages('sgml.html'),packages,99014).
i(/(xml_quote_cdata,3),"Very similar to xml_quote_attribute/3, but does not quote the single- and double-quotes.",swi_man_packages('sgml.html'),packages,99345).
i(/(xml_quote_cdata,2),"Backward compatibility version for xml_quote_cdata/3.",swi_man_packages('sgml.html'),packages,99673).
i(/(xml_name,2),"Succeed if In is an atom or string that satisfies the rules for a valid XML element or attribute name.",swi_man_packages('sgml.html'),packages,99984).
i(/(xml_name,1),"Backward compatibility version for xml_name/2.",swi_man_packages('sgml.html'),packages,100506).
i(section(3,'9.3','sec:xsd-lexical-form'),"XSD lexical forms",swi_man_packages('sgml.html'),packages,100784).
i(/(xsd_number_string,2),"This predicate is similar to number_string/2, but accepts floating point numbers according to the XML syntax rather than the Prolog syntax.",swi_man_packages('sgml.html'),packages,101201).
i(/(xsd_time_string,3),"Serialize and deserialize the XSD date and time formats.",swi_man_packages('sgml.html'),packages,102210).
i(section(3,'9.4','sec:c14n2'),"library(c14n2): C14n2 canonical XML documents",swi_man_packages('sgml.html'),packages,105046).
i(/(xml_write_canonical,3),"Write an XML DOM using the canonical conventions as defined by C14n2.",swi_man_packages('sgml.html'),packages,105563).
i(section(2,'10','sec:sgml-unsupported'),"Unsupported SGML features",swi_man_packages('sgml.html'),packages,106150).
i(section(2,'11','sec:sgml-acknowledgements'),"Acknowledgements",swi_man_packages('sgml.html'),packages,108633).
i(section(0,'0','packages/readline.html'),"SWI-Prolog binding to GNU readline",swi_man_packages('readline.html'),packages,2786).
i(section(2,'1','sec:readline'),"library(readline): GNU readline interface",swi_man_packages('readline.html'),packages,3542).
i(/(rl_read_init_file,1),"Read a GNU readline config file.",swi_man_packages('readline.html'),packages,4466).
i(/(rl_add_history,1),"Add a line to the history.",swi_man_packages('readline.html'),packages,4711).
i(/(rl_write_history,1),"Save the history to File.",swi_man_packages('readline.html'),packages,4902).
i(/(rl_read_history,1),"Read a saved history from File.",swi_man_packages('readline.html'),packages,5218).
i(section(0,'0','packages/rdf2pl.html'),"SWI-Prolog RDF parser",swi_man_packages('rdf2pl.html'),packages,2772).
i(section(2,'1','sec:rdfxml-intro'),"Introduction",swi_man_packages('rdf2pl.html'),packages,5024).
i(section(2,'2','sec:rdfxml-parser'),"Parsing RDF in Prolog",swi_man_packages('rdf2pl.html'),packages,6685).
i(section(2,'3','sec:rdfxml-predicates'),"Predicates for parsing RDF/XML",swi_man_packages('rdf2pl.html'),packages,9555).
i(/(load_rdf,2),"Same as load_rdf(File, Triples,[]).",swi_man_packages('rdf2pl.html'),packages,10320).
i(/(load_rdf,3),"Read the RDF-XML file File and return a list of Triples.",swi_man_packages('rdf2pl.html'),packages,10497).
i(section(3,'3.1','sec:rdfobject'),"RDF Object representation",swi_man_packages('rdf2pl.html'),packages,14448).
i(section(3,'3.2','sec:rdfxml-name-spaces'),"Name spaces",swi_man_packages('rdf2pl.html'),packages,15897).
i(section(3,'3.3','sec:rdfxml-low-level'),"Low-level access",swi_man_packages('rdf2pl.html'),packages,17021).
i(/(xml_to_rdf,3),"Process an XML term produced by load_structure/3 using the dialect(xmlns) output option.",swi_man_packages('rdf2pl.html'),packages,17860).
i(/(process_rdf,3),"Exploits the call-back interface of sgml2pl, calling OnTriples(Triples, File:Line) with the list of triples resulting from a single top level RDF object for each RDF element in the input as well as the source-location where the description started.",swi_man_packages('rdf2pl.html'),packages,18330).
i(section(2,'4','sec:rdfxml-write'),"Writing RDF graphs",swi_man_packages('rdf2pl.html'),packages,20106).
i(/(rdf_write_xml,2),"Write an RDF/XML document to Stream from the list of Triples.",swi_man_packages('rdf2pl.html'),packages,21090).
i(section(2,'5','sec:rdfxml-tests'),"Testing the RDF translator",swi_man_packages('rdf2pl.html'),packages,21943).
i(/(suite,1),"Run test N using the file suite/tN.rdf and display the RDF source, the intermediate Prolog representation and the resulting triples.",swi_man_packages('rdf2pl.html'),packages,22467).
i(/(passed,1),"Process suite/tN.rdf and store the resulting triples in suite/ok/tN.pl for later validation by test/0.",swi_man_packages('rdf2pl.html'),packages,22735).
i(/(test,0),"Run all tests and classify the result.",swi_man_packages('rdf2pl.html'),packages,23034).
i(section(2,'6','sec:rdfxml-metrics'),"Metrics",swi_man_packages('rdf2pl.html'),packages,23175).
i(section(0,'0','packages/nlp.html'),"SWI-Prolog Natural Language Processing Primitives",swi_man_packages('nlp.html'),packages,2801).
i(section(2,'1','sec:double-metaphone'),"Double Metaphone -- Phonetic string matching",swi_man_packages('nlp.html'),packages,4455).
i(/(double_metaphone,2),"Same as double_metaphone/3, but only returning the primary metaphone.",swi_man_packages('nlp.html'),packages,5163).
i(/(double_metaphone,3),"Create metaphone and alternative metaphone from In.",swi_man_packages('nlp.html'),packages,5461).
i(section(3,'1.1','sec:double-metaphone-copyright'),"Origin and Copyright",swi_man_packages('nlp.html'),packages,5945).
i(section(2,'2','sec:porter-stem'),"Porter Stem -- Determine stem and related routines",swi_man_packages('nlp.html'),packages,6827).
i(/(porter_stem,2),"Determine the stem of In.",swi_man_packages('nlp.html'),packages,7345).
i(/(unaccent_atom,2),"If In is general ISO Latin-1 text with accents, ASCII is unified with a plain ASCII version of the string.",swi_man_packages('nlp.html'),packages,7872).
i(/(tokenize_atom,2),"Break the text In into words, numbers and punctuation characters.",swi_man_packages('nlp.html'),packages,8202).
i(/(atom_to_stem_list,2),"Combines the three above routines, returning a list holding an atom with the stem of each word encountered and numbers for encountered numbers.",swi_man_packages('nlp.html'),packages,9226).
i(section(3,'2.1','sec:porter-stem-copyright'),"Origin and Copyright",swi_man_packages('nlp.html'),packages,9530).
i(section(2,'3','sec:snowball'),"library(snowball): The Snowball multi-lingual stemmer library",swi_man_packages('nlp.html'),packages,10126).
i(/(snowball,3),"Apply the Snowball Algorithm on Input and unify the result (an atom) with Stem.",swi_man_packages('nlp.html'),packages,11044).
i(/(snowball_current_algorithm,1),"True if Algorithm is the official name of an algorithm suported by snowball/3.",swi_man_packages('nlp.html'),packages,12177).
i(section(2,'4','sec:isub'),"library(isub): isub: a string similarity measure",swi_man_packages('nlp.html'),packages,12587).
i(/(isub,4),"Similarity is a measure of the similarity/dissimilarity between Text1 and Text2.",swi_man_packages('nlp.html'),packages,13299).
i(section(0,'0','packages/clib.html'),"SWI-Prolog C-library",swi_man_packages('clib.html'),packages,2772).
i(section(2,'1','sec:clib-intro'),"Introduction",swi_man_packages('clib.html'),packages,8024).
i(section(2,'2','sec:process'),"library(process): Create processes and redirect I/O",swi_man_packages('clib.html'),packages,8979).
i(/(process_create,3),"Create a new process running the file Exe and using arguments from the given list.",swi_man_packages('clib.html'),packages,11194).
i(/(process_id,1),"True if PID is the process id of the running Prolog process.",swi_man_packages('clib.html'),packages,19566).
i(/(process_id,2),"PID is the process id of Process.",swi_man_packages('clib.html'),packages,19910).
i(/(is_process,1),"True if PID might be a process.",swi_man_packages('clib.html'),packages,20199).
i(/(process_release,1),"Release process handle.",swi_man_packages('clib.html'),packages,20437).
i(/(process_wait,2),"True if PID completed with Status.",swi_man_packages('clib.html'),packages,20669).
i(/(process_wait,3),"True if PID completed with Status.",swi_man_packages('clib.html'),packages,20669).
i(/(process_kill,1),"Send signal to process PID.",swi_man_packages('clib.html'),packages,22175).
i(/(process_kill,2),"Send signal to process PID.",swi_man_packages('clib.html'),packages,22175).
i(/(process_group_kill,1),"Send signal to the group containing process PID.",swi_man_packages('clib.html'),packages,23250).
i(/(process_group_kill,2),"Send signal to the group containing process PID.",swi_man_packages('clib.html'),packages,23250).
i(/(process_set_method,1),"Determine how the process is created on Unix systems.",swi_man_packages('clib.html'),packages,23974).
i(section(2,'3','sec:filesex'),"library(filesex): Extended operations on files",swi_man_packages('clib.html'),packages,25856).
i(/(set_time_file,3),"Query and set POSIX time attributes of a file.",swi_man_packages('clib.html'),packages,26626).
i(/(link_file,3),"Create a link in the filesystem from NewPath to OldPath.",swi_man_packages('clib.html'),packages,27941).
i(/(relative_file_name,3),"True when RelPath is Path, relative to the file RelToFile.",swi_man_packages('clib.html'),packages,28687).
i(/(directory_file_path,3),"True when Path is the full path-name for File in Dir.",swi_man_packages('clib.html'),packages,30324).
i(/(directory_member,3),"True when Member is a path inside Directory.",swi_man_packages('clib.html'),packages,31171).
i(/(copy_file,2),"Copy a file into a new file or directory.",swi_man_packages('clib.html'),packages,33263).
i(/(make_directory_path,1),"Create Dir and all required components (like mkdir -p).",swi_man_packages('clib.html'),packages,33501).
i(/(copy_directory,2),"Copy the contents of the directory From to To (recursively).",swi_man_packages('clib.html'),packages,33786).
i(/(delete_directory_and_contents,1),"Recursively remove the directory Dir and its contents.",swi_man_packages('clib.html'),packages,34239).
i(/(delete_directory_contents,1),"Remove all content from directory Dir, without removing Dir itself.",swi_man_packages('clib.html'),packages,34659).
i(/(chmod,2),"Set the mode of the target file.",swi_man_packages('clib.html'),packages,35113).
i(section(2,'4','sec:uid'),"library(uid): User and group management on Unix systems",swi_man_packages('clib.html'),packages,35928).
i(/(getuid,1),"UID is the real user ID of the calling process.",swi_man_packages('clib.html'),packages,36787).
i(/(getgid,1),"GID is the real group ID of the calling process.",swi_man_packages('clib.html'),packages,36993).
i(/(geteuid,1),"UID is the effective user ID of the calling process.",swi_man_packages('clib.html'),packages,37200).
i(/(getegid,1),"GID is the effective group ID of the calling process.",swi_man_packages('clib.html'),packages,37413).
i(/(getgroups,1),"GroupsIDs is the set of supplementary group IDs of the calling process.",swi_man_packages('clib.html'),packages,37627).
i(/(user_info,2),"UserData represent the passwd information for User.",swi_man_packages('clib.html'),packages,38037).
i(/(user_data,3),"Value is the value for Field in UserData.",swi_man_packages('clib.html'),packages,38462).
i(/(group_info,2),"GroupData represent the group information for Group.",swi_man_packages('clib.html'),packages,39377).
i(/(group_data,3),"Value is the value for Field GroupData.",swi_man_packages('clib.html'),packages,39812).
i(/(setuid,1),"Set the user id of the calling process.",swi_man_packages('clib.html'),packages,40484).
i(/(seteuid,1),"Set the effective user id of the calling process.",swi_man_packages('clib.html'),packages,40636).
i(/(setgid,1),"Set the group id of the calling process.",swi_man_packages('clib.html'),packages,40800).
i(/(setegid,1),"Set the effective group id of the calling process.",swi_man_packages('clib.html'),packages,40953).
i(/(initgroups,2),"Initialise the group access list of the calling process to the registered groups for User and the group Group.",swi_man_packages('clib.html'),packages,41118).
i(/(setgroups,1),"Set the group access list of the caling process to the indicated groups.",swi_man_packages('clib.html'),packages,41485).
i(/(set_user_and_group,1),"Set the UID and GID to the User.",swi_man_packages('clib.html'),packages,41796).
i(/(set_user_and_group,2),"Set the UID and GID to the User.",swi_man_packages('clib.html'),packages,41796).
i(section(2,'5','sec:syslog'),"library(syslog): Unix syslog interface",swi_man_packages('clib.html'),packages,42530).
i(/(openlog,3),"Open system log.",swi_man_packages('clib.html'),packages,43967).
i(/(syslog,2),"Send a message to the system log.",swi_man_packages('clib.html'),packages,45161).
i(/(syslog,3),"Send a formatted message to the system log if system logging is opened using openlog/3.",swi_man_packages('clib.html'),packages,45824).
i(/(closelog,0),"Close the system log.",swi_man_packages('clib.html'),packages,46375).
i(:(prolog,/(debug_print_hook,3)),"Integration of debug/3 with the syslog facility.",swi_man_packages('clib.html'),packages,46531).
i(section(2,'6','sec:socket'),"library(socket): Network socket (TCP and UDP) library",swi_man_packages('clib.html'),packages,47234).
i(section(3,'6.1','sec:socket-server'),"Client applications",swi_man_packages('clib.html'),packages,48103).
i(section(3,'6.2','sec:socket-client'),"Server applications",swi_man_packages('clib.html'),packages,49043).
i(section(3,'6.3','sec:socket-exceptions'),"Socket exceptions",swi_man_packages('clib.html'),packages,50885).
i(section(3,'6.4','sec:socket-domains'),"Socket addresses (families)",swi_man_packages('clib.html'),packages,52002).
i(section(3,'6.5','sec:socket-predicates'),"Socket predicate reference",swi_man_packages('clib.html'),packages,53430).
i(/(socket_create,2),"Create a socket according to Options.",swi_man_packages('clib.html'),packages,53636).
i(/(tcp_socket,1),"Equivalent to socket_create(SocketId, []) or, explicit, socket_create(SocketId, [domain(inet), type(stream)]).",swi_man_packages('clib.html'),packages,54487).
i(/(unix_domain_socket,1),"Equivalent to socket_create(SocketId, [domain(unix)]) or, explicit, socket_create(SocketId, [domain(unix), type(stream)]) Unix domain socket affect tcp_connect/2 (for clients) and tcp_bind/2 and tcp_accept/3 (for servers).",swi_man_packages('clib.html'),packages,54784).
i(/(tcp_close_socket,1),"Closes the indicated socket, making SocketId invalid.",swi_man_packages('clib.html'),packages,55832).
i(/(tcp_open_socket,2),"Create streams to communicate to SocketId.",swi_man_packages('clib.html'),packages,56979).
i(/(tcp_open_socket,3),"Similar to tcp_open_socket/2, but creates two separate sockets where tcp_open_socket/2 would have created a stream pair.",swi_man_packages('clib.html'),packages,57858).
i(/(tcp_bind,2),"Bind the socket to Address on the current machine.",swi_man_packages('clib.html'),packages,58486).
i(/(tcp_listen,2),"Tells, after tcp_bind/2, the socket to listen for incoming requests for connections.",swi_man_packages('clib.html'),packages,59564).
i(/(tcp_accept,3),"This predicate waits on a server socket for a connection request by a client.",swi_man_packages('clib.html'),packages,60224).
i(/(tcp_connect,2),"Connect SocketId.",swi_man_packages('clib.html'),packages,60786).
i(/(tcp_connect,4),"Connect a (client) socket to Address and return a bi-directional connection through the stream-handles Read and Write.",swi_man_packages('clib.html'),packages,61985).
i(/(tcp_connect,3),"Establish a TCP communication as a client.",swi_man_packages('clib.html'),packages,62993).
i(/(tcp_select,3),"Same as the built-in wait_for_input/3.",swi_man_packages('clib.html'),packages,65477).
i(/(try_proxy,4),"Attempt a socket-level connection via the given proxy to TargetAddress.",swi_man_packages('clib.html'),packages,66171).
i(/(proxy_for_url,3),"This hook can be implemented to return a proxy to try when connecting to URL.",swi_man_packages('clib.html'),packages,67316).
i(/(udp_socket,1),"Equivalent to socket_create(SocketId, [type(dgram)]) or, explicit, socket_create(SocketId, [domain(inet), type(dgram)]).",swi_man_packages('clib.html'),packages,68624).
i(/(udp_receive,4),"Wait for and return the next datagram.",swi_man_packages('clib.html'),packages,68932).
i(/(udp_send,4),"Send a UDP message.",swi_man_packages('clib.html'),packages,70512).
i(/(tcp_setopt,2),"Set options on the socket.",swi_man_packages('clib.html'),packages,72314).
i(/(tcp_fcntl,3),"Interface to the fcntl() call.",swi_man_packages('clib.html'),packages,75890).
i(/(tcp_getopt,2),"Get information about Socket.",swi_man_packages('clib.html'),packages,76563).
i(/(host_address,3),"Translate between a machines host-name and it's (IP-)address.",swi_man_packages('clib.html'),packages,77081).
i(/(tcp_host_to_address,2),"Translate between a machines host-name and it's (IP-)address.",swi_man_packages('clib.html'),packages,78832).
i(/(gethostname,1),"Return the canonical fully qualified name of this host.",swi_man_packages('clib.html'),packages,79805).
i(/(ip_name,2),"Translate between the textual representation of an IP address and the Prolog data structure.",swi_man_packages('clib.html'),packages,80150).
i(/(negotiate_socks_connection,2),"Negotiate a connection to DesiredEndpoint over StreamPair.",swi_man_packages('clib.html'),packages,80715).
i(section(2,'7','sec:stream-pools'),"The stream_pool library",swi_man_packages('clib.html'),packages,81300).
i(/(add_stream_to_pool,2),"Add Stream, which must be an input stream and ---on non-unix systems--- connected to a socket to the pool.",swi_man_packages('clib.html'),packages,82267).
i(/(delete_stream_from_pool,1),"Delete the given stream from the pool.",swi_man_packages('clib.html'),packages,82605).
i(/(close_stream_pool,0),"Empty the pool, closing all streams that are part of it.",swi_man_packages('clib.html'),packages,83058).
i(/(dispatch_stream_pool,1),"Wait for maximum of TimeOut for input on any of the streams in the pool.",swi_man_packages('clib.html'),packages,83232).
i(/(stream_pool_main_loop,0),"Calls dispatch_stream_pool/1 in a loop until the pool is empty.",swi_man_packages('clib.html'),packages,84138).
i(section(2,'8','sec:uri'),"library(uri): Process URIs",swi_man_packages('clib.html'),packages,85171).
i(/(uri_components,2),"Break a URI into its 5 basic components according to the RFC-3986 regular expression: ^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?",swi_man_packages('clib.html'),packages,86194).
i(/(uri_data,3),"Provide access the uri_component structure.",swi_man_packages('clib.html'),packages,87147).
i(/(uri_data,4),"NewComponents is the same as Components with Field set to Data.",swi_man_packages('clib.html'),packages,87505).
i(/(uri_normalized,2),"NormalizedURI is the normalized form of URI.",swi_man_packages('clib.html'),packages,87808).
i(/(iri_normalized,2),"NormalizedIRI is the normalized form of IRI.",swi_man_packages('clib.html'),packages,88266).
i(/(uri_normalized_iri,2),"As uri_normalized/2, but percent-encoding is translated into IRI Unicode characters.",swi_man_packages('clib.html'),packages,88874).
i(/(uri_is_global,1),"True if URI has a scheme.",swi_man_packages('clib.html'),packages,89536).
i(/(uri_resolve,3),"Resolve a possibly local URI relative to Base.",swi_man_packages('clib.html'),packages,90234).
i(/(uri_normalized,3),"NormalizedGlobalURI is the normalized global version of URI.",swi_man_packages('clib.html'),packages,90667).
i(/(iri_normalized,3),"NormalizedGlobalIRI is the normalized global version of IRI.",swi_man_packages('clib.html'),packages,91148).
i(/(uri_normalized_iri,3),"NormalizedGlobalIRI is the normalized global IRI of URI.",swi_man_packages('clib.html'),packages,91548).
i(/(uri_query_components,2),"Perform encoding and decoding of an URI query string.",swi_man_packages('clib.html'),packages,92037).
i(/(uri_authority_components,2),"Break-down the authority component of a URI.",swi_man_packages('clib.html'),packages,92917).
i(/(uri_authority_data,3),"Provide access the uri_authority structure.",swi_man_packages('clib.html'),packages,94025).
i(/(uri_encoded,3),"Encoded is the URI encoding for Value.",swi_man_packages('clib.html'),packages,94375).
i(/(uri_iri,2),"Convert between a URI, encoded in US-ASCII and an IRI.",swi_man_packages('clib.html'),packages,95578).
i(/(uri_file_name,2),"Convert between a URI and a local file_name.",swi_man_packages('clib.html'),packages,96260).
i(/(uri_edit,3),"Modify a URI according to Actions.",swi_man_packages('clib.html'),packages,96809).
i(section(2,'9','sec:cgi'),"CGI Support library",swi_man_packages('clib.html'),packages,98983).
i(/(cgi_get_form,1),"Decodes standard input and the environment variables to obtain a list of arguments passed to the CGI script.",swi_man_packages('clib.html'),packages,99257).
i(section(3,'9.1','sec:cgi-considerations'),"Some considerations",swi_man_packages('clib.html'),packages,100817).
i(section(2,'10','sec:crypt'),"Password encryption library",swi_man_packages('clib.html'),packages,102125).
i(/(crypt,2),"This predicate can be used in three modes.",swi_man_packages('clib.html'),packages,102577).
i(section(2,'11','sec:uuid'),"library(uuid): Universally Unique Identifier (UUID) Library",swi_man_packages('clib.html'),packages,105357).
i(/(uuid,1),"UUID is an atom representing a new UUID.",swi_man_packages('clib.html'),packages,106344).
i(/(uuid,2),"Create a new UUID according to Options.",swi_man_packages('clib.html'),packages,106669).
i(/(uuid_property,2),"True when UUID is a property of the given UUID.",swi_man_packages('clib.html'),packages,108141).
i(section(2,'12','sec:sha'),"SHA* Secure Hash Algorithms",swi_man_packages('clib.html'),packages,108827).
i(/(sha_hash,3),"Hash is the SHA hash of Data.",swi_man_packages('clib.html'),packages,110836).
i(/(hmac_sha,4),"Quoting Wikipedia: “A keyed-hash message authentication code, or HMAC, is a type of message authentication code (MAC) calculated using a cryptographic hash function in combination with a secret key.",swi_man_packages('clib.html'),packages,112208).
i(/(hash_atom,2),"True when HexAtom is the commonly used hexadecimal encoding of the hash code.",swi_man_packages('clib.html'),packages,113514).
i(section(3,'12.1','sec:sha-license'),"License terms",swi_man_packages('clib.html'),packages,113948).
i(section(2,'13','sec:md5'),"library(md5): MD5 hashes",swi_man_packages('clib.html'),packages,115113).
i(/(md5_hash,3),"Hash is the MD5 hash of Data, The conversion is controlled by Options: encoding(+Encoding)If Data is a sequence of character codes, this must be translated into a sequence of bytes, because that is what the hashing requires.",swi_man_packages('clib.html'),packages,115655).
i(section(2,'14','sec:hashstream'),"library(hash_stream): Maintain a hash on a stream",swi_man_packages('clib.html'),packages,116613).
i(/(open_hash_stream,3),"Open a filter stream on OrgStream that maintains a hash.",swi_man_packages('clib.html'),packages,118822).
i(/(stream_hash,2),"Unify Digest with a hash for the bytes send to or read from HashStream.",swi_man_packages('clib.html'),packages,119668).
i(section(2,'15','sec:memory-files'),"Memory files",swi_man_packages('clib.html'),packages,120271).
i(/(new_memory_file,1),"Create a new memory file and return a unique opaque handle to it.",swi_man_packages('clib.html'),packages,121530).
i(/(free_memory_file,1),"Discard the memory file and its contents.",swi_man_packages('clib.html'),packages,121729).
i(/(open_memory_file,3),"Open the memory-file.",swi_man_packages('clib.html'),packages,121947).
i(/(open_memory_file,4),"Open a memory-file as open_memory_file/3.",swi_man_packages('clib.html'),packages,122876).
i(/(size_memory_file,2),"Return the content-length of the memory-file in characters in the current encoding of the memory file.",swi_man_packages('clib.html'),packages,124190).
i(/(size_memory_file,3),"Return the content-length of the memory-file in characters in the given Encoding.",swi_man_packages('clib.html'),packages,124482).
i(/(atom_to_memory_file,2),"Turn an atom into a read-only memory-file containing the (shared) characters of the atom.",swi_man_packages('clib.html'),packages,124773).
i(/(insert_memory_file,3),"Insert Data into the memory file at location Offset.",swi_man_packages('clib.html'),packages,125093).
i(/(delete_memory_file,3),"Delete a Length characters from the memory file, starting at Offset.",swi_man_packages('clib.html'),packages,125688).
i(/(memory_file_to_atom,2),"Return the content of the memory-file in Atom.",swi_man_packages('clib.html'),packages,126116).
i(/(memory_file_to_atom,3),"Return the content of the memory-file in Atom, pretending the data is in the given Encoding.",swi_man_packages('clib.html'),packages,126323).
i(/(memory_file_to_codes,2),"Return the content of the memory-file as a list of character-codes in Codes.",swi_man_packages('clib.html'),packages,127112).
i(/(memory_file_to_codes,3),"Return the content of the memory-file as a list of character-codes in Codes, pretending the data is in the given Encoding.",swi_man_packages('clib.html'),packages,127352).
i(/(memory_file_to_string,2),"Return the content of the memory-file as a string in -String.",swi_man_packages('clib.html'),packages,127661).
i(/(memory_file_to_string,3),"Return the content of the memory-file as a string in String, pretending the data is in the given Encoding.",swi_man_packages('clib.html'),packages,127889).
i(/(memory_file_substring,5),"SubString is a substring of the memory file.",swi_man_packages('clib.html'),packages,128185).
i(/(memory_file_line_position,4),"True if the character offset Offset corresponds with the LinePos character on line Line.",swi_man_packages('clib.html'),packages,129024).
i(section(2,'16','sec:time'),"library(time): Time and alarm library",swi_man_packages('clib.html'),packages,129495).
i(/(alarm,3),"Set up an alarm to be signaled Time seconds from now.",swi_man_packages('clib.html'),packages,130177).
i(/(alarm,4),"Set up an alarm to be signaled Time seconds from now.",swi_man_packages('clib.html'),packages,130177).
i(/(alarm_at,3),"As alarm/3 and alarm/4, but schedule the alarm at an absolute point in time.",swi_man_packages('clib.html'),packages,131358).
i(/(alarm_at,4),"As alarm/3 and alarm/4, but schedule the alarm at an absolute point in time.",swi_man_packages('clib.html'),packages,131358).
i(/(install_alarm,1),"Install an alarm allocated using alarm/4 with the install(false) option or de-activated using uninstall_alarm/1.",swi_man_packages('clib.html'),packages,131947).
i(/(install_alarm,2),"Install an alarm allocated using alarm/4 with the install(false) option or de-activated using uninstall_alarm/1.",swi_man_packages('clib.html'),packages,131947).
i(/(uninstall_alarm,1),"De-activate an alarm.",swi_man_packages('clib.html'),packages,132635).
i(/(remove_alarm,1),"Remove an alarm.",swi_man_packages('clib.html'),packages,133113).
i(/(current_alarm,4),"Enumerate the alarms in the schedule.",swi_man_packages('clib.html'),packages,133333).
i(/(call_with_time_limit,2),"Call Goal, while watching out for a (wall-time) limit.",swi_man_packages('clib.html'),packages,133962).
i(/(call_with_time_limit,3),"Call Goal, while watching out for a (wall-time) limit.",swi_man_packages('clib.html'),packages,133962).
i(section(2,'17','sec:unix'),"library(unix): Unix specific operations",swi_man_packages('clib.html'),packages,134971).
i(/(fork,1),"Clone the current process into two branches.",swi_man_packages('clib.html'),packages,135693).
i(/(fork_exec,1),"Fork (as fork/1) and exec (using exec/1) the child immediately.",swi_man_packages('clib.html'),packages,136880).
i(/(exec,1),"Replace the running program by starting Command.",swi_man_packages('clib.html'),packages,137421).
i(/(wait,2),"Wait for a child to change status.",swi_man_packages('clib.html'),packages,138696).
i(/(kill,2),"Deliver a software interrupt to the process with identifier Pid using software-interrupt number Signal.",swi_man_packages('clib.html'),packages,139639).
i(/(pipe,2),"Create a communication-pipe.",swi_man_packages('clib.html'),packages,140277).
i(/(dup,2),"Interface to Unix dup2(), copying the underlying filedescriptor and thus making both streams point to the same underlying object.",swi_man_packages('clib.html'),packages,141176).
i(/(detach_IO,1),"This predicate is intended to create Unix deamon processes.",swi_man_packages('clib.html'),packages,141928).
i(/(detach_IO,0),"Detach I/O similar to detach_IO/1.",swi_man_packages('clib.html'),packages,143282).
i(/(prctl,1),"Access to Linux process control operations.",swi_man_packages('clib.html'),packages,143923).
i(/(sysconf,1),"Access system configuration.",swi_man_packages('clib.html'),packages,144509).
i(section(2,'18','sec:limit-process-resources'),"Limiting process resources",swi_man_packages('clib.html'),packages,145268).
i(/(rlimit,3),"Query and/or set the limit for Resource.",swi_man_packages('clib.html'),packages,145822).
i(section(2,'19','sec:udpbroadcast'),"library(udp_broadcast): A UDP broadcast proxy",swi_man_packages('clib.html'),packages,147874).
i(section(3,'19.1','sec:udp-broadcase-caveats'),"Caveats",swi_man_packages('clib.html'),packages,152997).
i(/(udp_broadcast_close,1),"Close a UDP broadcast scope.",swi_man_packages('clib.html'),packages,157710).
i(/(udp_broadcast_initialize,2),"Initialized UDP broadcast bridge.",swi_man_packages('clib.html'),packages,157879).
i(/(udp_peer_add,2),"Manage and query the set of known peers for a unicast network.",swi_man_packages('clib.html'),packages,159545).
i(/(udp_peer_del,2),"Manage and query the set of known peers for a unicast network.",swi_man_packages('clib.html'),packages,159545).
i(/(udp_peer,2),"Manage and query the set of known peers for a unicast network.",swi_man_packages('clib.html'),packages,159545).
i(/(udp_term_string_hook,3),"Hook for serializing the message Term.",swi_man_packages('clib.html'),packages,160337).
i(/(udp_unicast_join_hook,3),"This multifile hook is called if an UDP package is received on the port of the unicast network identified by Scope.",swi_man_packages('clib.html'),packages,162123).
i(section(2,'20','sec:prologstream'),"library(prolog_stream): A stream with Prolog callbacks",swi_man_packages('clib.html'),packages,163579).
i(/(open_prolog_stream,4),"Create a new stream that implements its I/O by calling predicates in Module.",swi_man_packages('clib.html'),packages,164035).
i(section(0,'0','packages/semweb.html'),"SWI-Prolog Semantic Web Library 3.0",swi_man_packages('semweb.html'),packages,2787).
i(section(2,'1','sec:semweb-intro'),"Introduction",swi_man_packages('semweb.html'),packages,13144).
i(section(2,'2','sec:semweb-scalability'),"Scalability",swi_man_packages('semweb.html'),packages,16525).
i(section(2,'3','sec:semweb-rdfapi'),"Two RDF APIs",swi_man_packages('semweb.html'),packages,17417).
i(section(3,'3.1','sec:semweb-rdf11'),"library(semweb/rdf11): The RDF database",swi_man_packages('semweb.html'),packages,18196).
i(section(4,'3.1.1','sec:rdf11-query'),"Query the RDF database",swi_man_packages('semweb.html'),packages,18522).
i(/(rdf,3),"True if an RDF triple exists, optionally in the graph G.",swi_man_packages('semweb.html'),packages,18716).
i(/(rdf,4),"True if an RDF triple exists, optionally in the graph G.",swi_man_packages('semweb.html'),packages,18716).
i(/(rdf_has,3),"Similar to rdf/3 and rdf/4, but P matches all predicates that are defined as an rdfs:subPropertyOf of P.",swi_man_packages('semweb.html'),packages,23391).
i(/(rdf_has,4),"Similar to rdf/3 and rdf/4, but P matches all predicates that are defined as an rdfs:subPropertyOf of P.",swi_man_packages('semweb.html'),packages,23391).
i(/(rdf_reachable,3),"True when O can be reached from S using the transitive closure of P.",swi_man_packages('semweb.html'),packages,24070).
i(/(rdf_reachable,5),"True when O can be reached from S using the transitive closure of P.",swi_man_packages('semweb.html'),packages,24070).
i(/({},1),"Formulate constraints on RDF terms, notably literals.",swi_man_packages('semweb.html'),packages,25125).
i(/(rdf_where,1),"Formulate constraints on RDF terms, notably literals.",swi_man_packages('semweb.html'),packages,25125).
i(section(4,'3.1.2','sec:rdf11-enum'),"Enumerating and testing objects",swi_man_packages('semweb.html'),packages,27532).
i(/(rdf_subject,1),"True when S is a currently known subject, i.e.",swi_man_packages('semweb.html'),packages,27800).
i(/(rdf_predicate,1),"True when P is a currently known predicate, i.e.",swi_man_packages('semweb.html'),packages,28142).
i(/(rdf_object,1),"True when O is a currently known object, i.e.",swi_man_packages('semweb.html'),packages,28485).
i(/(rdf_node,1),"True when T appears in the subject or object position of a known triple, i.e., is a node in the RDF graph.",swi_man_packages('semweb.html'),packages,28915).
i(/(rdf_graph,1),"True when Graph is an existing graph.",swi_man_packages('semweb.html'),packages,29186).
i(/(rdf_literal,1),"True if Term is a known literal.",swi_man_packages('semweb.html'),packages,29492).
i(/(rdf_bnode,1),"True if BNode is a currently known blank node.",swi_man_packages('semweb.html'),packages,29866).
i(/(rdf_iri,1),"True if IRI is a current IRI.",swi_man_packages('semweb.html'),packages,30146).
i(/(rdf_name,1),"True if Name is a current IRI or literal.",swi_man_packages('semweb.html'),packages,30412).
i(/(rdf_term,1),"True if Term appears in the RDF database.",swi_man_packages('semweb.html'),packages,30682).
i(/(rdf_is_iri,1),"True if IRI is an RDF IRI term.",swi_man_packages('semweb.html'),packages,31256).
i(/(rdf_is_bnode,1),"True if Term is an RDF blank node identifier.",swi_man_packages('semweb.html'),packages,31871).
i(/(rdf_is_literal,1),"True if Term is an RDF literal term.",swi_man_packages('semweb.html'),packages,32473).
i(/(rdf_is_name,1),"True if Term is an RDF Name, i.e., an IRI or literal.",swi_man_packages('semweb.html'),packages,32976).
i(/(rdf_is_object,1),"True if Term can appear in the object position of a triple.",swi_man_packages('semweb.html'),packages,33377).
i(/(rdf_is_predicate,1),"True if Term can appear in the predicate position of a triple.",swi_man_packages('semweb.html'),packages,33938).
i(/(rdf_is_subject,1),"True if Term can appear in the subject position of a triple.",swi_man_packages('semweb.html'),packages,34490).
i(/(rdf_is_term,1),"True if Term can be used as an RDF term, i.e., if Term is either an IRI, a blank node or an RDF literal.",swi_man_packages('semweb.html'),packages,35111).
i(section(4,'3.1.3','sec:rdf11-literal'),"RDF literals",swi_man_packages('semweb.html'),packages,35565).
i(/(rdf_canonical_literal,2),"Transform a relaxed literal specification as allowed for rdf_assert/3 into its canonical form.",swi_man_packages('semweb.html'),packages,35753).
i(/(rdf_lexical_form,2),"True when Lexical is the lexical form for the literal Literal.",swi_man_packages('semweb.html'),packages,37049).
i(/(rdf_compare,3),"True if the RDF terms Left and Right are ordered according to the comparison operator Diff.",swi_man_packages('semweb.html'),packages,37654).
i(section(4,'3.1.4','sec:rdf11-graph'),"Accessing RDF graphs",swi_man_packages('semweb.html'),packages,38644).
i(/(rdf_default_graph,1),"Query/set the notion of the default graph.",swi_man_packages('semweb.html'),packages,38836).
i(/(rdf_default_graph,2),"Query/set the notion of the default graph.",swi_man_packages('semweb.html'),packages,38836).
i(section(4,'3.1.5','sec:rdf11-modify'),"Modifying the RDF store",swi_man_packages('semweb.html'),packages,39382).
i(/(rdf_assert,3),"Assert a new triple.",swi_man_packages('semweb.html'),packages,39579).
i(/(rdf_assert,4),"Assert a new triple.",swi_man_packages('semweb.html'),packages,39579).
i(/(rdf_retractall,3),"Remove all matching triples from the database.",swi_man_packages('semweb.html'),packages,40376).
i(/(rdf_retractall,4),"Remove all matching triples from the database.",swi_man_packages('semweb.html'),packages,40376).
i(/(rdf_create_bnode,1),"Create a new BNode.",swi_man_packages('semweb.html'),packages,40888).
i(section(4,'3.1.6','sec:rdf11-collections'),"Accessing RDF collections",swi_man_packages('semweb.html'),packages,41227).
i(/(rdf_last,2),"True when Last is the last element of RDFList.",swi_man_packages('semweb.html'),packages,41652).
i(/(rdf_list,1),"True if RDFTerm is a proper RDF list.",swi_man_packages('semweb.html'),packages,41976).
i(/(rdf_list,2),"True when PrologList represents the rdf:first objects for all cells in RDFList.",swi_man_packages('semweb.html'),packages,42527).
i(/(rdf_length,2),"True when Length is the number of cells in RDFList.",swi_man_packages('semweb.html'),packages,42894).
i(/(rdf_member,2),"True when Member is a member of RDFList",swi_man_packages('semweb.html'),packages,43374).
i(/(rdf_nth0,3),"True when X is the Index-th element (0-based or 1-based) of RDFList.",swi_man_packages('semweb.html'),packages,43608).
i(/(rdf_nth1,3),"True when X is the Index-th element (0-based or 1-based) of RDFList.",swi_man_packages('semweb.html'),packages,43608).
i(/(rdf_assert_list,2),"Create an RDF list from the given Prolog List.",swi_man_packages('semweb.html'),packages,44148).
i(/(rdf_assert_list,3),"Create an RDF list from the given Prolog List.",swi_man_packages('semweb.html'),packages,44148).
i(/(rdf_retract_list,1),"Retract the rdf:first, rdf:rest and rdf:type=rdf:'List' triples from all nodes reachable through rdf:rest.",swi_man_packages('semweb.html'),packages,44891).
i(section(3,'3.2','sec:rdf11containers'),"library(semweb/rdf11_containers): RDF 1.1 Containers",swi_man_packages('semweb.html'),packages,45250).
i(/(rdf_alt,3),"True when Alt is an instance of rdf:Alt with first member Default and remaining members Others.",swi_man_packages('semweb.html'),packages,46215).
i(/(rdf_assert_alt,3),"Create an rdf:Alt with the given Default and Others.",swi_man_packages('semweb.html'),packages,47032).
i(/(rdf_assert_alt,4),"Create an rdf:Alt with the given Default and Others.",swi_man_packages('semweb.html'),packages,47032).
i(/(rdf_bag,2),"True when Bag is an rdf:Bag and set is the set values related through container membership properties to Bag.",swi_man_packages('semweb.html'),packages,47619).
i(/(rdf_assert_bag,2),"Create an rdf:Bag from the given set of values.",swi_man_packages('semweb.html'),packages,48172).
i(/(rdf_assert_bag,3),"Create an rdf:Bag from the given set of values.",swi_man_packages('semweb.html'),packages,48172).
i(/(rdf_seq,2),"True when Seq is an instance of rdf:Seq and List is a list of associated values, ordered according to the container membership property used.",swi_man_packages('semweb.html'),packages,48680).
i(/(rdf_assert_seq,2),"",swi_man_packages('semweb.html'),packages,49262).
i(/(rdf_assert_seq,3),"",swi_man_packages('semweb.html'),packages,49262).
i(/(rdfs_container,2),"True when List is the list of objects attached to Container using a container membership property (rdf:_0, rdf:_1, ...).",swi_man_packages('semweb.html'),packages,49587).
i(/(rdfs_container_membership_property,1),"True when Property is a container membership property (rdf:_1, rdf:_2, ...).",swi_man_packages('semweb.html'),packages,50068).
i(/(rdfs_container_membership_property,2),"True when Property is the Nth container membership property.",swi_man_packages('semweb.html'),packages,50368).
i(/(rdfs_member,2),"True if rdf(Container, P, Elem) is true and P is a container membership property.",swi_man_packages('semweb.html'),packages,50762).
i(/(rdfs_nth0,3),"True if rdf(Container, P, Elem) is true and P is the N-th (0-based) container membership property.",swi_man_packages('semweb.html'),packages,51032).
i(section(3,'3.3','sec:semweb-rdf-db'),"library(semweb/rdf_db): The RDF database",swi_man_packages('semweb.html'),packages,51341).
i(section(4,'3.3.1','sec:semweb-query'),"Query the RDF database",swi_man_packages('semweb.html'),packages,53361).
i(/(rdf,3),"Elementary query for triples.",swi_man_packages('semweb.html'),packages,53557).
i(/(rdf,4),"As rdf/3 but in addition query the graph to which the triple belongs.",swi_man_packages('semweb.html'),packages,58473).
i(/(rdf_has,3),"Succeeds if the triple rdf(Subject, Predicate, Object) is true exploiting the rdfs:subPropertyOf predicate as well as inverse predicates declared using rdf_set_predicate/2 with the inverse_of property.",swi_man_packages('semweb.html'),packages,59056).
i(/(rdf_has,4),"Same as rdf_has/3, but RealPredicate is unified to the actual predicate that makes this relation true.",swi_man_packages('semweb.html'),packages,59513).
i(/(rdf_reachable,3),"Is true if Object can be reached from Subject following the transitive predicate Predicate or a sub-property thereof, while repecting the symetric(true) or inverse_of(P2) properties.",swi_man_packages('semweb.html'),packages,60061).
i(/(rdf_reachable,5),"Same as rdf_reachable/3, but in addition, MaxD limits the number of edges expanded and D is unified with the‘distance' between Subject and Object.",swi_man_packages('semweb.html'),packages,61527).
i(section(4,'3.3.2','sec:semweb-enumerate'),"Enumerating objects",swi_man_packages('semweb.html'),packages,62152).
i(/(rdf_subject,1),"True if Resource appears as a subject.",swi_man_packages('semweb.html'),packages,62717).
i(/(rdf_resource,1),"True when Resource is a resource used as a subject or object in a triple.",swi_man_packages('semweb.html'),packages,63137).
i(/(rdf_current_predicate,1),"True when Predicate is a currently known predicate.",swi_man_packages('semweb.html'),packages,63607).
i(/(rdf_current_literal,1),"True when Literal is a currently known literal.",swi_man_packages('semweb.html'),packages,64502).
i(/(rdf_graph,1),"True when Graph is an existing graph.",swi_man_packages('semweb.html'),packages,65006).
i(/(rdf_current_ns,2),"deprecatedUse rdf_current_prefix/2.",swi_man_packages('semweb.html'),packages,65213).
i(section(4,'3.3.3','sec:semweb-modify'),"Modifying the RDF database",swi_man_packages('semweb.html'),packages,65544).
i(/(rdf_assert,3),"Assert a new triple into the database.",swi_man_packages('semweb.html'),packages,66253).
i(/(rdf_assert,4),"As rdf_assert/3, adding the predicate to the indicated named graph.",swi_man_packages('semweb.html'),packages,67021).
i(/(rdf_retractall,3),"Remove all matching triples from the database.",swi_man_packages('semweb.html'),packages,67527).
i(/(rdf_retractall,4),"As rdf_retractall/3, also matching Graph.",swi_man_packages('semweb.html'),packages,67853).
i(/(rdf_update,4),"Replaces one of the three (four) fields on the matching triples depending on Action: subject(Resource)Changes the first field of the triple.",swi_man_packages('semweb.html'),packages,68290).
i(/(rdf_update,5),"Replaces one of the three (four) fields on the matching triples depending on Action: subject(Resource)Changes the first field of the triple.",swi_man_packages('semweb.html'),packages,68290).
i(section(4,'3.3.4','sec:semweb-update-view'),"Update view, transactions and snapshots",swi_man_packages('semweb.html'),packages,69515).
i(/(rdf_transaction,1),"Same as rdf_transaction(Goal, user, []).",swi_man_packages('semweb.html'),packages,69927).
i(/(rdf_transaction,2),"Same as rdf_transaction(Goal, Id, []).",swi_man_packages('semweb.html'),packages,70220).
i(/(rdf_transaction,3),"Run Goal in an RDF transaction.",swi_man_packages('semweb.html'),packages,70517).
i(/(rdf_snapshot,1),"Take a snapshot of the current state of the RDF store.",swi_man_packages('semweb.html'),packages,72025).
i(/(rdf_delete_snapshot,1),"Delete a snapshot as obtained from rdf_snapshot/1.",swi_man_packages('semweb.html'),packages,72580).
i(/(rdf_active_transaction,1),"True if Id is the identifier of a transaction in the context of which this call is executed.",swi_man_packages('semweb.html'),packages,72953).
i(/(rdf_current_snapshot,1),"True when Term is a currently known snapshot.",swi_man_packages('semweb.html'),packages,73484).
i(section(4,'3.3.5','sec:semweb-typecheck'),"Type checking predicates",swi_man_packages('semweb.html'),packages,73827).
i(/(rdf_is_resource,1),"True if Term is an RDF resource.",swi_man_packages('semweb.html'),packages,74033).
i(/(rdf_is_bnode,1),"Tests if a resource is a blank node (i.e.",swi_man_packages('semweb.html'),packages,74514).
i(/(rdf_is_literal,1),"True if Term is an RDF literal object.",swi_man_packages('semweb.html'),packages,74993).
i(section(4,'3.3.6','sec:semweb-load-save'),"Loading and saving to file",swi_man_packages('semweb.html'),packages,75285).
i(/(rdf_load,1),"Same as rdf_load(FileOrList, []).",swi_man_packages('semweb.html'),packages,75804).
i(/(rdf_load,2),"Load RDF data.",swi_man_packages('semweb.html'),packages,76064).
i(/(rdf_unload,1),"Identify the graph loaded from Source and use rdf_unload_graph/1 to erase this graph.",swi_man_packages('semweb.html'),packages,80558).
i(/(rdf_save,1),"Same as rdf_save(Out, []).",swi_man_packages('semweb.html'),packages,81125).
i(/(rdf_save,2),"Write RDF data as RDF/XML.",swi_man_packages('semweb.html'),packages,81384).
i(/(rdf_make,0),"Reload all loaded files that have been modified since the last time they were loaded.",swi_man_packages('semweb.html'),packages,84325).
i(/(rdf_save_header,2),"Save XML document header, doctype and open the RDF environment.",swi_man_packages('semweb.html'),packages,84964).
i(/(rdf_save_footer,1),"Finish XML generation and write the document footer.",swi_man_packages('semweb.html'),packages,86097).
i(/(rdf_save_subject,3),"Save the triples associated to Subject to Out.",swi_man_packages('semweb.html'),packages,86521).
i(/(rdf_save_db,1),"Save triples into File in a quick-to-load binary format.",swi_man_packages('semweb.html'),packages,87968).
i(/(rdf_save_db,2),"Save triples into File in a quick-to-load binary format.",swi_man_packages('semweb.html'),packages,87968).
i(/(rdf_load_db,1),"Load triples from a file created using rdf_save_db/2.",swi_man_packages('semweb.html'),packages,88533).
i(section(4,'3.3.7','sec:semweb-graphs'),"Graph manipulation",swi_man_packages('semweb.html'),packages,88798).
i(/(rdf_create_graph,1),"Create an RDF graph without triples.",swi_man_packages('semweb.html'),packages,89317).
i(/(rdf_unload_graph,1),"Remove Graph from the RDF store.",swi_man_packages('semweb.html'),packages,89571).
i(/(rdf_graph_property,2),"True when Property is a property of Graph.",swi_man_packages('semweb.html'),packages,89838).
i(/(rdf_set_graph,2),"Set properties of Graph.",swi_man_packages('semweb.html'),packages,91466).
i(section(4,'3.3.8','sec:semweb-literals'),"Literal matching and indexing",swi_man_packages('semweb.html'),packages,91872).
i(section(4,'3.3.9','sec:semweb-predicates'),"Predicate properties",swi_man_packages('semweb.html'),packages,94394).
i(/(rdf_set_predicate,2),"Define a property of the predicate.",swi_man_packages('semweb.html'),packages,95094).
i(/(rdf_predicate_property,2),"Query properties of a defined predicate.",swi_man_packages('semweb.html'),packages,96399).
i(section(4,'3.3.10','sec:semweb-prefixes'),"Prefix Handling",swi_man_packages('semweb.html'),packages,99533).
i(/(rdf_current_prefix,2),"Query predefined prefixes and prefixes defined with rdf_register_prefix/2 and local prefixes defined with rdf_prefix/2.",swi_man_packages('semweb.html'),packages,100537).
i(/(rdf_register_prefix,2),"Register Prefix as an abbreviation for URI.",swi_man_packages('semweb.html'),packages,101298).
i(/(rdf_register_prefix,3),"Register Prefix as an abbreviation for URI.",swi_man_packages('semweb.html'),packages,101298).
i(/(rdf_equal,2),"Simple equality test to exploit goal-expansion.",swi_man_packages('semweb.html'),packages,104159).
i(/(rdf_global_id,2),"Convert between Prefix:Local and full IRI (an atom).",swi_man_packages('semweb.html'),packages,104344).
i(/(rdf_global_object,2),"Same as rdf_global_id/2, but intended for dealing with the object part of a triple, in particular the type for typed literals.",swi_man_packages('semweb.html'),packages,105574).
i(/(rdf_global_term,2),"Performs rdf_global_id/2 on predixed IRIs and rdf_global_object/2 on RDF literals, by recursively analysing the term.",swi_man_packages('semweb.html'),packages,106385).
i(section(4,'3.3.11','sec:semweb-misc'),"Miscellaneous predicates",swi_man_packages('semweb.html'),packages,109244).
i(/(rdf_bnode,1),"Generate a unique anonymous identifier for a subject.",swi_man_packages('semweb.html'),packages,109545).
i(/(rdf_source_location,2),"True when triples for Subject are loaded from Location.",swi_man_packages('semweb.html'),packages,109716).
i(/(rdf_generation,1),"True when Generation is the current generation of the database.",swi_man_packages('semweb.html'),packages,110089).
i(/(rdf_estimate_complexity,4),"Return the number of alternatives as indicated by the database internal hashed indexing.",swi_man_packages('semweb.html'),packages,111034).
i(/(rdf_statistics,1),"Obtain statistics on the RDF database.",swi_man_packages('semweb.html'),packages,111797).
i(/(rdf_match_label,3),"True if Label matches Pattern according to How.",swi_man_packages('semweb.html'),packages,114262).
i(/(lang_matches,2),"True if Lang matches Pattern.",swi_man_packages('semweb.html'),packages,114748).
i(/(lang_equal,2),"True if two RFC language specifiers denote the same language See alsolang_matches/2.",swi_man_packages('semweb.html'),packages,115283).
i(/(rdf_reset_db,0),"Remove all triples from the RDF database and reset all its statistics.",swi_man_packages('semweb.html'),packages,115641).
i(/(rdf_version,1),"True when Version is the numerical version-id of this library.",swi_man_packages('semweb.html'),packages,116137).
i(section(4,'3.3.12','sec:semweb-memory-management'),"Memory management considerations",swi_man_packages('semweb.html'),packages,116475).
i(/(rdf_set,1),"Set properties of the RDF store.",swi_man_packages('semweb.html'),packages,119487).
i(/(rdf_gc,0),"Run the RDF-DB garbage collector until no garbage is left and all tables are fully optimized.",swi_man_packages('semweb.html'),packages,123196).
i(/(rdf_update_duplicates,0),"Update the duplicate administration of the RDF store.",swi_man_packages('semweb.html'),packages,123732).
i(section(3,'3.4','sec:rdfmonitor'),"Monitoring the database",swi_man_packages('semweb.html'),packages,124425).
i(/(rdf_monitor,2),"Goal is called for modifications of the database.",swi_man_packages('semweb.html'),packages,125140).
i(section(3,'3.5','sec:rdfissues'),"Issues with rdf_db",swi_man_packages('semweb.html'),packages,129844).
i(section(2,'4','sec:plugin'),"Plugin modules for rdf_db",swi_man_packages('semweb.html'),packages,130829).
i(section(3,'4.1','sec:semweb-hooks'),"Hooks into the RDF library",swi_man_packages('semweb.html'),packages,131473).
i(/('rdf_db:rdf_open_hook',3),"Open an input.",swi_man_packages('semweb.html'),packages,132951).
i(/('rdf_db:rdf_load_stream',3),"Actually load the RDF from Stream into the RDF database.",swi_man_packages('semweb.html'),packages,133463).
i(/('rdf_db:rdf_input_info',3),"Gather information on Input.",swi_man_packages('semweb.html'),packages,133926).
i(/('rdf_db:rdf_file_type',2),"True if Format is the default RDF file format for files with the given extension.",swi_man_packages('semweb.html'),packages,134595).
i(/('rdf_db:url_protocol',1),"True if Protocol is a URL protocol recognised by rdf_load/2.",swi_man_packages('semweb.html'),packages,135136).
i(section(3,'4.2','sec:semweb-zlib'),"library(semweb/rdf_zlib_plugin): Reading compressed RDF",swi_man_packages('semweb.html'),packages,135429).
i(section(3,'4.3','sec:http'),"library(semweb/rdf_http_plugin): Reading RDF from a HTTP server",swi_man_packages('semweb.html'),packages,136007).
i(section(3,'4.4','sec:rdfcache'),"library(semweb/rdf_cache): Cache RDF triples",swi_man_packages('semweb.html'),packages,136830).
i(/(rdf_set_cache_options,1),"Change the cache policy.",swi_man_packages('semweb.html'),packages,138292).
i(/(rdf_cache_file,3),"File is the cache file for URL.",swi_man_packages('semweb.html'),packages,139039).
i(section(3,'4.5','sec:rdflitindex'),"library(semweb/rdf_litindex): Indexing words in literals",swi_man_packages('semweb.html'),packages,139467).
i(/(rdf_find_literals,2),"Find literals (without type or language specification) that satisfy Spec.",swi_man_packages('semweb.html'),packages,140047).
i(/(rdf_token_expansions,2),"Uses the same database as rdf_find_literals/2 to find possible expansions of Spec, i.e.",swi_man_packages('semweb.html'),packages,142752).
i(/(rdf_tokenize_literal,2),"Tokenize a literal, returning a list of atoms and integers in the range -1073741824 ... 1073741823.",swi_man_packages('semweb.html'),packages,144397).
i(section(4,'4.5.1','sec:rdflitmap'),"Literal maps: Creating additional indices on literals",swi_man_packages('semweb.html'),packages,145443).
i(/(rdf_new_literal_map,1),"Create a new literal map, returning an opaque handle.",swi_man_packages('semweb.html'),packages,146794).
i(/(rdf_destroy_literal_map,1),"Destroy a literal map.",swi_man_packages('semweb.html'),packages,146986).
i(/(rdf_reset_literal_map,1),"Delete all content from the literal map.",swi_man_packages('semweb.html'),packages,147525).
i(/(rdf_insert_literal_map,3),"Add a relation between Key and Value to the map.",swi_man_packages('semweb.html'),packages,147708).
i(/(rdf_insert_literal_map,4),"As rdf_insert_literal_map/3.",swi_man_packages('semweb.html'),packages,147995).
i(/(rdf_delete_literal_map,2),"Delete Key and all associated values from the map.",swi_man_packages('semweb.html'),packages,148622).
i(/(rdf_delete_literal_map,2),"Delete the association between Key and Value from the map.",swi_man_packages('semweb.html'),packages,148853).
i(/(rdf_find_literal_map,3),"Unify ValueList with an ordered set of values associated to all keys from KeyList.",swi_man_packages('semweb.html'),packages,149111).
i(/(rdf_keys_in_literal_map,3),"Realises various queries on the key-set: allUnify Answer with an ordered list of all keys.",swi_man_packages('semweb.html'),packages,149651).
i(/(rdf_statistics_literal_map,2),"Query some statistics of the map.",swi_man_packages('semweb.html'),packages,151191).
i(section(3,'4.6','sec:rdfpersistency'),"library(semweb/rdf_persistency): Providing persistent storage",swi_man_packages('semweb.html'),packages,151677).
i(/(rdf_attach_db,2),"Attach Directory as the persistent database.",swi_man_packages('semweb.html'),packages,152530).
i(/(rdf_detach_db,0),"Detaches the persistent store.",swi_man_packages('semweb.html'),packages,155161).
i(/(rdf_current_db,1),"Unify Directory with the current database directory.",swi_man_packages('semweb.html'),packages,155352).
i(/(rdf_persistency,2),"Change presistency of named database (4th argument of rdf/4).",swi_man_packages('semweb.html'),packages,155596).
i(/(rdf_flush_journals,1),"Flush dirty journals.",swi_man_packages('semweb.html'),packages,156265).
i(section(4,'4.6.1','sec:enrich'),"Enriching the journals",swi_man_packages('semweb.html'),packages,157247).
i(/(rdf_journal_file,2),"True if File is the absolute file name of an existing named graph DB.",swi_man_packages('semweb.html'),packages,159284).
i(/(rdf_db_to_file,2),"Convert between DB (see rdf_source/1) and file base-file used for storing information on this database.",swi_man_packages('semweb.html'),packages,162338).
i(section(2,'5','sec:turtle'),"library(semweb/turtle): Turtle: Terse RDF Triple Language",swi_man_packages('semweb.html'),packages,162915).
i(/(rdf_read_turtle,3),"Read a stream or file into a set of triples or quadruples (if faced with TriG input) of the format rdf(Subject, Predicate, Object [, Graph]) The representation is consistent with the SWI-Prolog RDF/XML and ntriples parsers.",swi_man_packages('semweb.html'),packages,163741).
i(/(rdf_load_turtle,3),"deprecatedUse rdf_read_turtle/3",swi_man_packages('semweb.html'),packages,166736).
i(/(rdf_process_turtle,3),"Streaming Turtle parser.",swi_man_packages('semweb.html'),packages,167027).
i(/(turtle_pn_local,1),"True if Atom is a valid Turtle PN_LOCAL name.",swi_man_packages('semweb.html'),packages,168451).
i(/(turtle_write_quoted_string,2),"Same as turtle_write_quoted_string(Out, Value, false), writing a string with only a single \".",swi_man_packages('semweb.html'),packages,169164).
i(/(turtle_write_uri,2),"Write a URI as <...>",swi_man_packages('semweb.html'),packages,169532).
i(/('rdf_db:rdf_load_stream',3),"(Turtle clauses)",swi_man_packages('semweb.html'),packages,169748).
i(/(rdf_save_turtle,2),"Save an RDF graph as Turtle.",swi_man_packages('semweb.html'),packages,170003).
i(/(rdf_save_ntriples,2),"Save RDF using ntriples format.",swi_man_packages('semweb.html'),packages,174330).
i(/(rdf_save_canonical_trig,2),"Save triples in a canonical format.",swi_man_packages('semweb.html'),packages,174640).
i(/(rdf_save_trig,2),"Save multiple RDF graphs into a TriG file.",swi_man_packages('semweb.html'),packages,174972).
i(/(rdf_save_canonical_turtle,2),"Save triples in a canonical format.",swi_man_packages('semweb.html'),packages,175656).
i(section(2,'6','sec:rdfntriples'),"library(semweb/rdf_ntriples): Process files in the RDF N-Triples format",swi_man_packages('semweb.html'),packages,176513).
i(/(read_ntriple,2),"Read the next triple from Stream as Triple.",swi_man_packages('semweb.html'),packages,177562).
i(/(read_nquad,2),"Read the next quad from Stream as Quad.",swi_man_packages('semweb.html'),packages,178304).
i(/(read_ntuple,2),"Read the next triple or quad from Stream as Tuple.",swi_man_packages('semweb.html'),packages,179036).
i(/(rdf_read_ntriples,3),"True when Triples/Quads is a list of triples/quads from Input.",swi_man_packages('semweb.html'),packages,179595).
i(/(rdf_read_nquads,3),"True when Triples/Quads is a list of triples/quads from Input.",swi_man_packages('semweb.html'),packages,179595).
i(/(rdf_process_ntriples,3),"Call-back interface, compatible with the other triple readers.",swi_man_packages('semweb.html'),packages,181368).
i(/('rdf_db:rdf_load_stream',3),"Plugin rule that supports loading the ntriples and nquads formats.",swi_man_packages('semweb.html'),packages,182057).
i(/('rdf_db:rdf_file_type',2),"Bind the ntriples reader to files with the extensions nt, ntriples and nquads.",swi_man_packages('semweb.html'),packages,182397).
i(section(2,'7','sec:rdfa'),"library(semweb/rdfa): Extract RDF from an HTML or XML DOM",swi_man_packages('semweb.html'),packages,182753).
i(/(read_rdfa,3),"True when Triples is a list of rdf(S,P,O) triples extracted from Input.",swi_man_packages('semweb.html'),packages,183689).
i(/(xml_rdfa,3),"True when RDF is a list of rdf(S,P,O) terms extracted from DOM according to the RDFa specification.",swi_man_packages('semweb.html'),packages,184382).
i(/('rdf_db:rdf_load_stream',3),"Register library(semweb/rdfa) as loader for HTML RDFa files.",swi_man_packages('semweb.html'),packages,185311).
i(section(2,'8','sec:rdfs'),"library(semweb/rdfs): RDFS related queries",swi_man_packages('semweb.html'),packages,185795).
i(section(3,'8.1','sec:semweb-rdfs-classes'),"Hierarchy and class-individual relations",swi_man_packages('semweb.html'),packages,187159).
i(/(rdfs_subproperty_of,2),"True if SubProperty is equal to Property or Property can be reached from SubProperty following the rdfs:subPropertyOf relation.",swi_man_packages('semweb.html'),packages,187699).
i(/(rdfs_subclass_of,2),"True if SubClass is equal to Class or Class can be reached from SubClass following the rdfs:subClassOf relation.",swi_man_packages('semweb.html'),packages,188612).
i(/(rdfs_class_property,2),"True if the domain of Property includes Class.",swi_man_packages('semweb.html'),packages,189109).
i(/(rdfs_individual_of,2),"True if Resource is an indivisual of Class.",swi_man_packages('semweb.html'),packages,189386).
i(section(3,'8.2','sec:semweb-rdfs-containers'),"Collections and Containers",swi_man_packages('semweb.html'),packages,189867).
i(/(rdfs_member,2),"Test or generate the members of Set.",swi_man_packages('semweb.html'),packages,190322).
i(/(rdfs_list_to_prolog_list,2),"Convert Set, which must be an individual of rdf:List into a Prolog list of objects.",swi_man_packages('semweb.html'),packages,190601).
i(/(rdfs_assert_list,2),"Equivalent to rdfs_assert_list/3 using DB = user.",swi_man_packages('semweb.html'),packages,190866).
i(/(rdfs_assert_list,3),"If List is a list of resources, create an RDF list Resource that reflects these resources.",swi_man_packages('semweb.html'),packages,191168).
i(section(2,'9','sec:rdflib'),"Managing RDF input files",swi_man_packages('semweb.html'),packages,191656).
i(section(3,'9.1','sec:semweb-rdf-manifest'),"The Manifest file",swi_man_packages('semweb.html'),packages,192636).
i(section(4,'9.1.1','sec:semweb-void'),"Support for the VoID and VANN vocabularies",swi_man_packages('semweb.html'),packages,196898).
i(section(4,'9.1.2','sec:semweb-find-manifest'),"Finding manifest files",swi_man_packages('semweb.html'),packages,198927).
i(/(rdf_attach_library,1),"Load meta-data on RDF repositories from FileOrDirectory.",swi_man_packages('semweb.html'),packages,199310).
i(/(rdf_list_library,0),"List the available resources in the library.",swi_man_packages('semweb.html'),packages,200252).
i(/(rdf_list_library,1),"Same as rdf_list_library(Id,[]).",swi_man_packages('semweb.html'),packages,201332).
i(/(rdf_list_library,2),"Lists the resources that will be loaded if Id is handed to rdf_load_library/2.",swi_man_packages('semweb.html'),packages,201509).
i(/(rdf_load_library,2),"Load the given library.",swi_man_packages('semweb.html'),packages,202380).
i(section(3,'9.2','sec:usage'),"Usage scenarios",swi_man_packages('semweb.html'),packages,202780).
i(section(4,'9.2.1','sec:semweb-manifest-resources'),"Referencing resources",swi_man_packages('semweb.html'),packages,205729).
i(section(3,'9.3','sec:semweb-rdflib-example'),"Putting it all together",swi_man_packages('semweb.html'),packages,208169).
i(section(3,'9.4','sec:w3cmanifest'),"Example: A metadata file for W3C WordNet",swi_man_packages('semweb.html'),packages,209431).
i(section(2,'10','sec:sparqlclient'),"library(semweb/sparql_client): SPARQL client library",swi_man_packages('semweb.html'),packages,213210).
i(/(sparql_query,3),"Execute a SPARQL query on an HTTP SPARQL endpoint.",swi_man_packages('semweb.html'),packages,214276).
i(/(sparql_set_server,1),"Set sparql server default options.",swi_man_packages('semweb.html'),packages,216842).
i(/(sparql_read_xml_result,2),"Specs from http://www.w3.org/TR/rdf-sparql-XMLres/.",swi_man_packages('semweb.html'),packages,217314).
i(/(sparql_read_json_result,2),"The returned Result term is of the format: select(VarNames, Rows)Where VarNames is a term v(Name, ...) and Rows is a list of row(....) containing the column values in the same order as the variable names.",swi_man_packages('semweb.html'),packages,218094).
i(section(2,'11','sec:rdfcompare'),"library(semweb/rdf_compare): Compare RDF graphs",swi_man_packages('semweb.html'),packages,218978).
i(/(rdf_equal_graphs,3),"True if GraphA and GraphB are the same under Substition.",swi_man_packages('semweb.html'),packages,219553).
i(section(2,'12','sec:rdfportray'),"library(semweb/rdf_portray): Portray RDF resources",swi_man_packages('semweb.html'),packages,220551).
i(/(rdf_portray_as,1),"Set the style used to portray resources.",swi_man_packages('semweb.html'),packages,221625).
i(/(rdf_portray_lang,1),"If Lang is a list, set the list or preferred languages.",swi_man_packages('semweb.html'),packages,222552).
i(section(2,'13','sec:semweb-related-packages'),"Related packages",swi_man_packages('semweb.html'),packages,222874).
i(section(2,'14','sec:semweb-version3'),"Version 3 release notes",swi_man_packages('semweb.html'),packages,223870).
i(section(0,'0','packages/protobufs.html'),"Google's Protocol Buffers Library",swi_man_packages('protobufs.html'),packages,2785).
i(section(2,'1','sec:protobufs-main'),"Google's Protocol Buffers",swi_man_packages('protobufs.html'),packages,6616).
i(section(3,'1.1','sec:protobufs-overview'),"Overview",swi_man_packages('protobufs.html'),packages,6795).
i(section(3,'1.2','sec:protobufs-processing-with-prolog'),"Processing protobufs with Prolog",swi_man_packages('protobufs.html'),packages,8394).
i(section(3,'1.3','sec:protobufs-protoc'),"protoc",swi_man_packages('protobufs.html'),packages,9090).
i(section(4,'1.3.1','sec:protobufs-serialize-to-codes'),"protobuf_serialize_to_codes/3",swi_man_packages('protobufs.html'),packages,11790).
i(section(4,'1.3.2','sec:protobufs-parse-from-codes'),"protobuf_parse_from_codes/3",swi_man_packages('protobufs.html'),packages,13446).
i(section(4,'1.3.3','sec:protobufs-addressbook-example'),"addressbook example",swi_man_packages('protobufs.html'),packages,16185).
i(section(3,'1.4','sec:protobufs-swipl'),"The low-level SWI-Prolog Implementation",swi_man_packages('protobufs.html'),packages,16956).
i(section(4,'1.4.1','sec:protobufs-wire-types'),"Wiretypes",swi_man_packages('protobufs.html'),packages,21456).
i(section(4,'1.4.2','sec:protobufs-tags'),"Tags (field numbers)",swi_man_packages('protobufs.html'),packages,27033).
i(section(4,'1.4.3','sec:protobufs-basic-usage'),"Basic Usage",swi_man_packages('protobufs.html'),packages,27803).
i(section(4,'1.4.4','sec:protobufs-aaee'),"Alternation, Aggregation, Encapsulation, and Enumeration",swi_man_packages('protobufs.html'),packages,31706).
i(section(4,'1.4.5','sec:protobufs-groups'),"Groups (deprecated)",swi_man_packages('protobufs.html'),packages,39491).
i(section(4,'1.4.6','sec:protobufs-advanced'),"Advanced Topics",swi_man_packages('protobufs.html'),packages,40085).
i(section(2,'2','sec:protobufs-appendix'),"Appendix",swi_man_packages('protobufs.html'),packages,42312).
i(section(3,'2.1','sec:protobufs-ex-xml'),"Example: A Simple XML Like Structure",swi_man_packages('protobufs.html'),packages,42481).
i(section(3,'2.2','sec:protobufs-ex-vector-of-numbers'),"Example: Vectors of Numbers",swi_man_packages('protobufs.html'),packages,47021).
i(section(3,'2.3','sec:protobufs-ex-heterogeneous'),"Example: Heterogeneous Collections",swi_man_packages('protobufs.html'),packages,49591).
i(section(2,'3','sec:protobufs'),"library(protobufs): Google's Protocol Buffers (\"protobufs\")",swi_man_packages('protobufs.html'),packages,51757).
i(/(protobuf_parse_from_codes,3),"Process bytes (list of int) that is the serialized form of a message (designated by MessageType), creating a Prolog term.",swi_man_packages('protobufs.html'),packages,57242).
i(/(protobuf_serialize_to_codes,3),"Process a Prolog term into bytes (list of int) that is the serialized form of a message (designated by MessageType).",swi_man_packages('protobufs.html'),packages,61740).
i(/(protobuf_message,2),"Marshals and unmarshals byte streams encoded using Google's Protobuf grammars.",swi_man_packages('protobufs.html'),packages,64454).
i(/(protobuf_message,3),"Marshals and unmarshals byte streams encoded using Google's Protobuf grammars.",swi_man_packages('protobufs.html'),packages,64454).
i(/(protobuf_field_is_map,2),"Succeeds if MessageType’s FieldName is defined as a map<...> in the .proto file.",swi_man_packages('protobufs.html'),packages,66170).
i(/(protobuf_map_pairs,3),"Convert between a list of protobuf map entries (in the form DictTag{key:Key, value:Value} and a key-value list as described in library(pairs).",swi_man_packages('protobufs.html'),packages,66514).
i(section(0,'0','packages/cql.html'),"Constraint Query Language A high level interface to SQL databases",swi_man_packages('cql.html'),packages,2817).
i(section(2,'1','sec:cql'),"library(cql/cql): CQL - Constraint Query Language",swi_man_packages('cql.html'),packages,13967).
i(section(3,'1.1','sec:cql-warnings'),"Warnings from CQL",swi_man_packages('cql.html'),packages,14576).
i(section(4,'1.1.1','sec:cql-compare-null'),"CQL Comparisons with NULL",swi_man_packages('cql.html'),packages,14747).
i(section(4,'1.1.2','sec:cql-and-setof'),"Avoid setof/3 and bagof/3 in CQL queries",swi_man_packages('cql.html'),packages,15516).
i(section(3,'1.2','sec:cql-null-outer-jpin'),"CQL: Retrieved nulls have special logic to handle outer joins",swi_man_packages('cql.html'),packages,16357).
i(section(3,'1.3','sec:cql-quickstart'),"CQL: Getting Started Quickly",swi_man_packages('cql.html'),packages,17347).
i(section(3,'1.4','sec:cql-debugging'),"Debugging CQL queries",swi_man_packages('cql.html'),packages,18587).
i(section(3,'1.5','sec:cql-prolog-vars'),"Prolog Variables in CQL queries",swi_man_packages('cql.html'),packages,20414).
i(section(3,'1.6','sec:cql-special-attrs'),"CQL Special Attributes",swi_man_packages('cql.html'),packages,21810).
i(section(3,'1.7','sec:cql-examples'),"CQL Examples",swi_man_packages('cql.html'),packages,22876).
i(section(4,'1.7.1','sec:cql-insert'),"CQL Simple INSERT",swi_man_packages('cql.html'),packages,23156).
i(section(4,'1.7.2','sec:cql-insert2'),"CQL Simple INSERT with retrieval of identity of the inserted",swi_man_packages('cql.html'),packages,23400).
i(section(4,'1.7.3','sec:cql-delete'),"CQL Simple DELETE",swi_man_packages('cql.html'),packages,23703).
i(section(4,'1.7.4','sec:cql-select'),"CQL Simple SELECT",swi_man_packages('cql.html'),packages,24451).
i(section(4,'1.7.5','sec:cql-update'),"CQL Simple UPDATE",swi_man_packages('cql.html'),packages,25293).
i(section(4,'1.7.6','sec:cql-where-arith'),"CQL WHERE with arithmetic comparison",swi_man_packages('cql.html'),packages,25804).
i(section(4,'1.7.7','sec:cql-inner-join'),"CQL Simple INNER JOIN",swi_man_packages('cql.html'),packages,26072).
i(section(4,'1.7.8','sec:cql-update-join-where'),"CQL Arithmetic UPDATE with an INNER JOIN and a WHERE restriction",swi_man_packages('cql.html'),packages,26557).
i(section(4,'1.7.9','sec:cql-not-exists'),"CQL: Confirm row does not exist",swi_man_packages('cql.html'),packages,27197).
i(section(4,'1.7.10','sec:cql-count'),"CQL: Aggregation - Count",swi_man_packages('cql.html'),packages,27452).
i(section(4,'1.7.11','sec:cql-sum'),"CQL: Aggregation - Sum",swi_man_packages('cql.html'),packages,27734).
i(section(4,'1.7.12','sec:cql-avg'),"CQL: Aggregation - Average",swi_man_packages('cql.html'),packages,28013).
i(section(4,'1.7.13','sec:cql-max'),"CQL: Maximum Value",swi_man_packages('cql.html'),packages,28314).
i(section(4,'1.7.14','sec:cql-min'),"CQL: Minimum Value",swi_man_packages('cql.html'),packages,28610).
i(section(4,'1.7.15','sec:cql-group-by'),"CQL: Aggregation requiring GROUP BY",swi_man_packages('cql.html'),packages,28906).
i(section(4,'1.7.16','sec:cql-agg-subquery'),"CQL: INNER JOIN with an aggregation sub-query where the sub-query is constrained by a shared variable from the main query",swi_man_packages('cql.html'),packages,29304).
i(section(4,'1.7.17','sec:cql-join-subquery'),"CQL: INNER JOIN in an aggregation sub-query",swi_man_packages('cql.html'),packages,30002).
i(section(4,'1.7.18','sec:cql-negation'),"CQL: Negation",swi_man_packages('cql.html'),packages,30361).
i(section(4,'1.7.19','sec:cql-exists'),"CQL: EXISTS",swi_man_packages('cql.html'),packages,30780).
i(section(4,'1.7.20','sec:cql-left-outer-join'),"CQL: Left Outer Join",swi_man_packages('cql.html'),packages,31373).
i(section(4,'1.7.21','sec:cql-list-restrictions'),"CQL: List-based Restrictions",swi_man_packages('cql.html'),packages,31647).
i(section(4,'1.7.22','sec:cql-list-compilation'),"CQL: Compile time in-list constraint",swi_man_packages('cql.html'),packages,32501).
i(section(4,'1.7.23','sec:cql-disjunction'),"CQL: Disjunction resulting in OR in WHERE clause",swi_man_packages('cql.html'),packages,33657).
i(section(4,'1.7.24','sec:cql-disj-diff-joins'),"CQL: Disjunction resulting in different joins (implemented as a SQL UNION)",swi_man_packages('cql.html'),packages,34107).
i(section(4,'1.7.25','sec:cql-disj-attrs'),"CQL: Disjunction resulting in different SELECT attributes (implemented as separate ODBC queries)",swi_man_packages('cql.html'),packages,34695).
i(section(4,'1.7.26','sec:cql-order-by'),"CQL: ORDER BY",swi_man_packages('cql.html'),packages,35182).
i(section(4,'1.7.27','sec:cql-distinct'),"CQL: DISTINCT",swi_man_packages('cql.html'),packages,35546).
i(section(4,'1.7.28','sec:cql-select-not-null'),"CQL: SELECT with NOT NULL restriction",swi_man_packages('cql.html'),packages,36192).
i(section(4,'1.7.29','sec:cql-top'),"CQL: First N",swi_man_packages('cql.html'),packages,36474).
i(section(4,'1.7.30','sec:cql-self-join'),"CQL: Self JOIN",swi_man_packages('cql.html'),packages,36813).
i(section(4,'1.7.31','sec:cql-no-null-compare'),"CQL: Removing null comparisions",swi_man_packages('cql.html'),packages,37088).
i(section(4,'1.7.32','sec:cql-three-table-join'),"CQL: Three table JOIN",swi_man_packages('cql.html'),packages,38475).
i(section(4,'1.7.33','sec:cql-three-nolock'),"CQL: Three table JOIN with NOLOCK locking hint",swi_man_packages('cql.html'),packages,38951).
i(section(4,'1.7.34','sec:cql-like'),"CQL: SELECT with LIKE",swi_man_packages('cql.html'),packages,39362).
i(section(4,'1.7.35','sec:cql-write'),"CQL: Writing exceptions directly to the database",swi_man_packages('cql.html'),packages,39694).
i(section(4,'1.7.36','sec:cql-top-n-parametric'),"CQL: TOP N is Parametric",swi_man_packages('cql.html'),packages,40448).
i(section(4,'1.7.37','sec:cql-compile-time-goal'),"CQL: Using compile_time_goal/1",swi_man_packages('cql.html'),packages,40951).
i(section(4,'1.7.38','sec:cql-on'),"CQL: ON",swi_man_packages('cql.html'),packages,42008).
i(section(4,'1.7.39','sec:cql-expr-in-where'),"CQL: Expressions In Where Restrictions",swi_man_packages('cql.html'),packages,42898).
i(section(4,'1.7.40','sec:cql-no-where'),"CQL: Explicitly avoid the \"No WHERE restriction\" message",swi_man_packages('cql.html'),packages,43261).
i(section(4,'1.7.41','sec:cql-having'),"CQL: HAVING",swi_man_packages('cql.html'),packages,44017).
i(section(4,'1.7.42','sec:cql-inst-update-value'),"CQL: INSERT and UPDATE value in-line formatting",swi_man_packages('cql.html'),packages,44827).
i(section(4,'1.7.43','sec:cql-neg-where'),"CQL: Negations in WHERE Clauses",swi_man_packages('cql.html'),packages,45374).
i(section(4,'1.7.44','sec:cql-gen-att-values'),"CQL: Predicate-generated Attribute Values",swi_man_packages('cql.html'),packages,45860).
i(section(4,'1.7.45','sec:cql-insert-from-select'),"CQL: INSERT from SELECT",swi_man_packages('cql.html'),packages,47369).
i(section(3,'1.8','sec:cql-hooks'),"CQL: Hooks",swi_man_packages('cql.html'),packages,48215).
i(section(4,'1.8.1','sec:cql-code-hooks'),"CQL: Generated Code Hooks",swi_man_packages('cql.html'),packages,48478).
i(section(4,'1.8.2','sec:cql-represent-hooks'),"CQL: Data Representation Hooks",swi_man_packages('cql.html'),packages,49271).
i(section(4,'1.8.3','sec:cql-appl-hooks'),"CQL: Application Integration",swi_man_packages('cql.html'),packages,50135).
i(section(4,'1.8.4','sec:cql-inline-hooks'),"CQL: Inline values",swi_man_packages('cql.html'),packages,52725).
i(section(4,'1.8.5','sec:cql-shema-hook'),"CQL: Schema",swi_man_packages('cql.html'),packages,53290).
i(section(4,'1.8.6','sec:cql-events-and-history'),"CQL: Event Processing and History",swi_man_packages('cql.html'),packages,55107).
i(section(4,'1.8.7','sec:cql-statistics-hooks'),"CQL: Statistical Hooks",swi_man_packages('cql.html'),packages,56275).
i(/(cql_set_module_default_schema,1),"Set the Schema for a module",swi_man_packages('cql.html'),packages,58897).
i(/(cql_get_module_default_schema,2),"",swi_man_packages('cql.html'),packages,59097).
i(/(cql_goal_expansion,3),"Expand at compile time if the first term is a list of unbound input variables Expand at runtime if the first term is compile_at_runtime",swi_man_packages('cql.html'),packages,59282).
i(/(cql_runtime,7),"",swi_man_packages('cql.html'),packages,59585).
i(/(cql_temporary_column_name,4),"",swi_man_packages('cql.html'),packages,59789).
i(/(cql_show,2),"Called when ?/1, ??/1, and ???/1 applied to CQL Goal goal term Mode minimal ; explicit ; full",swi_man_packages('cql.html'),packages,59975).
i(/(statistic_monitored_attribute,3),"",swi_man_packages('cql.html'),packages,60397).
i(/(dbms,2),"Determine the DBMS for a given Schema.",swi_man_packages('cql.html'),packages,60585).
i(/(odbc_data_type,4),"OdbcDataType must be a native SQL datatype, such as varchar(30) or decimal(10, 5) Can be autoconfigured.",swi_man_packages('cql.html'),packages,60824).
i(/(primary_key_column_name,3),"Can be autoconfigured.",swi_man_packages('cql.html'),packages,61182).
i(/(routine_return_type,3),"Can be autoconfigured",swi_man_packages('cql.html'),packages,61436).
i(/(database_constraint,4),"Constraint is one of: primary_key(ColumnNames:list)foreign_key(ForeignTableName:atom, ForeignColumnNames:list, ColumnNames:list)unique(ColumnNames:list)check(CheckClause) In theory this can be autoconfigured too, but I have not written the code for it yet",swi_man_packages('cql.html'),packages,61677).
i(/(attribute_domain,4),"",swi_man_packages('cql.html'),packages,62302).
i(/(database_identity,3),"",swi_man_packages('cql.html'),packages,62473).
i(/(database_key,5),"KeyColumnNames list of atom in database-supplied order KeyType identity ; ’primary key' ; unique",swi_man_packages('cql.html'),packages,62653).
i(/(cql_event_notification_table,2),"",swi_man_packages('cql.html'),packages,63103).
i(/(cql_history_attribute,3),"",swi_man_packages('cql.html'),packages,63319).
i(/(sql_gripe_hook,3),"Called when something dubious is found by the SQL parser.",swi_man_packages('cql.html'),packages,63534).
i(/(cql_normalize_name,3),"Normalize a name which is potentially longer than the DBMS allows to a unique truncation",swi_man_packages('cql.html'),packages,63782).
i(/(register_database_connection_details,2),"This should be called once to register the database connection details.",swi_man_packages('cql.html'),packages,64045).
i(section(0,'0','packages/zlib.html'),"SWI-Prolog binding to zlib",swi_man_packages('zlib.html'),packages,2778).
i(section(2,'1','sec:zlib'),"Zlib and compression",swi_man_packages('zlib.html'),packages,3948).
i(section(2,'2','sec:zlib-predicates'),"Predicate reference",swi_man_packages('zlib.html'),packages,6333).
i(/(zopen,3),"Creates ZStream, providing compressed access to Stream.",swi_man_packages('zlib.html'),packages,6521).
i(/(gzopen,3),"Same as gzopen(File, Mode, Stream,[]).",swi_man_packages('zlib.html'),packages,8986).
i(/(gzopen,4),"Open gzip compatible File for reading or writing.",swi_man_packages('zlib.html'),packages,9168).
i(section(2,'3','sec:zlib-streams'),"Interaction with Prolog stream predicates",swi_man_packages('zlib.html'),packages,9828).
i(section(0,'0','packages/redis.html'),"Redis -- a SWI-Prolog client for redis",swi_man_packages('redis.html'),packages,2790).
i(section(2,'1','sec:redis-overview'),"About the SWI-Prolog Redis client",swi_man_packages('redis.html'),packages,4774).
i(section(3,'1.1','sec:redis-threads'),"Redis and threads",swi_man_packages('redis.html'),packages,5652).
i(section(3,'1.2','sec:redis-tls'),"Redis TLS support",swi_man_packages('redis.html'),packages,6630).
i(section(3,'1.3','sec:redis-sentinels'),"Using Redis sentinels",swi_man_packages('redis.html'),packages,7501).
i(section(3,'1.4','sec:redis-versions'),"About versions",swi_man_packages('redis.html'),packages,9139).
i(section(3,'1.5','sec:redis-brokering'),"Redis as a message brokering system",swi_man_packages('redis.html'),packages,10336).
i(section(3,'1.6','sec:redis-history'),"History",swi_man_packages('redis.html'),packages,12449).
i(section(2,'2','sec:redis'),"library(redis): Redis client",swi_man_packages('redis.html'),packages,13582).
i(/(redis_server,3),"Register a redis server without connecting to it.",swi_man_packages('redis.html'),packages,14370).
i(/(redis_connect,1),"Connect to a redis server.",swi_man_packages('redis.html'),packages,15248).
i(/(redis_connect,3),"Connect to a redis server.",swi_man_packages('redis.html'),packages,15248).
i(/(tls_verify,5),"Accept or reject the certificate verification.",swi_man_packages('redis.html'),packages,19168).
i(/(redis_disconnect,1),"Disconnect from a redis server.",swi_man_packages('redis.html'),packages,19569).
i(/(redis_disconnect,2),"Disconnect from a redis server.",swi_man_packages('redis.html'),packages,19569).
i(/(redis,2),"This predicate is overloaded to handle two types of requests.",swi_man_packages('redis.html'),packages,20435).
i(/(redis,3),"Execute a redis Command on Connnection.",swi_man_packages('redis.html'),packages,22352).
i(/(redis,1),"Connect to the default redis server, call redist/3 using Request, disconnect and print the result.",swi_man_packages('redis.html'),packages,28416).
i(/(redis_write,2),"Write command and read replies from a Redis server.",swi_man_packages('redis.html'),packages,28722).
i(/(redis_read,2),"Write command and read replies from a Redis server.",swi_man_packages('redis.html'),packages,28722).
i(/(redis_get_list,3),"Get the content of a Redis list in List.",swi_man_packages('redis.html'),packages,29156).
i(/(redis_get_list,4),"Get the content of a Redis list in List.",swi_man_packages('redis.html'),packages,29156).
i(/(redis_set_list,3),"Associate a Redis key with a list.",swi_man_packages('redis.html'),packages,30205).
i(/(redis_get_hash,3),"Put/get a Redis hash as a Prolog dict.",swi_man_packages('redis.html'),packages,30706).
i(/(redis_set_hash,3),"Put/get a Redis hash as a Prolog dict.",swi_man_packages('redis.html'),packages,30706).
i(/(redis_array_dict,3),"Translate a Redis reply representing hash data into a SWI-Prolog dict.",swi_man_packages('redis.html'),packages,31559).
i(/(redis_scan,3),"Map the Redis SCAN, SSCAN, HSCAN and ZSCAN‘commands into a lazy list.",swi_man_packages('redis.html'),packages,32097).
i(/(redis_sscan,4),"Map the Redis SCAN, SSCAN, HSCAN and ZSCAN‘commands into a lazy list.",swi_man_packages('redis.html'),packages,32097).
i(/(redis_hscan,4),"Map the Redis SCAN, SSCAN, HSCAN and ZSCAN‘commands into a lazy list.",swi_man_packages('redis.html'),packages,32097).
i(/(redis_zscan,4),"Map the Redis SCAN, SSCAN, HSCAN and ZSCAN‘commands into a lazy list.",swi_man_packages('redis.html'),packages,32097).
i(/(redis_current_command,2),"True when Command has Properties.",swi_man_packages('redis.html'),packages,33880).
i(/(redis_current_command,3),"True when Command has Properties.",swi_man_packages('redis.html'),packages,33880).
i(/(redis_property,2),"True if Property is a property of the Redis server.",swi_man_packages('redis.html'),packages,34543).
i(/(redis_subscribe,4),"Subscribe to one or more Redis PUB/SUB channels.",swi_man_packages('redis.html'),packages,34938).
i(/(redis_subscribe,2),"Add/remove channels from for the subscription.",swi_man_packages('redis.html'),packages,36261).
i(/(redis_unsubscribe,2),"Add/remove channels from for the subscription.",swi_man_packages('redis.html'),packages,36261).
i(/(redis_current_subscription,2),"True when a PUB/SUB subscription with Id is listening on Channels.",swi_man_packages('redis.html'),packages,36928).
i(section(2,'3','sec:redisstreams'),"library(redis_streams): Using Redis streams",swi_man_packages('redis.html'),packages,37191).
i(/(xstream_set,3),"Set an option on for Key on Redis.",swi_man_packages('redis.html'),packages,38697).
i(/(xadd,4),"Add a message to a the stream Key on Redis.",swi_man_packages('redis.html'),packages,39297).
i(/(xlisten,3),"Listen using XREAD on one or more Streams on the server Redis.",swi_man_packages('redis.html'),packages,39933).
i(/(xlisten_group,5),"Listen as Consumer to Group.",swi_man_packages('redis.html'),packages,42154).
i(/(xconsumer_stop,1),"May be called from a consumer listener to stop the consumer.",swi_man_packages('redis.html'),packages,44165).
i(/(xhook,2),"This multifile predicate is called on certain stream events.",swi_man_packages('redis.html'),packages,44507).
i(section(0,'0','packages/stomp.html'),"STOMP -- a SWI-Prolog STOMP client",swi_man_packages('stomp.html'),packages,2786).
i(section(2,'1','sec:stomp'),"library(stomp): STOMP client.",swi_man_packages('stomp.html'),packages,3919).
i(section(3,'1.1','sec:stomp-threading'),"Threading",swi_man_packages('stomp.html'),packages,5229).
i(section(3,'1.2','sec:stomp-reconnecting'),"Reconnecting",swi_man_packages('stomp.html'),packages,6178).
i(/(stomp_connection,5),"Create a connection reference.",swi_man_packages('stomp.html'),packages,6809).
i(/(stomp_connection,6),"Create a connection reference.",swi_man_packages('stomp.html'),packages,6809).
i(/(stomp_connection_property,2),"True when Property, is a property of Connection.",swi_man_packages('stomp.html'),packages,10316).
i(/(stomp_destroy_connection,1),"Destroy a connection.",swi_man_packages('stomp.html'),packages,11441).
i(/(stomp_setup,2),"Set up the actual socket connection and start receiving thread.",swi_man_packages('stomp.html'),packages,11723).
i(/(stomp_teardown,1),"Tear down the socket connection, stop receiving thread and heartbeat thread (if applicable).",swi_man_packages('stomp.html'),packages,12434).
i(/(stomp_reconnect,1),"Teardown the connection and try to reconnect.",swi_man_packages('stomp.html'),packages,12936).
i(/(stomp_connect,1),"Setup the connection.",swi_man_packages('stomp.html'),packages,13154).
i(/(stomp_connect,2),"Setup the connection.",swi_man_packages('stomp.html'),packages,13154).
i(/(stomp_send,4),"Send a SEND frame.",swi_man_packages('stomp.html'),packages,14331).
i(/(stomp_send_json,4),"Send a SEND frame.",swi_man_packages('stomp.html'),packages,14914).
i(/(stomp_subscribe,4),"Send a SUBSCRIBE frame.",swi_man_packages('stomp.html'),packages,15587).
i(/(stomp_unsubscribe,2),"Send an UNSUBSCRIBE frame.",swi_man_packages('stomp.html'),packages,16046).
i(/(stomp_ack,3),"Send an ACK frame.",swi_man_packages('stomp.html'),packages,16492).
i(/(stomp_nack,3),"Send a NACK frame.",swi_man_packages('stomp.html'),packages,17044).
i(/(stomp_ack,2),"Reply with an ACK or NACK based on the received message header.",swi_man_packages('stomp.html'),packages,17602).
i(/(stomp_nack,2),"Reply with an ACK or NACK based on the received message header.",swi_man_packages('stomp.html'),packages,17602).
i(/(stomp_begin,2),"Send a BEGIN frame.",swi_man_packages('stomp.html'),packages,18217).
i(/(stomp_commit,2),"Send a COMMIT frame.",swi_man_packages('stomp.html'),packages,18578).
i(/(stomp_abort,2),"Send a ABORT frame.",swi_man_packages('stomp.html'),packages,19007).
i(/(stomp_transaction,2),"Run Goal as once/1, tagging all SEND messages inside the transaction with the transaction id.",swi_man_packages('stomp.html'),packages,19431).
i(/(stomp_disconnect,2),"Send a DISCONNECT frame.",swi_man_packages('stomp.html'),packages,20005).
i(section(0,'0','packages/pcre.html'),"SWI-Prolog Regular Expression library",swi_man_packages('pcre.html'),packages,2789).
i(section(2,'1','sec:pcre-motivation'),"Motivation",swi_man_packages('pcre.html'),packages,3629).
i(section(2,'2','sec:pcre'),"library(pcre): Perl compatible regular expression matching for SWI-Prolog",swi_man_packages('pcre.html'),packages,5250).
i(/(re_match,2),"Succeeds if String matches Regex.",swi_man_packages('pcre.html'),packages,7733).
i(/(re_match,3),"Succeeds if String matches Regex.",swi_man_packages('pcre.html'),packages,7733).
i(/(re_matchsub,3),"Match String against Regex.",swi_man_packages('pcre.html'),packages,12363).
i(/(re_matchsub,4),"Match String against Regex.",swi_man_packages('pcre.html'),packages,12363).
i(/(re_foldl,6),"Fold all matches of Regex on String.",swi_man_packages('pcre.html'),packages,14298).
i(/(re_split,3),"Split String using the regular expression Pattern.",swi_man_packages('pcre.html'),packages,16297).
i(/(re_split,4),"Split String using the regular expression Pattern.",swi_man_packages('pcre.html'),packages,16297).
i(/(re_replace,4),"Replace matches of the regular expression Pattern in String with With (possibly containing references to captured substrings).",swi_man_packages('pcre.html'),packages,17744).
i(/(re_replace,5),"Replace matches of the regular expression Pattern in String with With (possibly containing references to captured substrings).",swi_man_packages('pcre.html'),packages,17744).
i(/(re_compile,3),"Compiles Pattern to a Regex blob of type regex (see blob/2).",swi_man_packages('pcre.html'),packages,20380).
i(/(re_flush,0),"Clean pattern and replacement caches.",swi_man_packages('pcre.html'),packages,30433).
i(/(re_config,1),"Extract configuration information from the pcre library.",swi_man_packages('pcre.html'),packages,30692).
i(section(0,'0','packages/janus.html'),"SWI-Prolog Python interface",swi_man_packages('janus.html'),packages,2779).
i(section(2,'1','sec:janus-intro'),"Introduction",swi_man_packages('janus.html'),packages,6818).
i(section(2,'2','sec:janus-data'),"Data conversion",swi_man_packages('janus.html'),packages,9306).
i(section(2,'3','sec:janus-examples'),"Janus by example",swi_man_packages('janus.html'),packages,16167).
i(section(3,'3.1','sec:janus-spacy'),"Janus calling spaCy",swi_man_packages('janus.html'),packages,16408).
i(section(2,'4','sec:janus'),"library(janus): Call Python from Prolog",swi_man_packages('janus.html'),packages,19075).
i(/(py_version,0),"Print version info on the embedded Python installation based on Python sys:version.",swi_man_packages('janus.html'),packages,19998).
i(/(py_call,1),"Call Python and return the result of the called function.",swi_man_packages('janus.html'),packages,20233).
i(/(py_call,2),"Call Python and return the result of the called function.",swi_man_packages('janus.html'),packages,20233).
i(/(py_call,3),"Call Python and return the result of the called function.",swi_man_packages('janus.html'),packages,20233).
i(/(py_iter,2),"True when Value is returned by the Python Iterator.",swi_man_packages('janus.html'),packages,24336).
i(/(py_iter,3),"True when Value is returned by the Python Iterator.",swi_man_packages('janus.html'),packages,24336).
i(/(py_is_object,1),"True when Term is a Python object reference.",swi_man_packages('janus.html'),packages,26383).
i(/(py_free,1),"Immediately free (decrement the reference count) for th Python object Obj.",swi_man_packages('janus.html'),packages,26904).
i(/(py_with_gil,1),"Run Goal as once(Goal) while holding the Phyton GIL (Global Interpreter Lock).",swi_man_packages('janus.html'),packages,27645).
i(/(py_func,3),"XSB compatible wrappers for py_call/2.",swi_man_packages('janus.html'),packages,28251).
i(/(py_func,4),"XSB compatible wrappers for py_call/2.",swi_man_packages('janus.html'),packages,28251).
i(/(py_dot,4),"XSB compatible wrappers for py_call/2.",swi_man_packages('janus.html'),packages,29042).
i(/(py_dot,5),"XSB compatible wrappers for py_call/2.",swi_man_packages('janus.html'),packages,29042).
i(/(values,3),"Get the value associated with Dict at Path.",swi_man_packages('janus.html'),packages,29601).
i(/(keys,2),"True when Keys is a list of keys that appear in Dict.",swi_man_packages('janus.html'),packages,29892).
i(/(key,2),"True when Key is a key in Dict.",swi_man_packages('janus.html'),packages,30120).
i(/(items,2),"True when Items is a list of Key:Value that appear in Dict.",swi_man_packages('janus.html'),packages,30367).
i(/(py_shell,0),"Start an interactive Python REPL loop using the embedded Python interpreter.",swi_man_packages('janus.html'),packages,30604).
i(/(py_pp,1),"Pretty prints the Prolog translation of a Python data structure in Python syntax.",swi_man_packages('janus.html'),packages,31405).
i(/(py_pp,2),"Pretty prints the Prolog translation of a Python data structure in Python syntax.",swi_man_packages('janus.html'),packages,31405).
i(/(py_pp,3),"Pretty prints the Prolog translation of a Python data structure in Python syntax.",swi_man_packages('janus.html'),packages,31405).
i(/(py_obj_dir,2),"Examine attributes of an object.",swi_man_packages('janus.html'),packages,32281).
i(/(py_obj_dict,2),"Examine attributes of an object.",swi_man_packages('janus.html'),packages,32281).
i(/(py_initialize,3),"Initialize and configure the embedded Python system.",swi_man_packages('janus.html'),packages,32841).
i(/(py_lib_dirs,1),"True when Dirs is a list of directories searched for Python modules.",swi_man_packages('janus.html'),packages,33964).
i(/(py_add_lib_dir,1),"Add a directory to the Python module search path.",swi_man_packages('janus.html'),packages,34270).
i(/(py_add_lib_dir,2),"Add a directory to the Python module search path.",swi_man_packages('janus.html'),packages,34270).
i(section(3,'4.1','sec:janus-python-errors'),"Handling Python errors in Prolog",swi_man_packages('janus.html'),packages,35538).
i(section(2,'5','sec:janus-call-prolog'),"Calling Prolog from Python",swi_man_packages('janus.html'),packages,36828).
i(section(3,'5.1','sec:janus-class-query'),"Janus class Query",swi_man_packages('janus.html'),packages,47343).
i(section(3,'5.2','sec:janus-class-term'),"Janus class Term",swi_man_packages('janus.html'),packages,48897).
i(section(3,'5.3','sec:janus-class-prolog-error'),"Janus class PrologError",swi_man_packages('janus.html'),packages,50554).
i(section(2,'6','sec:janus-threads'),"Janus and threads",swi_man_packages('janus.html'),packages,52745).
i(section(2,'7','sec:janus-python-package'),"Janus as a Python package",swi_man_packages('janus.html'),packages,54684).
i(section(2,'8','sec:janus-prolog-python'),"Prolog and Python",swi_man_packages('janus.html'),packages,56379).
i(section(2,'9','sec:janus-performance'),"Janus performance evaluation",swi_man_packages('janus.html'),packages,56721).
i(section(2,'10','sec:janus-vs-c'),"Python or C/C++ for accessing resources?",swi_man_packages('janus.html'),packages,57991).
i(section(2,'11','sec:janus-platforms'),"Janus platforms notes",swi_man_packages('janus.html'),packages,59964).
i(section(3,'11.1','sec:janus-on-windows'),"Janus on Windows",swi_man_packages('janus.html'),packages,60545).
i(section(3,'11.2','sec:janus-on-linux'),"Janus on Linux",swi_man_packages('janus.html'),packages,61725).
i(section(3,'11.3','sec:janus-on-macos'),"Janus on MacOS",swi_man_packages('janus.html'),packages,62403).
i(section(2,'12','sec:janus-vs-xsb'),"Compatibility to the XSB Janus implementation",swi_man_packages('janus.html'),packages,63196).
i(section(3,'12.1','sec:janus-portable-code'),"Writing portable Janus modules",swi_man_packages('janus.html'),packages,65897).
i(section(2,'13','sec:janus-status'),"Status of Janus",swi_man_packages('janus.html'),packages,66317).
i(section(0,'0','packages/libedit.html'),"SWI-Prolog binding to BSD libedit",swi_man_packages('libedit.html'),packages,2785).
i(section(2,'1','sec:editline'),"library(editline): BSD libedit based command line editing",swi_man_packages('libedit.html'),packages,3472).
i(/(el_wrap,0),"Enable using editline on the standard user streams if user_input is connected to a terminal.",swi_man_packages('libedit.html'),packages,3934).
i(/(el_wrap,4),"Enable editline on the stream-triple .",swi_man_packages('libedit.html'),packages,4514).
i(/(el_setup,1),"This hooks is called as forall(el_setup(Input), true) after the input stream has been wrapped, the default Prolog commands have been added and the default user setup file has been sourced using el_source/2.",swi_man_packages('libedit.html'),packages,5111).
i(/(el_wrapped,1),"True if In is a stream wrapped by el_wrap/3.",swi_man_packages('libedit.html'),packages,5608).
i(/(el_unwrap,1),"Remove the libedit wrapper for In and the related output and error streams.",swi_man_packages('libedit.html'),packages,5859).
i(/(el_source,2),"Initialise editline by reading the contents of File.",swi_man_packages('libedit.html'),packages,6304).
i(/(el_bind,2),"Invoke the libedit bind command with the given arguments.",swi_man_packages('libedit.html'),packages,6597).
i(/(el_addfn,4),"Add a new command to the command line editor associated with Input.",swi_man_packages('libedit.html'),packages,7426).
i(/(el_line,2),"Fetch the currently buffered input line.",swi_man_packages('libedit.html'),packages,9430).
i(/(el_cursor,2),"Move the cursor Move character forwards (positive) or backwards (negative).",swi_man_packages('libedit.html'),packages,9838).
i(/(el_insertstr,2),"Insert Text at the cursor.",swi_man_packages('libedit.html'),packages,10115).
i(/(el_deletestr,2),"Delete Count characters before the cursor.",swi_man_packages('libedit.html'),packages,10329).
i(/(el_history,2),"Perform a generic action on the history.",swi_man_packages('libedit.html'),packages,10560).
i(/(el_history_events,2),"Unify Events with a list of pairs of the form Num-String, where Num is the event number and String is the associated string without terminating newline.",swi_man_packages('libedit.html'),packages,11272).
i(/(el_add_history,2),"Add a line to the command line history.",swi_man_packages('libedit.html'),packages,11669).
i(/(el_read_history,2),"Read the history saved using el_write_history/2.",swi_man_packages('libedit.html'),packages,11891).
i(/(el_write_history,2),"Save editline history to File.",swi_man_packages('libedit.html'),packages,12329).
i(section(0,'0','packages/ssl.html'),"SWI-Prolog SSL Interface",swi_man_packages('ssl.html'),packages,2776).
i(section(2,'1','sec:ssl-intro'),"Introduction",swi_man_packages('ssl.html'),packages,9022).
i(section(2,'2','sec:ssl'),"library(ssl): Secure Socket Layer (SSL) library",swi_man_packages('ssl.html'),packages,11054).
i(/(ssl_context,3),"Create an SSL context.",swi_man_packages('ssl.html'),packages,12923).
i(/(ssl_upgrade_legacy_options,2),"Handle deprecated cacert_file(Spec) option and map it to the new cacerts(+List) option.",swi_man_packages('ssl.html'),packages,24994).
i(/(ssl_add_certificate_key,4),"Add an additional certificate/key pair to SSL0, yielding SSL.",swi_man_packages('ssl.html'),packages,25313).
i(/(ssl_set_options,3),"SSL is the same as SSL0, except for the options specified in Options.",swi_man_packages('ssl.html'),packages,26243).
i(/(ssl_property,2),"True when Property is a property of SSL.",swi_man_packages('ssl.html'),packages,27362).
i(/(ssl_negotiate,5),"Once a connection is established and a read/write stream pair is available, (PlainRead and PlainWrite), this predicate can be called to negotiate an SSL session over the streams.",swi_man_packages('ssl.html'),packages,27895).
i(/(ssl_peer_certificate,2),"True if the peer certificate is provided (this is always the case for a client connection) and Certificate unifies with the peer certificate.",swi_man_packages('ssl.html'),packages,29297).
i(/(ssl_peer_certificate_chain,2),"Certificates is the certificate chain provided by the peer, represented as a list of certificates.",swi_man_packages('ssl.html'),packages,29943).
i(/(ssl_session,2),"Retrieves (debugging) properties from the SSL context associated with Stream.",swi_man_packages('ssl.html'),packages,30260).
i(/(load_certificate,2),"Loads a certificate from a PEM- or DER-encoded stream, returning a certificate.",swi_man_packages('ssl.html'),packages,32193).
i(/(write_certificate,3),"Writes a certificate to the stream Stream.",swi_man_packages('ssl.html'),packages,32998).
i(/(load_crl,2),"Loads a CRL from a PEM- or DER-encoded stream, returning a term containing terms hash/1, signature/1, issuer_name/1 and revocations/1, which is a list of revoked/2 terms.",swi_man_packages('ssl.html'),packages,33297).
i(/(system_root_certificates,1),"List is a list of trusted root certificates as provided by the OS.",swi_man_packages('ssl.html'),packages,33906).
i(/(load_private_key,3),"Load a private key PrivateKey from the given stream Stream, using Password to decrypt the key if it is encrypted.",swi_man_packages('ssl.html'),packages,35184).
i(/(load_public_key,2),"Load a public key PublicKey from the given stream Stream.",swi_man_packages('ssl.html'),packages,36058).
i(/(cert_accept_any,5),"Implementation for the hook‘cert_verify_hook(:Hook)` that accepts any certificate.",swi_man_packages('ssl.html'),packages,36767).
i(/(same_certificate,2),"True if CertificateA is logically the same as CertificateB, even if they are stored in different blobs",swi_man_packages('ssl.html'),packages,37346).
i(/(verify_certificate_issuer,2),"True if Certificate is a certificate which was issued by the certificate Issuer.",swi_man_packages('ssl.html'),packages,37629).
i(/(verify_certificate,3),"True if it is possible to build a chain of trust from Certificate to one of the certificates in TrustedCertificates, optionally using the (untrusted) certificates in AuxiliaryCertificates to complete the chain.",swi_man_packages('ssl.html'),packages,37901).
i(/(certificate_field,2),"Retrieve the field matching Field from Certificate.",swi_man_packages('ssl.html'),packages,38480).
i(/(ssl_secure_ciphers,1),"Ciphers is a secure cipher preference list that can be used in the cipher_list/1 option of ssl_context/3.",swi_man_packages('ssl.html'),packages,39843).
i(section(2,'3','sec:crypto'),"library(crypto): Cryptography and authentication library",swi_man_packages('ssl.html'),packages,41063).
i(section(3,'3.1','sec:crypto-introduction'),"Introduction",swi_man_packages('ssl.html'),packages,41462).
i(section(3,'3.2','sec:crypto-secure-defaults'),"Design principle: Secure default algorithms",swi_man_packages('ssl.html'),packages,41817).
i(section(3,'3.3','sec:crypto-binary-data'),"Representing binary data",swi_man_packages('ssl.html'),packages,43904).
i(/(hex_bytes,2),"Relation between a hexadecimal sequence and a list of bytes.",swi_man_packages('ssl.html'),packages,44331).
i(section(3,'3.4','sec:crypto-random'),"Cryptographically secure random numbers",swi_man_packages('ssl.html'),packages,45395).
i(/(crypto_n_random_bytes,2),"Bytes is unified with a list of N cryptographically secure pseudo-random bytes.",swi_man_packages('ssl.html'),packages,45880).
i(section(3,'3.5','sec:crypto-hash'),"Hashes",swi_man_packages('ssl.html'),packages,47372).
i(section(4,'3.5.1','sec:crypto-hash-basic'),"Hashes of data and files",swi_man_packages('ssl.html'),packages,48479).
i(/(crypto_data_hash,3),"Hash is the hash of Data.",swi_man_packages('ssl.html'),packages,48744).
i(/(crypto_file_hash,3),"True if Hash is the hash of the content of File.",swi_man_packages('ssl.html'),packages,51154).
i(section(4,'3.5.2','sec:crypto-hash-password'),"Hashes of passwords",swi_man_packages('ssl.html'),packages,51518).
i(/(crypto_password_hash,2),"If Hash is instantiated, the predicate succeeds iff the hash matches the given password.",swi_man_packages('ssl.html'),packages,51848).
i(/(crypto_password_hash,3),"Derive Hash based on Password.",swi_man_packages('ssl.html'),packages,52303).
i(section(4,'3.5.3','sec:crypto-hkdf'),"HMAC-based key derivation function (HKDF)",swi_man_packages('ssl.html'),packages,55503).
i(/(crypto_data_hkdf,4),"Concentrate possibly dispersed entropy of Data and then expand it to the desired length.",swi_man_packages('ssl.html'),packages,56163).
i(section(4,'3.5.4','sec:crypto-hash-incremental'),"Hashing incrementally",swi_man_packages('ssl.html'),packages,58159).
i(/(crypto_context_new,2),"Context is unified with the empty context, taking into account Options.",swi_man_packages('ssl.html'),packages,58845).
i(/(crypto_data_context,3),"Context0 is an existing computation context, and Context is the new context after hashing Data in addition to the previously hashed data.",swi_man_packages('ssl.html'),packages,59473).
i(/(crypto_context_hash,2),"Obtain the hash code of Context.",swi_man_packages('ssl.html'),packages,60252).
i(/(crypto_open_hash_stream,3),"Open a filter stream on OrgStream that maintains a hash.",swi_man_packages('ssl.html'),packages,60681).
i(/(crypto_stream_hash,2),"Unify Hash with a hash for the bytes sent to or read from HashStream.",swi_man_packages('ssl.html'),packages,61415).
i(section(3,'3.6','sec:crypto-signatures'),"Digital signatures",swi_man_packages('ssl.html'),packages,62001).
i(section(4,'3.6.1','sec:crypto-ECDSA'),"ECDSA",swi_man_packages('ssl.html'),packages,63222).
i(/(ecdsa_sign,4),"Create an ECDSA signature for Data with EC private key Key.",swi_man_packages('ssl.html'),packages,63400).
i(/(ecdsa_verify,4),"True iff Signature can be verified as the ECDSA signature for Data, using the EC public key Key.",swi_man_packages('ssl.html'),packages,64352).
i(section(4,'3.6.2','sec:crypto-RSA'),"RSA",swi_man_packages('ssl.html'),packages,64977).
i(/(rsa_sign,4),"Create an RSA signature for Data with private key Key.",swi_man_packages('ssl.html'),packages,65149).
i(/(rsa_verify,4),"Verify an RSA signature for Data with public key Key.",swi_man_packages('ssl.html'),packages,66899).
i(section(3,'3.7','sec:crypto-asymmetric'),"Asymmetric encryption and decryption",swi_man_packages('ssl.html'),packages,67960).
i(/(rsa_private_decrypt,4),"RSA Public key encryption and decryption primitives.",swi_man_packages('ssl.html'),packages,68382).
i(/(rsa_private_encrypt,4),"RSA Public key encryption and decryption primitives.",swi_man_packages('ssl.html'),packages,68382).
i(/(rsa_public_decrypt,4),"RSA Public key encryption and decryption primitives.",swi_man_packages('ssl.html'),packages,68382).
i(/(rsa_public_encrypt,4),"RSA Public key encryption and decryption primitives.",swi_man_packages('ssl.html'),packages,68382).
i(section(3,'3.8','sec:crypto-symmetric'),"Symmetric encryption and decryption",swi_man_packages('ssl.html'),packages,70622).
i(/(crypto_data_encrypt,6),"Encrypt the given PlainText, using the symmetric algorithm Algorithm, key Key, and initialization vector (or nonce) IV, to give CipherText.",swi_man_packages('ssl.html'),packages,70976).
i(/(crypto_data_decrypt,6),"Decrypt the given CipherText, using the symmetric algorithm Algorithm, key Key, and initialization vector IV, to give PlainText.",swi_man_packages('ssl.html'),packages,77091).
i(section(3,'3.9','sec:crypto-numbertheory'),"Number theory",swi_man_packages('ssl.html'),packages,78930).
i(/(crypto_modular_inverse,3),"Compute the modular multiplicative inverse of the integer X.",swi_man_packages('ssl.html'),packages,79293).
i(/(crypto_generate_prime,3),"Generate a prime P with at least N bits.",swi_man_packages('ssl.html'),packages,79668).
i(/(crypto_is_prime,2),"True iff P passes a probabilistic primality test.",swi_man_packages('ssl.html'),packages,80302).
i(section(3,'3.10','sec:crypto-ec'),"Elliptic curves",swi_man_packages('ssl.html'),packages,80946).
i(/(crypto_name_curve,2),"Obtain a handle for a named elliptic curve.",swi_man_packages('ssl.html'),packages,81646).
i(/(crypto_curve_order,2),"Obtain the order of an elliptic curve.",swi_man_packages('ssl.html'),packages,82273).
i(/(crypto_curve_generator,2),"Point is the generator of the elliptic curve Curve.",swi_man_packages('ssl.html'),packages,82633).
i(/(crypto_curve_scalar_mult,4),"R is the result of N times Point on the elliptic curve Curve.",swi_man_packages('ssl.html'),packages,82904).
i(section(3,'3.11','sec:crypto-shared-secret'),"Example: Establishing a shared secret",swi_man_packages('ssl.html'),packages,83309).
i(section(2,'4','sec:ssl-xml-libs'),"XML cryptographic libraries",swi_man_packages('ssl.html'),packages,88105).
i(section(3,'4.1','sec:saml'),"library(saml): SAML Authentication",swi_man_packages('ssl.html'),packages,88693).
i(section(3,'4.2','sec:xmlenc'),"library(xmlenc): XML encryption library",swi_man_packages('ssl.html'),packages,92278).
i(/(decrypt_xml,4),"KeyCallback may be called as follows: call(KeyCallback, name, KeyName, Key)call(KeyCallback, public_key, public_key(RSA), Key)call(KeyCallback, certificate, Certificate, Key)",swi_man_packages('ssl.html'),packages,92959).
i(/(load_certificate_from_base64_string,2),"Loads a certificate from a string, adding newlines and header where appropriate so that OpenSSL 1.0.1+ will be able to parse it",swi_man_packages('ssl.html'),packages,93489).
i(section(3,'4.3','sec:xmldsig'),"library(xmldsig): XML Digital signature",swi_man_packages('ssl.html'),packages,93852).
i(/(xmld_signed_DOM,3),"Translate an XML DOM structure in a signed version.",swi_man_packages('ssl.html'),packages,94660).
i(/(xmld_verify_signature,4),"Confirm that an ds:Signature element contains a valid signature.",swi_man_packages('ssl.html'),packages,95630).
i(section(2,'5','sec:ssl-security'),"SSL Security",swi_man_packages('ssl.html'),packages,96456).
i(section(2,'6','sec:crl'),"CRLs and Revocation",swi_man_packages('ssl.html'),packages,100817).
i(section(4,'6.1','sec:disable-certificate'),"Disabling certificate checking",swi_man_packages('ssl.html'),packages,104017).
i(section(4,'6.2','sec:ssl-safe-connection'),"Establishing a safe connection",swi_man_packages('ssl.html'),packages,104752).
i(section(2,'7','sec:ssl-examples'),"Example code",swi_man_packages('ssl.html'),packages,107934).
i(section(3,'7.1','sec:ssl-https-client'),"Accessing an HTTPS server",swi_man_packages('ssl.html'),packages,108548).
i(section(3,'7.2','sec:ssl-https-server'),"Creating an HTTPS server",swi_man_packages('ssl.html'),packages,109344).
i(section(3,'7.3','sec:https-proxy'),"HTTPS behind a proxy",swi_man_packages('ssl.html'),packages,114202).
i(section(2,'8','sec:compatibility'),"Compatibility of the API",swi_man_packages('ssl.html'),packages,115774).
i(section(2,'9','sec:ssl-acknowledgments'),"Acknowledgments",swi_man_packages('ssl.html'),packages,116810).
i(section(0,'0','packages/http.html'),"SWI-Prolog HTTP support",swi_man_packages('http.html'),packages,2775).
i(section(2,'1','sec:http-intro'),"Introduction",swi_man_packages('http.html'),packages,13995).
i(section(2,'2','sec:http-clients'),"The HTTP client libraries",swi_man_packages('http.html'),packages,16096).
i(section(3,'2.1','sec:httpopen'),"library(http/http_open): HTTP client library",swi_man_packages('http.html'),packages,17790).
i(/(http_open,3),"Open the data at the HTTP server as a Prolog stream.",swi_man_packages('http.html'),packages,22383).
i(/(map_method,2),"Support additional METHOD keywords.",swi_man_packages('http.html'),packages,33471).
i(:(http,/(disable_encoding_filter,1)),"Do not use the Content-encoding as Transfer-encoding encoding for specific values of ContentType.",swi_man_packages('http.html'),packages,33769).
i(/(http_set_authorization,2),"Set user/password to supply with URLs that have URL as prefix.",swi_man_packages('http.html'),packages,34215).
i(:(iostream,/(open_hook,6)),"Hook implementation that makes open_any/5 support http and https URLs for Mode == read.",swi_man_packages('http.html'),packages,34913).
i(/(http_close_keep_alive,1),"Close all keep-alive connections matching Address.",swi_man_packages('http.html'),packages,35333).
i(:(http,/(open_options,2)),"This hook is used by the HTTP client library to define default options based on the the broken-down request-URL.",swi_man_packages('http.html'),packages,35727).
i(:(http,/(write_cookies,3)),"Emit a Cookie: header for the current connection.",swi_man_packages('http.html'),packages,36531).
i(:(http,/(update_cookies,3)),"Update the cookie database.",swi_man_packages('http.html'),packages,37378).
i(section(3,'2.2','sec:httpclient'),"library(http/http_client): HTTP client library",swi_man_packages('http.html'),packages,38098).
i(/(http_get,3),"Get data from a URL server and convert it to a suitable Prolog representation based on the Content-Type header and plugins.",swi_man_packages('http.html'),packages,40624).
i(/(http_delete,3),"Execute a DELETE method on the server.",swi_man_packages('http.html'),packages,41937).
i(/(http_post,4),"Issue an HTTP POST request.",swi_man_packages('http.html'),packages,42652).
i(/(http_put,4),"Issue an HTTP PUT request.",swi_man_packages('http.html'),packages,43244).
i(/(http_patch,4),"Issue an HTTP PATCH request.",swi_man_packages('http.html'),packages,43652).
i(/(http_read_data,3),"Read data from an HTTP connection and convert it according to the supplied to(Format) option or based on the Content-type in the Request.",swi_man_packages('http.html'),packages,44066).
i(/(http_convert_data,4),"Multi-file hook to convert a HTTP payload according to the Content-Type header.",swi_man_packages('http.html'),packages,46108).
i(/(http_disconnect,1),"Close down some connections.",swi_man_packages('http.html'),packages,46616).
i(:(http,/(post_data_hook,3)),"Hook to extend the datatypes supported by the post(Data) option of http_open/3.",swi_man_packages('http.html'),packages,47125).
i(section(2,'3','sec:httpserver'),"The HTTP server libraries",swi_man_packages('http.html'),packages,47629).
i(section(3,'3.1','sec:html-body'),"Creating an HTTP reply",swi_man_packages('http.html'),packages,51302).
i(section(4,'3.1.1','sec:httpspecials'),"Returning special status codes",swi_man_packages('http.html'),packages,55724).
i(section(3,'3.2','sec:httpdispatch'),"library(http/http_dispatch): Dispatch requests in the HTTP server",swi_man_packages('http.html'),packages,57903).
i(/(http_handler,3),"Register Closure as a handler for HTTP requests.",swi_man_packages('http.html'),packages,58884).
i(/(http_delete_handler,1),"Delete handler for Spec.",swi_man_packages('http.html'),packages,64583).
i(/(http_dispatch,1),"Dispatch a Request using http_handler/3 registrations.",swi_man_packages('http.html'),packages,65203).
i(/(http_request_expansion,2),"Register Goal for expanding the HTTP request handler.",swi_man_packages('http.html'),packages,66715).
i(/(http_current_handler,2),"True if Location is handled by Closure.",swi_man_packages('http.html'),packages,67769).
i(/(http_current_handler,3),"Resolve the current handler and options to execute it.",swi_man_packages('http.html'),packages,68194).
i(/(http_location_by_id,2),"True when Location represents the HTTP path to which the handler with identifier ID is bound.",swi_man_packages('http.html'),packages,68632).
i(/(http_link_to_id,3),"HREF is a link on the local server to a handler with given ID, passing the given Parameters.",swi_man_packages('http.html'),packages,70552).
i(/(http_reload_with_parameters,3),"Create a request on the current handler with replaced search parameters.",swi_man_packages('http.html'),packages,72889).
i(/(http_reply_file,3),"Options is a list of cache(+Boolean)If true (default), handle If-modified-since and send modification time.",swi_man_packages('http.html'),packages,73176).
i(/(http_safe_file,2),"True if FileSpec is considered safe.",swi_man_packages('http.html'),packages,75288).
i(/(http_redirect,3),"Redirect to a new location.",swi_man_packages('http.html'),packages,75864).
i(/(http_404,2),"Reply using an \"HTTP 404 not found\" page.",swi_man_packages('http.html'),packages,76860).
i(/(http_switch_protocol,2),"Send an \"HTTP 101 Switching Protocols\" reply.",swi_man_packages('http.html'),packages,77527).
i(section(3,'3.3','sec:httpdirindex'),"library(http/http_dirindex): HTTP directory listings",swi_man_packages('http.html'),packages,79178).
i(/(http_reply_dirindex,3),"Provide a directory listing for Request, assuming it is an index for the physical directrory Dir.",swi_man_packages('http.html'),packages,79803).
i(//(directory_index,2),"Show index for a directory.",swi_man_packages('http.html'),packages,80323).
i(:(http,/(mime_type_icon,2)),"Multi-file hook predicate that can be used to associate icons to files listed by http_reply_dirindex/3.",swi_man_packages('http.html'),packages,81160).
i(section(3,'3.4','sec:httpfiles'),"library(http/http_files): Serve plain files from a hierarchy",swi_man_packages('http.html'),packages,81799).
i(/(http_reply_from_files,3),"HTTP handler that serves files from the directory Dir.",swi_man_packages('http.html'),packages,83135).
i(section(3,'3.5','sec:httpsession'),"library(http/http_session): HTTP Session management",swi_man_packages('http.html'),packages,85437).
i(/(http_set_session_options,1),"Set options for the session library.",swi_man_packages('http.html'),packages,87733).
i(/(http_session_option,1),"True if Option is a current option of the session system.",swi_man_packages('http.html'),packages,91186).
i(/(session_setting,2),"Find setting for SessionID.",swi_man_packages('http.html'),packages,91434).
i(/(http_set_session,1),"Overrule a setting for the current or specified session.",swi_man_packages('http.html'),packages,91755).
i(/(http_set_session,2),"Overrule a setting for the current or specified session.",swi_man_packages('http.html'),packages,91755).
i(/(http_session_id,1),"True if SessionId is an identifier for the current session.",swi_man_packages('http.html'),packages,92404).
i(/(http_in_session,1),"True if SessionId is an identifier for the current session.",swi_man_packages('http.html'),packages,93007).
i(/(http_open_session,2),"Establish a new session.",swi_man_packages('http.html'),packages,93932).
i(/(http_session_asserta,1),"Versions of assert/1, retract/1 and retractall/1 that associate data with the current HTTP session.",swi_man_packages('http.html'),packages,95051).
i(/(http_session_assert,1),"Versions of assert/1, retract/1 and retractall/1 that associate data with the current HTTP session.",swi_man_packages('http.html'),packages,95051).
i(/(http_session_retract,1),"Versions of assert/1, retract/1 and retractall/1 that associate data with the current HTTP session.",swi_man_packages('http.html'),packages,95051).
i(/(http_session_retractall,1),"Versions of assert/1, retract/1 and retractall/1 that associate data with the current HTTP session.",swi_man_packages('http.html'),packages,95051).
i(/(http_session_data,1),"True if Data is associated using http_session_assert/1 to the current HTTP session.",swi_man_packages('http.html'),packages,95876).
i(/(http_session_asserta,2),"Versions of assert/1, retract/1 and retractall/1 that associate data with an explicit HTTP session.",swi_man_packages('http.html'),packages,96306).
i(/(http_session_assert,2),"Versions of assert/1, retract/1 and retractall/1 that associate data with an explicit HTTP session.",swi_man_packages('http.html'),packages,96306).
i(/(http_session_retract,2),"Versions of assert/1, retract/1 and retractall/1 that associate data with an explicit HTTP session.",swi_man_packages('http.html'),packages,96306).
i(/(http_session_retractall,2),"Versions of assert/1, retract/1 and retractall/1 that associate data with an explicit HTTP session.",swi_man_packages('http.html'),packages,96306).
i(/(http_session_data,2),"Versions of assert/1, retract/1 and retractall/1 that associate data with an explicit HTTP session.",swi_man_packages('http.html'),packages,96306).
i(/(http_current_session,2),"Enumerate the current sessions and associated data.",swi_man_packages('http.html'),packages,97483).
i(/(http_close_session,1),"Closes an HTTP session.",swi_man_packages('http.html'),packages,98033).
i(/(http_session_cookie,1),"Generate a random cookie that can be used by a browser to identify the current session.",swi_man_packages('http.html'),packages,99522).
i(/(hooked,0),"These multifile predicates may be used to hook the data storage of this library.",swi_man_packages('http.html'),packages,100004).
i(/(hook,1),"These multifile predicates may be used to hook the data storage of this library.",swi_man_packages('http.html'),packages,100004).
i(section(3,'3.6','sec:httpcors'),"library(http/http_cors): Enable CORS: Cross-Origin Resource Sharing",swi_man_packages('http.html'),packages,100491).
i(/(cors_enable,0),"Emit the HTTP header Access-Control-Allow-Origin using domains from the setting http:cors.",swi_man_packages('http.html'),packages,102576).
i(/(cors_enable,2),"CORS reply to a Preflight OPTIONS request.",swi_man_packages('http.html'),packages,103027).
i(section(3,'3.7','sec:httpauthenticate'),"library(http/http_authenticate): Authenticate HTTP connections using 401 headers",swi_man_packages('http.html'),packages,104083).
i(/(http_authenticate,3),"True if Request contains the information to continue according to Type.",swi_man_packages('http.html'),packages,104631).
i(/(http_authorization_data,2),"Decode the HTTP Authorization header.",swi_man_packages('http.html'),packages,106407).
i(/(http_current_user,3),"True when User is present in the htpasswd file File and Fields provides the additional fields.",swi_man_packages('http.html'),packages,106919).
i(/(http_read_passwd_file,2),"Read a password file.",swi_man_packages('http.html'),packages,107588).
i(/(http_write_passwd_file,2),"Write password data Data to File.",swi_man_packages('http.html'),packages,108165).
i(:(http,/(authenticate,3)),"Plugin for library(http_dispatch) to perform basic HTTP authentication.",swi_man_packages('http.html'),packages,108736).
i(section(3,'3.8','sec:httpdigest'),"library(http/http_digest): HTTP Digest authentication",swi_man_packages('http.html'),packages,109587).
i(//(http_digest_challenge,2),"Generate the content for a 401 WWW-Authenticate: Digest header field.",swi_man_packages('http.html'),packages,112493).
i(/(http_parse_digest_challenge,2),"Parse the value of an HTTP WWW-Authenticate header into a list of Name(Value) terms.",swi_man_packages('http.html'),packages,112748).
i(/(http_digest_response,5),"Formulate a reply to a digest authentication request.",swi_man_packages('http.html'),packages,113052).
i(/(http_digest_password_hash,4),"Compute the password hash for the HTTP password file.",swi_man_packages('http.html'),packages,114307).
i(:(http,/(authenticate,3)),"Plugin for library(http_dispatch) to perform basic HTTP authentication.",swi_man_packages('http.html'),packages,115092).
i(:(http,/(authenticate_client,2)),"This hooks is called by http_open/3 with the following Action value: send_auth_header(+AuthData, +Out, +Options)Called when sending the initial request.",swi_man_packages('http.html'),packages,116091).
i(section(3,'3.9','sec:httpdynworkers'),"library(http/http_dyn_workers): Dynamically schedule HTTP workers.",swi_man_packages('http.html'),packages,117253).
i(:(http,/(schedule_workers,1)),"Called if there is no immediately free worker to handle the incomming request.",swi_man_packages('http.html'),packages,118986).
i(section(3,'3.10','sec:http-custom-error-page'),"Custom Error Pages",swi_man_packages('http.html'),packages,119406).
i(:(http,/(status_page_hook,3)),"TermOrCode is either the first argument of the http_reply exception or the HTTP status code, i.e., the hook is called twice.",swi_man_packages('http.html'),packages,120202).
i(section(3,'3.11','sec:httpopenid'),"library(http/http_openid): OpenID consumer and server library",swi_man_packages('http.html'),packages,121485).
i(/(openid_hook,1),"Call hook on the OpenID management library.",swi_man_packages('http.html'),packages,124249).
i(/(openid_login,1),"Associate the current HTTP session with OpenID.",swi_man_packages('http.html'),packages,125431).
i(/(openid_logout,1),"Remove the association of the current session with any OpenID",swi_man_packages('http.html'),packages,125740).
i(/(openid_logged_in,1),"True if session is associated with OpenID.",swi_man_packages('http.html'),packages,125977).
i(/(openid_user,3),"True if OpenID is a validated OpenID associated with the current session.",swi_man_packages('http.html'),packages,126205).
i(//(openid_login_form,2),"Create the OpenID form.",swi_man_packages('http.html'),packages,128071).
i(/(openid_verify,2),"Handle the initial login form presented to the user by the relying party (consumer).",swi_man_packages('http.html'),packages,129307).
i(/(openid_server,3),"True if OpenIDLogin is the typed id for OpenID verified by Server.",swi_man_packages('http.html'),packages,130924).
i(/(openid_current_url,2),"Find the public URL for Request that we can make available to our identity provider.",swi_man_packages('http.html'),packages,131486).
i(/(openid_current_host,3),"Find current location of the server.",swi_man_packages('http.html'),packages,132058).
i(/(ssl_verify,5),"Accept all certificates.",swi_man_packages('http.html'),packages,132451).
i(/(openid_authenticate,4),"Succeeds if Request comes from the OpenID server and confirms that User is a verified OpenID user.",swi_man_packages('http.html'),packages,132799).
i(/(openid_server,2),"Realise the OpenID server.",swi_man_packages('http.html'),packages,133994).
i(/(openid_grant,1),"Handle the reply from checkid_setup_server/3.",swi_man_packages('http.html'),packages,134204).
i(/(openid_associate,3),"Calls openid_associate/4 as openid_associate(URL, Handle, Assoc, []).",swi_man_packages('http.html'),packages,134624).
i(/(openid_associate,4),"Associate with an open-id server.",swi_man_packages('http.html'),packages,134956).
i(section(3,'3.12','sec:httpparam'),"Get parameters from HTML forms",swi_man_packages('http.html'),packages,135842).
i(/(http_parameters,2),"The predicate is passes the Request as provided to the handler goal by http_wrapper/5 as well as a partially instantiated lists describing the requested parameters and their types.",swi_man_packages('http.html'),packages,136367).
i(/(http_parameters,3),"In addition to http_parameters/2, the following options are defined.",swi_man_packages('http.html'),packages,142060).
i(section(3,'3.13','sec:request'),"Request format",swi_man_packages('http.html'),packages,143466).
i(/(http_read_request,2),"Reads an HTTP request from Stream and unify Request with the parsed request.",swi_man_packages('http.html'),packages,143933).
i(section(4,'3.13.1','sec:http-read-post'),"Handling POST requests",swi_man_packages('http.html'),packages,149080).
i(section(3,'3.14','sec:http-running-server'),"Running the server",swi_man_packages('http.html'),packages,150461).
i(section(4,'3.14.1','sec:http-server-options'),"Common server interface options",swi_man_packages('http.html'),packages,152725).
i(section(4,'3.14.2','sec:mthttpd'),"Multi-threaded Prolog",swi_man_packages('http.html'),packages,153358).
i(/(http_server,2),"Create the server.",swi_man_packages('http.html'),packages,154196).
i(/(http_server_property,2),"True if Property is a property of the HTTP server running at Port.",swi_man_packages('http.html'),packages,158043).
i(/(http_workers,2),"Query or manipulate the number of workers of the server identified by Port.",swi_man_packages('http.html'),packages,158938).
i(/(http_add_worker,2),"Add a new worker to the HTTP server for port Port.",swi_man_packages('http.html'),packages,159806).
i(/(http_stop_server,2),"Stop the HTTP server at Port.",swi_man_packages('http.html'),packages,160320).
i(/(http_current_worker,2),"True if ThreadID is the identifier of a Prolog thread serving Port.",swi_man_packages('http.html'),packages,160748).
i(/(http_spawn,2),"Continue handling this request in a new thread running Goal.",swi_man_packages('http.html'),packages,161120).
i(section(4,'3.14.3','sec:httpunixdaemon'),"library(http/http_unix_daemon): Run SWI-Prolog HTTP server as a Unix system daemon",swi_man_packages('http.html'),packages,163245).
i(/(http_daemon,0),"Start the HTTP server as a daemon process.",swi_man_packages('http.html'),packages,166964).
i(/(http_opt_type,3),"Allow reusing http option processing",swi_man_packages('http.html'),packages,172949).
i(/(http_opt_help,2),"Allow reusing http option processing",swi_man_packages('http.html'),packages,172949).
i(/(http_opt_meta,2),"Allow reusing http option processing",swi_man_packages('http.html'),packages,172949).
i(/(http_daemon,1),"Start the HTTP server as a daemon process.",swi_man_packages('http.html'),packages,173352).
i(/(http_certificate_hook,3),"Hook called before starting the server if the --https option is used.",swi_man_packages('http.html'),packages,173934).
i(/(http_server_hook,1),"Hook that is called to start the HTTP server.",swi_man_packages('http.html'),packages,174457).
i(:(http,/(sni_options,2)),"Hook to provide Server Name Indication (SNI) for TLS servers.",swi_man_packages('http.html'),packages,174841).
i(section(4,'3.14.4','sec:http-inetd'),"From (Unix) inetd",swi_man_packages('http.html'),packages,175474).
i(/(http_server,1),"Initialises and runs http_wrapper/5 in a loop until failure or end-of-file.",swi_man_packages('http.html'),packages,176848).
i(section(4,'3.14.5','sec:http-inetd-mswin'),"MS-Windows",swi_man_packages('http.html'),packages,177965).
i(section(4,'3.14.6','sec:http-server-as-cgi'),"As CGI script",swi_man_packages('http.html'),packages,178209).
i(section(4,'3.14.7','sec:proxy'),"Using a reverse proxy",swi_man_packages('http.html'),packages,178407).
i(section(3,'3.15','sec:http-wrapper'),"The wrapper library",swi_man_packages('http.html'),packages,182069).
i(/(http_wrapper,5),"Handle an HTTP request where In is an input stream from the client, Out is an output stream to the client and Goal defines the goal realising the body.",swi_man_packages('http.html'),packages,182598).
i(:(http,/(request_expansion,2)),"This multifile hook predicate is called just before the goal that produces the body, while the output is already redirected to collect the reply.",swi_man_packages('http.html'),packages,184112).
i(/(http_current_request,1),"Get access to the currently executing request.",swi_man_packages('http.html'),packages,185075).
i(/(http_relative_path,2),"Convert an absolute path (without host, fragment or search) into a path relative to the current page, defined as the path component from the current request (see http_current_request/1).",swi_man_packages('http.html'),packages,185656).
i(section(3,'3.16','sec:httphost'),"library(http/http_host): Obtain public server location",swi_man_packages('http.html'),packages,186340).
i(/(http_public_url,2),"True when URL is an absolute URL for the current request.",swi_man_packages('http.html'),packages,187053).
i(/(http_public_host_url,2),"True when URL is the public URL at which this server can be contacted.",swi_man_packages('http.html'),packages,187405).
i(/(http_public_host,4),"Current global host and port of the HTTP server.",swi_man_packages('http.html'),packages,187836).
i(/(http_current_host,4),"deprecatedUse http_public_host/4 (same semantics)",swi_man_packages('http.html'),packages,189231).
i(section(3,'3.17','sec:httplog'),"library(http/http_log): HTTP Logging module",swi_man_packages('http.html'),packages,189601).
i(/(http_log_stream,1),"True when Stream is a stream to the opened HTTP log file.",swi_man_packages('http.html'),packages,190398).
i(/(http_log_close,1),"If there is a currently open HTTP logfile, close it after adding a term server(Reason, Time).",swi_man_packages('http.html'),packages,191268).
i(/(http_log,2),"Write message from Format and Args to log-stream.",swi_man_packages('http.html'),packages,192005).
i(/(password_field,1),"Multifile predicate that can be defined to hide passwords from the logfile.",swi_man_packages('http.html'),packages,192353).
i(/(nolog,1),"Multifile predicate that can be defined to hide request parameters from the request logfile.",swi_man_packages('http.html'),packages,192611).
i(/(nolog_post_content_type,1),"Multifile hook called with the Content-type header.",swi_man_packages('http.html'),packages,192864).
i(/(post_data_encoded,2),"Encode the POST body for inclusion into the HTTP log file.",swi_man_packages('http.html'),packages,193505).
i(/(http_logrotate,1),"Rotate the available log files.",swi_man_packages('http.html'),packages,194005).
i(/(http_schedule_logrotate,2),"Schedule log rotation based on maintenance broadcasts.",swi_man_packages('http.html'),packages,195592).
i(section(3,'3.18','sec:http-debug'),"Debugging HTTP servers",swi_man_packages('http.html'),packages,196660).
i(section(3,'3.19','sec:httpheader'),"library(http/http_header): Handling HTTP headers",swi_man_packages('http.html'),packages,197428).
i(/(http_read_request,2),"Read an HTTP request-header from FdIn and return the broken-down request fields as +Name(+Value) pairs in a list.",swi_man_packages('http.html'),packages,197859).
i(/(http_read_reply_header,2),"Read the HTTP reply header.",swi_man_packages('http.html'),packages,198276).
i(/(http_reply,2),"Compose a complete HTTP reply from the term Data using additional headers from HdrExtra to the output stream Out.",swi_man_packages('http.html'),packages,198539).
i(/(http_reply,3),"Compose a complete HTTP reply from the term Data using additional headers from HdrExtra to the output stream Out.",swi_man_packages('http.html'),packages,198539).
i(/(http_reply,4),"Compose a complete HTTP reply from the term Data using additional headers from HdrExtra to the output stream Out.",swi_man_packages('http.html'),packages,198539).
i(/(http_reply,5),"Compose a complete HTTP reply from the term Data using additional headers from HdrExtra to the output stream Out.",swi_man_packages('http.html'),packages,198539).
i(/(http_reply,6),"Compose a complete HTTP reply from the term Data using additional headers from HdrExtra to the output stream Out.",swi_man_packages('http.html'),packages,198539).
i(/(http_status_reply,4),"Emit HTML non-200 status reports.",swi_man_packages('http.html'),packages,201607).
i(/(http_status_reply,5),"Emit HTML non-200 status reports.",swi_man_packages('http.html'),packages,201607).
i(/(http_status_reply,6),"Emit HTML non-200 status reports.",swi_man_packages('http.html'),packages,201607).
i(:(http,/(serialize_reply,2)),"Multifile hook to serialize the result of http:status_reply/3 into a term body(Type, Encoding, Content)In this term, Type is the media type, Encoding is the required wire encoding and Content a string representing the content.",swi_man_packages('http.html'),packages,203609).
i(/(http_join_headers,3),"Append headers from Default to Header if they are not already part of it.",swi_man_packages('http.html'),packages,204224).
i(/(http_update_encoding,3),"Allow for rewrite of the header, adjusting the encoding.",swi_man_packages('http.html'),packages,204475).
i(:(http,/(mime_type_encoding,2)),"Encoding is the (default) character encoding for MimeType.",swi_man_packages('http.html'),packages,204967).
i(/(http_update_connection,4),"Merge keep-alive information from Request and CGIHeader into Header.",swi_man_packages('http.html'),packages,205612).
i(/(http_update_transfer,4),"Decide on the transfer encoding from the Request and the CGI header.",swi_man_packages('http.html'),packages,205898).
i(/(http_post_data,3),"Send data on behalf on an HTTP POST request.",swi_man_packages('http.html'),packages,206755).
i(/(http_reply_header,3),"Create a reply header using reply_header//3 and send it to Stream.",swi_man_packages('http.html'),packages,210947).
i(/(http_parse_header_value,3),"Translate Value in a meaningful Prolog term.",swi_man_packages('http.html'),packages,211240).
i(/(http_timestamp,2),"Generate a description of a Time in HTTP format (RFC1123)",swi_man_packages('http.html'),packages,213379).
i(/(http_read_header,2),"Read Name: Value lines from FD until an empty line is encountered.",swi_man_packages('http.html'),packages,213635).
i(/(http_parse_header,2),"Header is a list of Name(Value)-terms representing the structure of the HTTP header in Text.",swi_man_packages('http.html'),packages,214037).
i(:(http,//(/,1)),"HTML-rule that emits the location of the HTTP server.",swi_man_packages('http.html'),packages,214461).
i(:(http,/(status_page,3)),"Hook called by http_status_reply/4 and http_status_reply/5 that allows for emitting custom error pages for the following HTTP page types: 201 - created(Location)301 - moved(To)302 - moved_temporary(To)303 - see_other(To)400 - bad_request(ErrorTerm)401 - authorise(AuthMethod)403 - forbidden(URL)404 - not_found(URL)405 - method_not_allowed(Method,URL)406 - not_acceptable(Why)500 - server_error(ErrorTerm)503 - unavailable(Why) The hook is tried twice, first using the status term, e.g., not_found(URL) and than with the code, e.g.",swi_man_packages('http.html'),packages,214866).
i(section(3,'3.20','sec:htmlwrite'),"The library(http/html_write) library",swi_man_packages('http.html'),packages,216640).
i(//(html,1),"The DCG non-terminal html//1 is the main predicate of this library.",swi_man_packages('http.html'),packages,217828).
i(//(page,2),"The DCG non-terminal page//2 generated a complete page, including the SGML DOCTYPE declaration.",swi_man_packages('http.html'),packages,223672).
i(//(page,1),"This version of the page/[1,2] only gives you the SGML DOCTYPE and the HTML element.",swi_man_packages('http.html'),packages,225023).
i(//(html_begin,1),"Just open the given element.",swi_man_packages('http.html'),packages,225398).
i(//(html_end,1),"End an element.",swi_man_packages('http.html'),packages,226485).
i(section(4,'3.20.1','sec:html-write'),"Emitting HTML documents",swi_man_packages('http.html'),packages,226735).
i(/(reply_html_page,2),"Same as reply_html_page(default, Head, Body).",swi_man_packages('http.html'),packages,227426).
i(/(reply_html_page,3),"Writes an HTML page preceded by an HTTP header as required by library(http_wrapper) (CGI-style).",swi_man_packages('http.html'),packages,227624).
i(/(print_html,1),"Print the token list to the Prolog current output stream.",swi_man_packages('http.html'),packages,229191).
i(/(print_html,2),"Print the token list to the specified output stream",swi_man_packages('http.html'),packages,229370).
i(/(html_print_length,2),"When calling html_print/[1,2] on List, Length characters will be produced.",swi_man_packages('http.html'),packages,229553).
i(section(4,'3.20.2','sec:html-post'),"Repositioning HTML for CSS and javascript links",swi_man_packages('http.html'),packages,229973).
i(//(html_post,2),"Reposition HTML to the receiving Id.",swi_man_packages('http.html'),packages,230889).
i(//(html_receive,1),"Receive posted HTML tokens.",swi_man_packages('http.html'),packages,232309).
i(//(html_receive,2),"This extended version of html_receive//1 causes Handler to be called to process all messages posted to the channal at the time output is generated.",swi_man_packages('http.html'),packages,233045).
i(//(xhtml_ns,2),"Demand an xmlns:id=Value in the outer html tag.",swi_man_packages('http.html'),packages,234737).
i(section(4,'3.20.3','sec:html-write-rules'),"Adding rules for html//1",swi_man_packages('http.html'),packages,236023).
i(//('html_write:expand',1),"Hook to add additional translation rules for html//1.",swi_man_packages('http.html'),packages,236517).
i(//(html_quoted,1),"Emit the text in Atom, inserting entity-references for the SGML special characters <&>.",swi_man_packages('http.html'),packages,236722).
i(//(html_quoted_attribute,1),"Emit the text in Atom suitable for use as an SGML attribute, inserting entity-references for the SGML special characters <&>\".",swi_man_packages('http.html'),packages,236984).
i(section(4,'3.20.4','sec:htmllayout'),"Generating layout",swi_man_packages('http.html'),packages,237316).
i(/('html_write:layout',3),"Specify the layout conventions for the element Tag, which is a lowercase atom.",swi_man_packages('http.html'),packages,237827).
i(section(4,'3.20.5','sec:html-write-examples'),"Examples for using the HTML write library",swi_man_packages('http.html'),packages,238941).
i(section(4,'3.20.6','sec:html-write-remarks'),"Remarks on the library(http/html_write) library",swi_man_packages('http.html'),packages,241366).
i(section(3,'3.21','sec:jswrite'),"library(http/js_write): Utilities for including JavaScript",swi_man_packages('http.html'),packages,242816).
i(//(js_script,1),"Generate a JavaScript script element with the given content.",swi_man_packages('http.html'),packages,243774).
i(/(javascript,4),"Quasi quotation parser for JavaScript that allows for embedding Prolog variables to substitude identifiers in the JavaScript snippet.",swi_man_packages('http.html'),packages,244022).
i(//(js_call,1),"Emit a call to a Javascript function.",swi_man_packages('http.html'),packages,245520).
i(//(js_new,2),"Emit a call to a Javascript object declaration.",swi_man_packages('http.html'),packages,246110).
i(//(js_arg_list,1),"Write javascript (function) arguments.",swi_man_packages('http.html'),packages,246418).
i(//(js_expression,1),"Emit a single JSON argument.",swi_man_packages('http.html'),packages,246770).
i(//(js_arg,1),"Same as js_expression//1, but fails if Expression is invalid, where js_expression//1 raises an error.",swi_man_packages('http.html'),packages,248429).
i(section(3,'3.22','sec:httppath'),"library(http/http_path): Abstract specification of HTTP server locations",swi_man_packages('http.html'),packages,248971).
i(:(http,/(location,3)),"Multifile hook used to specify new HTTP locations.",swi_man_packages('http.html'),packages,251000).
i(/(http_absolute_uri,2),"URI is the absolute (i.e., starting with http://) URI for the abstract specification Spec.",swi_man_packages('http.html'),packages,252256).
i(/(http_absolute_location,3),"Path is the HTTP location for the abstract specification Spec.",swi_man_packages('http.html'),packages,252708).
i(/(http_clean_location_cache,0),"HTTP locations resolved through http_absolute_location/3 are cached.",swi_man_packages('http.html'),packages,253406).
i(section(3,'3.23','sec:htmlhead'),"library(http/html_head): Automatic inclusion of CSS and scripts links",swi_man_packages('http.html'),packages,253823).
i(section(4,'3.23.1','sec:html-resource-ordering'),"About resource ordering",swi_man_packages('http.html'),packages,255475).
i(section(4,'3.23.2','sec:html-resource-debugging'),"Debugging dependencies",swi_man_packages('http.html'),packages,256333).
i(section(4,'3.23.3','sec:html-resource-predicates'),"Predicates",swi_man_packages('http.html'),packages,256813).
i(/(html_resource,2),"Register an HTML head resource.",swi_man_packages('http.html'),packages,257022).
i(/(html_current_resource,1),"True when About is a currently known resource.",swi_man_packages('http.html'),packages,259325).
i(//(html_requires,1),"Include ResourceOrList and all dependencies derived from it and add them to the HTML head using html_post/2.",swi_man_packages('http.html'),packages,259565).
i(//(html_insert_resource,1),"Actually include HTML head resources.",swi_man_packages('http.html'),packages,260064).
i(//(mime_include,2),"Hook called to include a link to an HTML resource of type Mime into the HTML head.",swi_man_packages('http.html'),packages,260811).
i(section(3,'3.24','sec:httppwp'),"library(http/http_pwp): Serve PWP pages through the HTTP server",swi_man_packages('http.html'),packages,261628).
i(/(pwp_handler,2),"Handle PWP files.",swi_man_packages('http.html'),packages,263025).
i(/(reply_pwp_page,3),"Reply a PWP file.",swi_man_packages('http.html'),packages,265405).
i(section(2,'4','sec:http-ipv6'),"HTTP and IPv6",swi_man_packages('http.html'),packages,268140).
i(section(2,'5','sec:transfer'),"Transfer encodings",swi_man_packages('http.html'),packages,269694).
i(section(3,'5.1','sec:http-chunked'),"The library(http/http_chunked) library",swi_man_packages('http.html'),packages,271160).
i(/(http_chunked_open,3),"Create a stream to realise HTTP chunked encoding or decoding.",swi_man_packages('http.html'),packages,271378).
i(section(2,'6','sec:websocket'),"library(http/websocket): WebSocket support",swi_man_packages('http.html'),packages,271835).
i(/(http_open_websocket,3),"Establish a client websocket connection.",swi_man_packages('http.html'),packages,273557).
i(/(http_upgrade_to_websocket,3),"Create a websocket connection running call(Goal, WebSocket), where WebSocket is a socket-pair.",swi_man_packages('http.html'),packages,275365).
i(/(ws_send,2),"Send a message over a websocket.",swi_man_packages('http.html'),packages,277401).
i(/(ws_receive,2),"Receive the next message from WebSocket.",swi_man_packages('http.html'),packages,280102).
i(/(ws_receive,3),"Receive the next message from WebSocket.",swi_man_packages('http.html'),packages,280102).
i(/(ws_close,3),"Close a WebSocket connection by sending a close message if this was not already sent and wait for the close reply.",swi_man_packages('http.html'),packages,282515).
i(/(ws_open,3),"Turn a raw TCP/IP (or any other binary stream) into a websocket stream.",swi_man_packages('http.html'),packages,283374).
i(/(ws_property,2),"True if Property is a property WebSocket.",swi_man_packages('http.html'),packages,285101).
i(/(ws_mask,1),"Produce a good random number of the mask of a client message.",swi_man_packages('http.html'),packages,285639).
i(section(2,'7','sec:hub'),"library(http/hub): Manage a hub for websockets",swi_man_packages('http.html'),packages,285827).
i(/(hub_create,3),"Create a new hub.",swi_man_packages('http.html'),packages,288042).
i(/(current_hub,2),"True when there exists a hub Hub with Name.",swi_man_packages('http.html'),packages,289152).
i(/(hub_add,3),"Add a WebSocket to the hub.",swi_man_packages('http.html'),packages,289386).
i(/(hub_member,2),"True when Id is a member of the hub HubName.",swi_man_packages('http.html'),packages,289704).
i(/(hub_send,2),"Send message to the indicated ClientId.",swi_man_packages('http.html'),packages,289939).
i(/(hub_broadcast,2),"Send Message to all websockets associated with Hub for which call(Condition, Id) succeeds.",swi_man_packages('http.html'),packages,290419).
i(/(hub_broadcast,3),"Send Message to all websockets associated with Hub for which call(Condition, Id) succeeds.",swi_man_packages('http.html'),packages,290419).
i(section(2,'8','sec:jsonsupport'),"Supporting JSON",swi_man_packages('http.html'),packages,291147).
i(section(3,'8.1','sec:json'),"library(http/json): Reading and writing JSON serialization",swi_man_packages('http.html'),packages,293681).
i(/(atom_json_term,3),"Convert between textual representation and a JSON term.",swi_man_packages('http.html'),packages,295149).
i(/(json_read,2),"Read next JSON value from Stream into a Prolog term.",swi_man_packages('http.html'),packages,295699).
i(/(json_read,3),"Read next JSON value from Stream into a Prolog term.",swi_man_packages('http.html'),packages,295699).
i(/(json_write,2),"Write a JSON term to Stream.",swi_man_packages('http.html'),packages,298822).
i(/(json_write,3),"Write a JSON term to Stream.",swi_man_packages('http.html'),packages,298822).
i(/(json_write_hook,4),"Hook that can be used to emit a JSON representation for Term to Stream.",swi_man_packages('http.html'),packages,301747).
i(/(json_dict_pairs,2),"This hook may be used to order the keys of an object.",swi_man_packages('http.html'),packages,302786).
i(/(is_json_term,1),"True if Term is a json term.",swi_man_packages('http.html'),packages,303136).
i(/(is_json_term,2),"True if Term is a json term.",swi_man_packages('http.html'),packages,303136).
i(/(json_read_dict,2),"Read a JSON object, returning objects as a dicts.",swi_man_packages('http.html'),packages,303702).
i(/(json_read_dict,3),"Read a JSON object, returning objects as a dicts.",swi_man_packages('http.html'),packages,303702).
i(/(json_write_dict,2),"Write a JSON term, represented using dicts.",swi_man_packages('http.html'),packages,306148).
i(/(json_write_dict,3),"Write a JSON term, represented using dicts.",swi_man_packages('http.html'),packages,306148).
i(/(atom_json_dict,3),"Convert between textual representation and a JSON term represented as a dict.",swi_man_packages('http.html'),packages,306670).
i(section(3,'8.2','sec:jsonconvert'),"library(http/json_convert): Convert between JSON terms and Prolog application terms",swi_man_packages('http.html'),packages,307436).
i(/(current_json_object,3),"Multifile predicate computed from the json_object/1 declarations.",swi_man_packages('http.html'),packages,310904).
i(/(json_object,1),"Declare a JSON object.",swi_man_packages('http.html'),packages,311498).
i(/(prolog_bool_to_json,2),"JSON is the JSON boolean for Prolog.",swi_man_packages('http.html'),packages,312712).
i(/(prolog_to_json,2),"Translate a Prolog application Term into a JSON object term.",swi_man_packages('http.html'),packages,313336).
i(/(json_to_prolog,2),"Translate a JSON term into an application term.",swi_man_packages('http.html'),packages,314210).
i(section(3,'8.3','sec:httpjson'),"library(http/http_json): HTTP JSON Plugin module",swi_man_packages('http.html'),packages,315066).
i(/('http_client:http_convert_data',4),"Hook implementation that supports reading JSON documents.",swi_man_packages('http.html'),packages,318423).
i(/(is_json_content_type,1),"True if ContentType is a header value (either parsed or as atom/string) that denotes a JSON value.",swi_man_packages('http.html'),packages,319058).
i(/(json_type,1),"True if MediaType is a JSON media type.",swi_man_packages('http.html'),packages,319356).
i(:(http,/(post_data_hook,3)),"Hook implementation that allows http_post_data/3 posting JSON objects using one of the forms below.",swi_man_packages('http.html'),packages,319910).
i(/(http_read_json,2),"Extract JSON data posted to this HTTP request.",swi_man_packages('http.html'),packages,320985).
i(/(http_read_json,3),"Extract JSON data posted to this HTTP request.",swi_man_packages('http.html'),packages,320985).
i(/(http_read_json_dict,2),"Similar to http_read_json/2,3, but by default uses the version 7 extended datatypes.",swi_man_packages('http.html'),packages,322171).
i(/(http_read_json_dict,3),"Similar to http_read_json/2,3, but by default uses the version 7 extended datatypes.",swi_man_packages('http.html'),packages,322171).
i(/(reply_json,1),"Formulate a JSON HTTP reply.",swi_man_packages('http.html'),packages,322656).
i(/(reply_json,2),"Formulate a JSON HTTP reply.",swi_man_packages('http.html'),packages,322656).
i(/(reply_json_dict,1),"As reply_json/1 and reply_json/2, but assumes the new dict based data representation.",swi_man_packages('http.html'),packages,323987).
i(/(reply_json_dict,2),"As reply_json/1 and reply_json/2, but assumes the new dict based data representation.",swi_man_packages('http.html'),packages,323987).
i(section(2,'9','sec:http-mime'),"MIME support",swi_man_packages('http.html'),packages,324744).
i(section(3,'9.1','sec:mimepack'),"library(http/mimepack): Create a MIME message",swi_man_packages('http.html'),packages,324897).
i(/(mime_pack,3),"Pack a number of inputs into a MIME package using a specified or generated boundary.",swi_man_packages('http.html'),packages,325628).
i(section(2,'10','sec:http-security'),"Security",swi_man_packages('http.html'),packages,329198).
i(section(2,'11','sec:http-tips-and-tricks'),"Tips and tricks",swi_man_packages('http.html'),packages,332218).
i(section(2,'12','sec:http-status'),"Status",swi_man_packages('http.html'),packages,333504).
i(section(0,'0','packages/odbc.html'),"SWI-Prolog ODBC Interface",swi_man_packages('odbc.html'),packages,2777).
i(section(2,'1','sec:odbc-intro'),"Introduction",swi_man_packages('odbc.html'),packages,6994).
i(section(2,'2','sec:odbc'),"The ODBC layer",swi_man_packages('odbc.html'),packages,8138).
i(section(3,'2.1','sec:odbc-global-config'),"Global configuration",swi_man_packages('odbc.html'),packages,8283).
i(/(odbc_set_option,1),"Set global properties for the environment.",swi_man_packages('odbc.html'),packages,8482).
i(section(3,'2.2','sec:odbc-connections'),"Connection management",swi_man_packages('odbc.html'),packages,9055).
i(/(odbc_connect,3),"Create a new ODBC connection to data-source DSN and return a handle to this connection in Connection.",swi_man_packages('odbc.html'),packages,9417).
i(/(odbc_driver_connect,3),"Connects to a database using SQLDriverConnect().",swi_man_packages('odbc.html'),packages,13012).
i(/(odbc_disconnect,1),"Close the given Connection.",swi_man_packages('odbc.html'),packages,13831).
i(/(odbc_current_connection,2),"Enumerate the existing ODBC connections.",swi_man_packages('odbc.html'),packages,14133).
i(/(odbc_set_connection,2),"Set options on an existing connection.",swi_man_packages('odbc.html'),packages,14334).
i(/(odbc_get_connection,2),"Query for properties of the connection.",swi_man_packages('odbc.html'),packages,18533).
i(/(odbc_data_source,2),"Query the defined data sources.",swi_man_packages('odbc.html'),packages,20337).
i(section(3,'2.3','sec:odbc-query'),"Running SQL queries",swi_man_packages('odbc.html'),packages,20996).
i(section(4,'2.3.1','sec:odbc-one-time-query'),"One-time invocation",swi_man_packages('odbc.html'),packages,21657).
i(/(odbc_query,3),"Same as odbc_query/4 using [] for Options.",swi_man_packages('odbc.html'),packages,21861).
i(/(odbc_query,4),"Fire an SQL query on the database represented by Connection.",swi_man_packages('odbc.html'),packages,22162).
i(/(odbc_query,2),"As odbc_query/3, but used for SQL-statements that should not return result-rows (i.e.",swi_man_packages('odbc.html'),packages,28668).
i(section(4,'2.3.2','sec:odbc-param-query'),"Parameterised queries",swi_man_packages('odbc.html'),packages,29094).
i(/(odbc_prepare,4),"As odbc_prepare/5 using [] for Options.",swi_man_packages('odbc.html'),packages,29719).
i(/(odbc_prepare,5),"Create a statement from the given SQL (which may be a format specification as described with odbc_query/3) statement that normally has one or more parameter-indicators (?",swi_man_packages('odbc.html'),packages,30035).
i(/(odbc_execute,3),"Execute a statement prepared with odbc_prepare/4 with the given ParameterValues and return the rows or number of affected rows as odbc_query/4.",swi_man_packages('odbc.html'),packages,33092).
i(/(odbc_execute,2),"Like odbc_query/2, this predicate is meant to execute simple SQL statements without interest in the result.",swi_man_packages('odbc.html'),packages,34663).
i(/(odbc_cancel_thread,1),"If the thread ThreadId is currently blocked inside odbc_execute/3 then interrupt it.",swi_man_packages('odbc.html'),packages,34993).
i(/(odbc_free_statement,1),"Destroy a statement prepared with odbc_prepare/4.",swi_man_packages('odbc.html'),packages,35657).
i(section(4,'2.3.3','sec:sqlfetch'),"Fetching rows explicitely",swi_man_packages('odbc.html'),packages,36157).
i(/(odbc_fetch,3),"Fetch a row from the result-set of Statement.",swi_man_packages('odbc.html'),packages,37176).
i(/(odbc_close_statement,1),"Closes the given statement (without freeing it).",swi_man_packages('odbc.html'),packages,39968).
i(section(4,'2.3.4','sec:sqlresultsets'),"Fetching data from multiple result sets",swi_man_packages('odbc.html'),packages,40325).
i(/(odbc_next_result_set,1),"Succeeds if there is another result set, and positions the cursor at the first row of the new result set.",swi_man_packages('odbc.html'),packages,41138).
i(section(3,'2.4','sec:sqltrans'),"Transaction management",swi_man_packages('odbc.html'),packages,42193).
i(/(odbc_end_transaction,2),"End the currently open transaction if there is one.",swi_man_packages('odbc.html'),packages,42883).
i(section(3,'2.5','sec:odbc-db-dictionary'),"Accessing the database dictionary",swi_man_packages('odbc.html'),packages,43346).
i(/(odbc_current_table,2),"Return on backtracking the names of all tables in the database identified by the connection.",swi_man_packages('odbc.html'),packages,43807).
i(/(odbc_current_table,3),"Enumerate properties of the tables.",swi_man_packages('odbc.html'),packages,44053).
i(/(odbc_table_column,3),"On backtracking, enumerate all columns in all tables.",swi_man_packages('odbc.html'),packages,44663).
i(/(odbc_table_column,4),"Provides access to the properties of the table as defined by the ODBC call SQLColumns().",swi_man_packages('odbc.html'),packages,44876).
i(/(odbc_type,3),"Query the types supported by the data source.",swi_man_packages('odbc.html'),packages,46198).
i(/(odbc_table_primary_key,3),"True when Column is a primary key in Table.",swi_man_packages('odbc.html'),packages,48807).
i(/(odbc_table_foreign_key,5),"True when PkTable/PkCol FkTable/FkCol is a foreign keys column.",swi_man_packages('odbc.html'),packages,49042).
i(section(3,'2.6','sec:odbcinfo'),"Getting more information",swi_man_packages('odbc.html'),packages,49350).
i(/(odbc_statistics,1),"Get statistical data on the ODBC interface.",swi_man_packages('odbc.html'),packages,49533).
i(/(odbc_debug,1),"Set the verbosity-level to Level.",swi_man_packages('odbc.html'),packages,50371).
i(section(3,'2.7','sec:sqltypes'),"Representing SQL data in Prolog",swi_man_packages('odbc.html'),packages,50620).
i(section(3,'2.8','sec:odbc-reports'),"Errors and warnings",swi_man_packages('odbc.html'),packages,54023).
i(section(4,'2.8.1','sec:successwithinfo'),"ODBC messages:‘Success with info'",swi_man_packages('odbc.html'),packages,54344).
i(section(4,'2.8.2','sec:sqlerror'),"ODBC errors",swi_man_packages('odbc.html'),packages,55184).
i(section(3,'2.9','sec:odbc-implementations'),"ODBC implementations",swi_man_packages('odbc.html'),packages,55795).
i(section(4,'2.9.1','sec:odbc-unix'),"Using unixODBC",swi_man_packages('odbc.html'),packages,56476).
i(section(4,'2.9.2','sec:odbc-microsoft'),"Using Microsoft ODBC",swi_man_packages('odbc.html'),packages,56871).
i(section(3,'2.10','sec:odbc-issues'),"Remaining issues",swi_man_packages('odbc.html'),packages,57152).
i(section(2,'3','sec:odbc-acknowledgments'),"Acknowledgments",swi_man_packages('odbc.html'),packages,57847).
i(section(0,'0','packages/table.html'),"Managing external tables for SWI-Prolog",swi_man_packages('table.html'),packages,2790).
i(section(2,'1','sec:table-intro'),"Introduction",swi_man_packages('table.html'),packages,5785).
i(section(2,'2','sec:table-external'),"Managing external tables",swi_man_packages('table.html'),packages,6831).
i(section(3,'2.1','sec:table-create-destroy'),"Creating and destroying tables",swi_man_packages('table.html'),packages,7006).
i(/(new_table,4),"Create a description of a new table, stored in File.",swi_man_packages('table.html'),packages,7339).
i(/(open_table,1),"Open the table.",swi_man_packages('table.html'),packages,13239).
i(/(close_table,1),"Close the file and other system resources, but do not remove the description of the table, so it can be re-opened later.",swi_man_packages('table.html'),packages,13713).
i(/(free_table,1),"Close and remove the handle.",swi_man_packages('table.html'),packages,13960).
i(section(3,'2.2','sec:table-access'),"Accessing a table",swi_man_packages('table.html'),packages,14241).
i(section(4,'2.2.1','sec:table-find-record-location'),"Finding record locations in a table",swi_man_packages('table.html'),packages,14478).
i(/(get_table_attribute,3),"Fetch attributes of the table.",swi_man_packages('table.html'),packages,14910).
i(/(table_window,3),"If only part of the file represents the table, this call may be used to define a window on the file.",swi_man_packages('table.html'),packages,16205).
i(/(table_start_of_record,4),"Enumerates (on backtracking) the start of records in the table in the region [From, To).",swi_man_packages('table.html'),packages,16646).
i(/(table_previous_record,3),"If Here is the start of a record, find the start of the record before it.",swi_man_packages('table.html'),packages,17065).
i(section(4,'2.2.2','sec:table-read-record'),"Reading records",swi_man_packages('table.html'),packages,17434).
i(/(read_table_record,4),"Read a record from the table.",swi_man_packages('table.html'),packages,17962).
i(/(read_table_fields,4),"As read_table_record/4, but Fields is a list of terms +Name(-Value), and the Values will be unified with the values of the specified field.",swi_man_packages('table.html'),packages,18823).
i(/(read_table_record_data,4),"Similar to read_table_record/4, but unifies record with a Prolog string containing the data of the record unparsed.",swi_man_packages('table.html'),packages,19254).
i(section(4,'2.2.3','sec:table-search'),"Searching the table",swi_man_packages('table.html'),packages,19722).
i(/(in_table,3),"Searches the table for records matching Fields.",swi_man_packages('table.html'),packages,19912).
i(section(4,'2.2.4','sec:table-misc'),"Miscellaneous",swi_man_packages('table.html'),packages,23932).
i(/(table_version,2),"Unify Version with an atom identifying the version of this package, and CompileDate with the date this package was compiled.",swi_man_packages('table.html'),packages,24111).
i(section(2,'3','sec:table-ordering'),"Flexible ordering and equivalence based on character table",swi_man_packages('table.html'),packages,24416).
i(/(new_order_table,2),"Create a new, or replace the order-table with the given name (an atom).",swi_man_packages('table.html'),packages,26341).
i(/(order_table_mapping,3),"Read the current mapping.",swi_man_packages('table.html'),packages,27573).
i(/(compare_strings,4),"Compare two strings using the named Table.",swi_man_packages('table.html'),packages,27869).
i(/(prefix_string,3),"Succeeds if Prefix is a prefix of String using the named Table.",swi_man_packages('table.html'),packages,28240).
i(/(prefix_string,4),"Succeeds if Prefix is a prefix of String using the named Table, and Rest is unified with the remainder of String that is not matched.",swi_man_packages('table.html'),packages,28486).
i(/(sub_string,3),"Succeeds if Sub is a substring of String using the named Table.",swi_man_packages('table.html'),packages,29056).
i(section(2,'4','sec:example'),"Example: accessing the Unix passwd file",swi_man_packages('table.html'),packages,29302).