doc support
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/** @defgroup Apply Apply Macros
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This library provides a SWI-compatible set of utilities for applying a
|
||||
|
@@ -5,7 +5,7 @@
|
||||
% Note : the keys should be bound, the associated values need not be.
|
||||
|
||||
/** @defgroup Association_Lists Association Lists
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following association list manipulation predicates are available
|
||||
|
@@ -17,11 +17,12 @@
|
||||
|
||||
:- module(attributes, [op(1150, fx, attribute)]).
|
||||
|
||||
%% @{
|
||||
|
||||
/** @defgroup Old_Style_Attribute_Declarations SICStus Prolog style Attribute Declarations
|
||||
@ingroup Attributed_Variables
|
||||
@{
|
||||
|
||||
/**
|
||||
@defgroup Old_Style_Attribute_Declarations SICStus Prolog style Attribute Declarations
|
||||
@ingroup Attributed_Variables
|
||||
|
||||
Old style attribute declarations are activated through loading the
|
||||
library <tt>atts</tt> . The command
|
||||
|
||||
@@ -50,12 +51,17 @@ variable. Unification will resume after this call.
|
||||
<tt>project_attributes/2</tt> is used from a set of variables into a set of
|
||||
constraints or goals. One application of <tt>project_attributes/2</tt> is in
|
||||
the top-level, where it is used to output the set of
|
||||
floundered constraints at the end of a query.
|
||||
floundered constraints at the end of a query.
|
||||
*/
|
||||
|
||||
%% @}
|
||||
|
||||
|
||||
%% @{
|
||||
|
||||
/** @defgroup Attribute_Declarations Attribute Declarations
|
||||
@ingroup Old_Style_Attribute_Declarations
|
||||
@{
|
||||
|
||||
|
||||
Attributes are compound terms associated with a variable. Each attribute
|
||||
has a <em>name</em> which is <em>private</em> to the module in which the
|
||||
attribute was defined. Variables may have at most one attribute with a
|
||||
@@ -498,5 +504,5 @@ do_verify_attributes([_|Mods], AttVar, Binding, Goals) :-
|
||||
do_verify_attributes(Mods, AttVar, Binding, Goals).
|
||||
|
||||
/**
|
||||
@}
|
||||
@}
|
||||
*/
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
|
||||
/** @defgroup AVL_Trees AVL Trees
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
AVL trees are balanced search binary trees. They are named after their
|
||||
|
@@ -39,14 +39,14 @@ It relies on dynamic array code.
|
||||
|
||||
array_default_size(2048).
|
||||
|
||||
/** is_b_hash( +Hash )
|
||||
/** @pred is_b_hash( +Hash )
|
||||
|
||||
Term _Hash_ is a hash table.
|
||||
*/
|
||||
is_b_hash(V) :- var(V), !, fail.
|
||||
is_b_hash(hash(_,_,_,_,_)).
|
||||
|
||||
/** b_hash_new( -NewHash )
|
||||
/** @pred b_hash_new( -NewHash )
|
||||
|
||||
Create a empty hash table _NewHash_, with size 2048 entries.
|
||||
*/
|
||||
@@ -56,7 +56,7 @@ b_hash_new(hash(Keys, Vals, Size, N, _, _)) :-
|
||||
array(Vals, Size),
|
||||
create_mutable(0, N).
|
||||
|
||||
/** b_hash_new( -_NewHash_, +_Size_ )
|
||||
/** @pred b_hash_new( -_NewHash_, +_Size_ )
|
||||
|
||||
Create a empty hash table, with size _Size_ entries.
|
||||
*/
|
||||
@@ -65,7 +65,7 @@ b_hash_new(hash(Keys, Vals, Size, N, _, _), Size) :-
|
||||
array(Vals, Size),
|
||||
create_mutable(0, N).
|
||||
|
||||
/** b_hash_new( -_NewHash_, +_Size_, :_Hash_, :_Cmp_ )
|
||||
/** @pred b_hash_new( -_NewHash_, +_Size_, :_Hash_, :_Cmp_ )
|
||||
|
||||
Create a empty hash table, with size _Size_ entries.
|
||||
_Hash_ defines a partition function, and _Cmp_ defined a comparison function.
|
||||
@@ -75,13 +75,15 @@ b_hash_new(hash(Keys,Vals, Size, N, HashF, CmpF), Size, HashF, CmpF) :-
|
||||
array(Vals, Size),
|
||||
create_mutable(0, N).
|
||||
|
||||
/** b_hash_size( +_Hash_, -_Size_ )
|
||||
/**
|
||||
@pred b_hash_size( +_Hash_, -_Size_ )
|
||||
|
||||
_Size_ unifies with the size of the hash table _Hash_.
|
||||
*/
|
||||
b_hash_size(hash(_, _, Size, _, _, _), Size).
|
||||
|
||||
/** b_hash_size_lookup( +_Key_, ?_Val_, +_Hash_ )
|
||||
/**
|
||||
@pred b_hash_lookup( +_Key_, ?_Val_, +_Hash_ )
|
||||
|
||||
Search the ground term _Key_ in table _Hash_ and unify _Val_ with the associated entry.
|
||||
*/
|
||||
@@ -103,7 +105,8 @@ fetch_key(Keys, Index, Size, Key, CmpF, ActualIndex) :-
|
||||
fetch_key(Keys, I1, Size, Key, CmpF, ActualIndex)
|
||||
).
|
||||
|
||||
/** b_hash_update( +_Key_, +_Hash_, +NewVal )
|
||||
/**
|
||||
@pred b_hash_update( +_Key_, +_Hash_, +NewVal )
|
||||
|
||||
Update to the value associated with the ground term _Key_ in table _Hash_ to _NewVal_.
|
||||
*/
|
||||
@@ -114,7 +117,8 @@ b_hash_update(Hash, Key, NewVal):-
|
||||
array_element(Vals, ActualIndex, Mutable),
|
||||
update_mutable(NewVal, Mutable).
|
||||
|
||||
/** b_hash_update( +_Key_, -_OldVal_, +_Hash_, +NewVal )
|
||||
/**
|
||||
@pred b_hash_update( +_Key_, -_OldVal_, +_Hash_, +NewVal )
|
||||
|
||||
Update to the value associated with the ground term _Key_ in table _Hash_ to _NewVal_, and unify _OldVal_ with the current value.
|
||||
*/
|
||||
@@ -153,7 +157,8 @@ find_or_insert(Keys, Index, Size, N, CmpF, Vals, Key, NewVal, Hash, NewHash) :-
|
||||
find_or_insert(Keys, I1, Size, N, CmpF, Vals, Key, NewVal, Hash, NewHash)
|
||||
).
|
||||
|
||||
/** b_hash_insert_new(+_Hash_, +_Key_, _Val_, +_NewHash_ )
|
||||
/**
|
||||
@pred b_hash_insert_new(+_Hash_, +_Key_, _Val_, +_NewHash_ )
|
||||
|
||||
Insert the term _Key_-_Val_ in table _Hash_ and unify _NewHash_ with the result. If ground term _Key_ exists, fail.
|
||||
*/
|
||||
@@ -259,7 +264,8 @@ cmp_f(F, A, B) :-
|
||||
cmp_f(F, A, B) :-
|
||||
call(F, A, B).
|
||||
|
||||
/** b_hash_to_list(+_Hash_, -_KeyValList_ )
|
||||
/**
|
||||
@pred b_hash_to_list(+_Hash_, -_KeyValList_ )
|
||||
|
||||
The term _KeyValList_ unifies with a list containing all terms _Key_-_Val_ in the hash table.
|
||||
*/
|
||||
@@ -268,7 +274,8 @@ b_hash_to_list(hash(Keys, Vals, _, _, _, _), LKeyVals) :-
|
||||
Vals =.. (_.LVs),
|
||||
mklistpairs(LKs, LVs, LKeyVals).
|
||||
|
||||
/** b_key_to_list(+_Hash_, -_KeyList_ )
|
||||
/**
|
||||
@pred b_key_to_list(+_Hash_, -_KeyList_ )
|
||||
|
||||
The term _KeyList_ unifies with a list containing all keys in the hash table.
|
||||
*/
|
||||
@@ -276,7 +283,8 @@ b_hash_keys_to_list(hash(Keys, _, _, _, _, _), LKeys) :-
|
||||
Keys =.. (_.LKs),
|
||||
mklistels(LKs, LKeys).
|
||||
|
||||
/** b_key_to_list(+_Hash_, -_ValList_ )
|
||||
/**
|
||||
@pred b_key_to_list(+_Hash_, -_ValList_ )
|
||||
|
||||
The term _`valList_ unifies with a list containing all values in the hash table.
|
||||
*/
|
||||
|
@@ -202,7 +202,7 @@
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
/** @defgroup Block_Diagram Block Diagram
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This library provides a way of visualizing a prolog program using
|
||||
@@ -232,7 +232,7 @@ parameter(texts((+inf))).
|
||||
parameter(depth((+inf))).
|
||||
parameter(default_ext('.yap')).
|
||||
|
||||
/** @pred make_diagram(+inputfilename, +ouputfilename)
|
||||
/** @pred make_diagram(+Inputfilename, +Ouputfilename)
|
||||
|
||||
|
||||
|
||||
@@ -252,7 +252,7 @@ make_diagram(InputFile, OutputFile):-
|
||||
write('}'), nl,
|
||||
told.
|
||||
|
||||
/** @pred make_diagram(+inputfilename, +ouputfilename, +predicate, +depth, +extension)
|
||||
/** @pred make_diagram(+Inputfilename, +Ouputfilename, +Predicate, +Depth, +Extension)
|
||||
|
||||
|
||||
The same as make_diagram/2 but you can define how many of the imported/exporeted predicates will be shown with predicate, and how deep the crawler is allowed to go with depth. The extension is used if the file use module directives do not include a file extension.
|
||||
|
@@ -211,7 +211,7 @@
|
||||
timer_pause/2]).
|
||||
|
||||
/** @defgroup CAlarms Concurrent Alarms
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This library provides a concurrent signals. To use it use:
|
||||
|
@@ -33,7 +33,7 @@
|
||||
]).
|
||||
|
||||
/** @defgroup CharsIO Operations on Sequences of Codes.
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
|
||||
Term to sequence of codes conversion, mostly replaced by engine code.
|
||||
*/
|
||||
|
@@ -9,7 +9,7 @@
|
||||
]).
|
||||
|
||||
%% @defgroup Cleanup Call Cleanup
|
||||
% @ingroup YAPLibrary
|
||||
% @ingroup library
|
||||
% @{
|
||||
%
|
||||
% <tt>call_cleanup/1</tt> and <tt>call_cleanup/2</tt> allow predicates to register
|
||||
|
@@ -67,7 +67,7 @@
|
||||
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
|
||||
|
||||
|
||||
/**
|
||||
To make the predicate terminate if any argument is instantiated, add
|
||||
the (implied) constraint F #\= 0 before the recursive call. Otherwise,
|
||||
the query fac(N, 0) is the only non-terminating case of this kind.
|
||||
|
@@ -31,7 +31,7 @@
|
||||
:- use_module(library(error)).
|
||||
|
||||
/** <module> Co-Logic Programming
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
|
||||
This simple module implements the directive coinductive/1 as described
|
||||
in "Co-Logic Programming: Extending Logic Programming with Coinduction"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/**
|
||||
@defgroup DBQUeue Non-baacktrackable queues in YAP.
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
A library to implement queues of NB Terms
|
||||
|
@@ -1,7 +1,7 @@
|
||||
|
||||
/**
|
||||
@defgroup DBUsage Memory Usage in Prolog Data-Base
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This library provides a set of utilities for studying memory usage in YAP.
|
||||
|
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
/** @defgroup DGraphs Directed Graphs
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following graph manipulation routines use the red-black tree library
|
||||
|
@@ -2,7 +2,7 @@
|
||||
% SWI emulation.
|
||||
% written in an on-demand basis.
|
||||
|
||||
%% @defgroup SWILibrary Compatibility with SWI-Prolog and Other Prolog systems
|
||||
%% @defgroup swi Compatibility with SWI-Prolog and Other Prolog systems
|
||||
|
||||
/**
|
||||
|
||||
@@ -148,21 +148,9 @@ that concatenated give _A12_.
|
||||
|
||||
|
||||
*/
|
||||
|
||||
goal_expansion(atom_concat(A,B,C),atomic_concat(A,B,C)).
|
||||
%goal_expansion(arg(A,_,_),_) :- nonvar(A), !, fail.
|
||||
/** @pred arg(+ _N_,+ _T_, _A_) is iso
|
||||
|
||||
|
||||
Succeeds if the argument _N_ of the term _T_ unifies with
|
||||
_A_. The arguments are numbered from 1 to the arity of the term.
|
||||
|
||||
The current version will generate an error if _T_ or _N_ are
|
||||
unbound, if _T_ is not a compound term, of if _N_ is not a positive
|
||||
integer. Note that previous versions of YAP would fail silently
|
||||
under these errors.
|
||||
|
||||
@}
|
||||
*/
|
||||
goal_expansion(arg(A,B,C),genarg(A,B,C)).
|
||||
|
||||
% make sure we also use
|
||||
|
@@ -16,11 +16,11 @@
|
||||
*************************************************************************/
|
||||
/**
|
||||
*
|
||||
* @file blobs.c
|
||||
* @{
|
||||
* @file blobs.c
|
||||
*
|
||||
* @addtogroup swi-c-interface
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#include <Yap.h>
|
||||
@@ -250,7 +250,7 @@ PL_unregister_blob_type(PL_blob_t *type)
|
||||
{
|
||||
fprintf(stderr,"PL_unregister_blob_type not implemented yet\n");
|
||||
return FALSE;
|
||||
}
|
||||
xs}
|
||||
|
||||
void
|
||||
Yap_install_blobs(void)
|
||||
|
@@ -140,9 +140,10 @@ UserCPredicate(char *a, CPredicate def, unsigned long int arity, Term mod, int f
|
||||
CurrentModule = cm;
|
||||
}
|
||||
|
||||
//! @{
|
||||
|
||||
/** @defgroup swi-ATOMS Atom Construction
|
||||
* @ingroup swi-c-interface
|
||||
* @{
|
||||
* */
|
||||
|
||||
|
||||
@@ -177,11 +178,12 @@ X_API char* PL_atom_nchars(atom_t a, size_t *len) /* SAM check type */
|
||||
return s;
|
||||
}
|
||||
|
||||
/** @}
|
||||
//! @}
|
||||
|
||||
/** @{
|
||||
*
|
||||
* @defgroup swi-term_references Term References
|
||||
* @ingroup swi-c-interface
|
||||
* @{
|
||||
* */
|
||||
|
||||
/** @brief duplicate a term reference
|
||||
@@ -226,14 +228,17 @@ X_API void PL_reset_term_refs(term_t after)
|
||||
}
|
||||
|
||||
/** @}
|
||||
* @defgroup swi-term_manipulation Term Manipulation
|
||||
*/
|
||||
|
||||
//! @{
|
||||
|
||||
/** @defgroup swi-term_manipulation Term Manipulation
|
||||
* @ingroup swi-c-interface
|
||||
* */
|
||||
|
||||
/**
|
||||
* @defgroup swi-get-operations Reading Terms
|
||||
* @ingroup swi-term_manipulation
|
||||
* @{
|
||||
* */
|
||||
|
||||
/** @brief *name is assigned the name and *arity the arity if term ts, or the operaton fails.
|
||||
@@ -647,10 +652,11 @@ X_API int PL_get_string(term_t t, char **s, size_t *len)
|
||||
* @}
|
||||
* */
|
||||
|
||||
//! @{
|
||||
/**
|
||||
* @defgroup swi-unify-operations Unifying Terms
|
||||
* @ingroup swi-term_manipulation
|
||||
* @{
|
||||
|
||||
* */
|
||||
|
||||
|
||||
|
@@ -9,7 +9,10 @@
|
||||
*************************************************************************/
|
||||
|
||||
/**
|
||||
@file swi.h
|
||||
|
||||
@{
|
||||
|
||||
@file swi.h
|
||||
|
||||
@defgroup swi-c-interface SWI-Prolog Foreign Language Interface
|
||||
@ingroup ChYInterface
|
||||
@@ -30,8 +33,6 @@
|
||||
* Prolog has all the information necessary to perform its memory management without special precautions
|
||||
* from the C programmer.
|
||||
|
||||
@{
|
||||
|
||||
*/
|
||||
void Yap_swi_install(void);
|
||||
void Yap_install_blobs(void);
|
||||
|
@@ -8,7 +8,7 @@
|
||||
|
||||
|
||||
/** @defgroup Exo_Intervals Exo Intervals
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This package assumes you use exo-compilation, that is, that you loaded
|
||||
|
@@ -18,7 +18,7 @@
|
||||
|
||||
|
||||
/** @defgroup Heaps Heaps
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
A heap is a labelled binary tree where the key of each node is less than
|
||||
|
@@ -4,7 +4,7 @@
|
||||
|
||||
|
||||
/** @defgroup LAM LAM
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This library provides a set of utilities for interfacing with LAM MPI.
|
||||
|
@@ -41,7 +41,7 @@ official policies, either expressed or implied, of Ulrich Neumerkel.
|
||||
op(201,xfx,+\)]).
|
||||
|
||||
/** <module> Lambda expressions
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
|
||||
This library provides lambda expressions to simplify higher order
|
||||
programming based on call/N.
|
||||
|
@@ -20,7 +20,7 @@
|
||||
]).
|
||||
|
||||
/** @defgroup LineUtilities Line Manipulation Utilities
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This package provides a set of useful predicates to manipulate
|
||||
|
@@ -5,7 +5,7 @@
|
||||
%
|
||||
|
||||
/** @defgroup Lists List Manipulation
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following list manipulation routines are available once included
|
||||
|
@@ -1,6 +1,7 @@
|
||||
/**
|
||||
|
||||
@defgroup YAPControl Meta- and Control Predicates
|
||||
@defgroup YAPMapList Meta- and Control Predicates
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
*/
|
||||
@@ -22,7 +23,7 @@
|
||||
* @file maplist.yap
|
||||
*
|
||||
* @defgroup maplist Map List and Term Operations
|
||||
* @ingroup YAPLibrary
|
||||
* @ingroup library
|
||||
*
|
||||
* This library provides a set of utilities for applying a predicate to
|
||||
* all elements of a list. They allow one to easily perform the most common do-loop constructs in Prolog.
|
||||
|
@@ -1,6 +1,6 @@
|
||||
|
||||
/** @defgroup MATLAB MATLAB Package Interface
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The MathWorks MATLAB is a widely used package for array
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*************************************************************************/
|
||||
|
||||
/** @defgroup matrix Matrix Library
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This package provides a fast implementation of multi-dimensional
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*************************************************************************/
|
||||
|
||||
/** @defgroup NonhYBacktrackable_Data_Structures Non-Backtrackable Data Structures
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following routines implement well-known data-structures using global
|
||||
|
@@ -19,7 +19,7 @@
|
||||
|
||||
|
||||
/** @defgroup Ordered_Sets Ordered Sets
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following ordered set manipulation routines are available once
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
/**
|
||||
@groupdef PseudoRandom Van Gelder Random Number Generator
|
||||
@ingroup YAPBuiltins
|
||||
@ingroup builtins
|
||||
@{
|
||||
*/
|
||||
|
||||
|
@@ -7,7 +7,7 @@
|
||||
% Needs : lib(lists) for append/3.
|
||||
|
||||
/** @defgroup Queues Queues
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following queue manipulation routines are available once
|
||||
|
@@ -23,7 +23,7 @@
|
||||
% arithmetic.
|
||||
|
||||
/** @defgroup Pseudo_Random Random Number Generator
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following random number operations are included with the
|
||||
@@ -55,7 +55,7 @@ integers then _NUMBER_ will also be an integer, otherwise
|
||||
|
||||
|
||||
/** @defgroup Pseudo_Random Pseudo Random Number Integer Generator
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following routines produce random non-negative integers in the range
|
||||
|
@@ -50,10 +50,13 @@
|
||||
rb_in/3
|
||||
]).
|
||||
|
||||
/** @defgroup RedhYBlack_Trees Red-Black Trees
|
||||
@ingroup YAPLibrary
|
||||
@{
|
||||
%%! @{
|
||||
|
||||
/**
|
||||
@file rbtrees.yap
|
||||
@defgroup rbtrees Red-Black Trees
|
||||
@ingroup library
|
||||
|
||||
Red-Black trees are balanced search binary trees. They are named because
|
||||
nodes can be classified as either red or black. The code we include is
|
||||
based on "Introduction to Algorithms", second edition, by Cormen,
|
||||
@@ -109,7 +112,6 @@ rb_new(K,V,t(Nil,black(Nil,K,V,Nil))) :- Nil = black('',_,_,'').
|
||||
%% rb_empty(?T) is semidet.
|
||||
%
|
||||
% Succeeds if T is an empty Red-Black tree.
|
||||
|
||||
rb_empty(t(Nil,Nil)) :- Nil = black('',_,_,'').
|
||||
|
||||
%% rb_lookup(+Key, -Value, +T) is semidet.
|
||||
@@ -1036,7 +1038,6 @@ list_to_rbtree(List, T) :-
|
||||
%
|
||||
% T is the red-black tree corresponding to the mapping in ordered
|
||||
% list L.
|
||||
|
||||
ord_list_to_rbtree([], t(Nil,Nil)) :- !,
|
||||
Nil = black('', _, _, '').
|
||||
ord_list_to_rbtree([K-V], t(Nil,black(Nil,K,V,Nil))) :- !,
|
||||
@@ -1085,10 +1086,9 @@ size(black(L,_,_,R),Sz0,Szf) :-
|
||||
|
||||
%% is_rbtree(?Term) is semidet.
|
||||
%
|
||||
% True if Term is a valide Red-Black tree.
|
||||
% True if Term is a valid Red-Black tree.
|
||||
%
|
||||
% @tbd Catch variables.
|
||||
|
||||
is_rbtree(X) :-
|
||||
var(X), !, fail.
|
||||
is_rbtree(t(Nil,Nil)) :- !.
|
||||
@@ -1231,26 +1231,11 @@ build_ntree(X1,X,T0,TF) :-
|
||||
|
||||
|
||||
|
||||
/** @pred is_rbtree(+ _T_)
|
||||
|
||||
|
||||
Check whether _T_ is a valid red-black tree.
|
||||
|
||||
|
||||
*/
|
||||
/** @pred ord_list_to_rbtree(+ _L_, - _T_)
|
||||
|
||||
|
||||
_T_ is the red-black tree corresponding to the mapping in ordered
|
||||
list _L_.
|
||||
|
||||
|
||||
|
||||
*/
|
||||
/** @pred rb_apply(+ _T_,+ _Key_,+ _G_,- _TN_)
|
||||
|
||||
|
||||
If the value associated with key _Key_ is _Val0_ in _T_, and
|
||||
If the value associated with key _Key_ is _Val0_ in _T_, and
|
||||
if `call(G,Val0,ValF)` holds, then _TN_ differs from
|
||||
_T_ only in that _Key_ is associated with value _ValF_ in
|
||||
tree _TN_. Fails if it cannot find _Key_ in _T_, or if
|
||||
@@ -1448,7 +1433,8 @@ with _NewVal_. Fails if it cannot find _Key_ in _T_.
|
||||
_Pairs_ is an infix visit of tree _T_, where each element of
|
||||
_Pairs_ is of the form _K_- _Val_.
|
||||
|
||||
@}
|
||||
|
||||
|
||||
*/
|
||||
|
||||
%%! @}
|
||||
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*************************************************************************/
|
||||
|
||||
/** @defgroup RegExp Regular Expressions
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
This library includes routines to determine whether a regular expression
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
<module> SICStus compatible socket library
|
||||
|
||||
@ingroup YAPBuiltins
|
||||
@ingroup builtins
|
||||
|
||||
YAP includes a SICStus Prolog compatible socket interface. In YAP-6.3
|
||||
this uses the `clib` package to emulate the old low level interface that
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*************************************************************************/
|
||||
|
||||
/** @defgroup Splay_Trees Splay Trees
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
Splay trees are explained in the paper "Self-adjusting Binary Search
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*************************************************************************/
|
||||
|
||||
/** @defgroup System Calling The Operating System from YAP
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
YAP now provides a library of system utilities compatible with the
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* *
|
||||
*************************************************************************/
|
||||
/** @defgroup Terms Utilities On Terms
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The next routines provide a set of commonly used utilities to manipulate
|
||||
|
@@ -21,7 +21,7 @@
|
||||
|
||||
|
||||
/** @defgroup Timeout Calls With Timeout
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The <tt>time_out/3</tt> command relies on the <tt>alarm/3</tt> built-in to
|
||||
|
@@ -25,7 +25,7 @@
|
||||
|
||||
|
||||
/** @defgroup Trees Updatable Binary Trees
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following queue manipulation routines are available once
|
||||
|
@@ -7,7 +7,7 @@
|
||||
|
||||
|
||||
/** @defgroup Tries Trie DataStructure
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The next routines provide a set of utilities to create and manipulate
|
||||
|
@@ -10,7 +10,7 @@
|
||||
|
||||
|
||||
/** @defgroup UGraphs Unweighted Graphs
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following graph manipulation routines are based in code originally
|
||||
|
@@ -20,7 +20,7 @@
|
||||
undgraph_min_tree/2]).
|
||||
|
||||
/** @defgroup UnDGraphs Undirected Graphs
|
||||
@ingroup YAPLibrary
|
||||
@ingroup library
|
||||
@{
|
||||
|
||||
The following graph manipulation routines use the red-black tree graph
|
||||
|
Reference in New Issue
Block a user