SWI-Prolog Foreign Language Interface¶
YAP reimplementation of the SWI C API.
a reimplementation of the SWI-Prolog interface.
A reimplementation of Jan Wielemaker's SWI-Prolog C-language interface, it supports most of the functionality in the original implementation. It allows for:
-
Term Construction, Access, and Unification
-
Manipulation of Atoms, Strings, Lists of Codes and Lists of Atoms
-
Query evaluation
-
Thread and Prolog engine management
-
Data-Base Access
In this interface, all Prolog data known by C is referenced through term references (term_t), hence Prolog has all the information necessary to perform its memory management without special precautions from the C programmer.
Define:¶
Functions:¶
1. X_API Atom YAP_AtomFromSWIAtom(atom_t at):
1. X_API atom_t YAP_SWIAtomFromAtom(Atom at):
1. X_API arity_t YAP_PLArityOfSWIFunctor(functor_t at):
1. static void UserCPredicate(char *a, CPredicate def, arity_t arity, Term mod, int flags):
1. void Yap_swi_install(void):
1. void Yap_install_blobs(void):
1. static Term SWIModuleToModule(module_t m):
1. static Atom SWIAtomToAtom(atom_t at):
1. static functor_t FunctorToSWIFunctor(Functor f):
1. static Functor SWIFunctorToFunctor(functor_t f):
1. int Yap_write_blob(AtomEntry ref, FILE stream):