1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
/*-------------------------------------------------------------------------*/
/* GNU Prolog */
/* */
/* Part : Prolog buit-in predicates */
/* File : term_inl.pl */
/* Descr.: term (inline) management - defs for meta-call */
/* Author: Daniel Diaz */
/* */
/* Copyright (C) 1999 Daniel Diaz */
/* */
/* GNU Prolog is free software; you can redistribute it and/or modify it */
/* under the terms of the GNU General Public License as published by the */
/* Free Software Foundation; either version 2, or any later version. */
/* */
/* GNU Prolog is distributed in the hope that it will be useful, but */
/* WITHOUT ANY WARRANTY; without even the implied warranty of */
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */
/* General Public License for more details. */
/* */
/* You should have received a copy of the GNU General Public License along */
/* with this program; if not, write to the Free Software Foundation, Inc. */
/* 59 Temple Place - Suite 330, Boston, MA 02111, USA. */
/*-------------------------------------------------------------------------*/
:- built_in.
'$use_term_inl'.
compare(C,T1,T2):-
compare(C,T1,T2).
X == Y:-
X == Y.
X \== Y:-
X \== Y.
X @< Y:-
X @< Y.
X @=< Y:-
X @=< Y.
X @> Y:-
X @> Y.
X @>= Y:-
X @>= Y.
arg(N,T,A):-
arg(N,T,A).
functor(T,F,N):-
functor(T,F,N).
Term =.. List:-
Term =.. List.
copy_term(T1,T2):-
set_bip_name(copy_term,2),
'$call_c_test'('Copy_Term_2'(T1,T2)).
setarg(ArgNo,Term,NewValue):-
set_bip_name(setarg,3),
'$call_c_test'('Setarg_4'(ArgNo,Term,NewValue,true)).
setarg(ArgNo,Term,NewValue,Undo):-
set_bip_name(setarg,4),
'$call_c_test'('Setarg_4'(ArgNo,Term,NewValue,Undo)).
term_ref(Term,Ref):-
set_bip_name(term_ref,2),
'$call_c_test'('Term_Ref_2'(Term,Ref)).
|