Merge branch 'master' of https://github.com/vscosta/yap-6.3
This commit is contained in:
commit
af38d14ba7
27
CXX/yapa.hh
27
CXX/yapa.hh
@ -1,9 +1,24 @@
|
|||||||
|
/// @{
|
||||||
|
|
||||||
#ifndef YAPA_HH
|
#ifndef YAPA_HH
|
||||||
#define YAPA_HH 1
|
#define YAPA_HH 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Prolog operates over constants, called atoms
|
*
|
||||||
YAP, like lisp, associates properties with atoms.
|
* @defgroup yap-cplus-interface An object oriented interface for YAP.
|
||||||
|
*
|
||||||
|
* @ingroup ChYInterface
|
||||||
|
* @tableofcontents
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Prolog operates over constants, called atoms. YAP's stores most data as a list
|
||||||
|
* of properties for atoms. Properties include functors, data-base tecords, predicates. operators,
|
||||||
|
* and more.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
/**
|
||||||
|
Tne different tgaas area represented through PropTag.
|
||||||
*/
|
*/
|
||||||
enum PropTag {
|
enum PropTag {
|
||||||
/// predicate
|
/// predicate
|
||||||
@ -19,7 +34,7 @@ enum PropTag {
|
|||||||
TRANSLATION_TAG = TranslationProperty, // 0xFFF4,
|
TRANSLATION_TAG = TranslationProperty, // 0xFFF4,
|
||||||
/// ensure the atom may not be garbafe colected
|
/// ensure the atom may not be garbafe colected
|
||||||
HOLD_TAG = HoldProperty, // 0xFFF6
|
HOLD_TAG = HoldProperty, // 0xFFF6
|
||||||
/// named mutEX
|
/// named mutEX
|
||||||
MUTEX_TAG = MutexProperty, // 0xFFF6,
|
MUTEX_TAG = MutexProperty, // 0xFFF6,
|
||||||
/// A typed array, may be in-db or in-stack deped
|
/// A typed array, may be in-db or in-stack deped
|
||||||
ARRAY_TAG = ArrayProperty, // 0xFFF7,
|
ARRAY_TAG = ArrayProperty, // 0xFFF7,
|
||||||
@ -35,7 +50,7 @@ enum PropTag {
|
|||||||
BLOB_TAG = BlobProperty, // 0xFFFE,
|
BLOB_TAG = BlobProperty, // 0xFFFE,
|
||||||
/// Prolog operator,
|
/// Prolog operator,
|
||||||
OPERATOR_TAG = OpProperty, // 0xFFFF,
|
OPERATOR_TAG = OpProperty, // 0xFFFF,
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Atom
|
* @brief Atom
|
||||||
@ -90,10 +105,12 @@ class YAPProp {
|
|||||||
public:
|
public:
|
||||||
/// get name of property
|
/// get name of property
|
||||||
// virtual YAPAtom name();
|
// virtual YAPAtom name();
|
||||||
virtual ~YAPProp() {};
|
virtual ~YAPProp() {};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif /* YAPA_HH */
|
#endif /* YAPA_HH */
|
||||||
|
|
||||||
|
/// @}
|
||||||
|
|
||||||
|
@ -14,8 +14,8 @@
|
|||||||
* @tableofcontents
|
* @tableofcontents
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Data-base component of C++ interface to YAP. It manipulates sets of
|
* These classes define the main data-structures stored in the Data-base component: atoms, functors
|
||||||
* atoms, each one containing a number of props.
|
* and predicates.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
class YAPTerm;
|
class YAPTerm;
|
||||||
@ -136,7 +136,7 @@ protected:
|
|||||||
CACHE_REGS
|
CACHE_REGS
|
||||||
BACKUP_MACHINE_REGS();
|
BACKUP_MACHINE_REGS();
|
||||||
Term *modp = NULL;
|
Term *modp = NULL;
|
||||||
names = MkVarTerm ();
|
names = MkVarTerm ();
|
||||||
const unsigned char *us = (const unsigned char *)s0;
|
const unsigned char *us = (const unsigned char *)s0;
|
||||||
out =
|
out =
|
||||||
Yap_BufferToTermWithPrioBindings(us, strlen(s0), TermNil, 1200, names);
|
Yap_BufferToTermWithPrioBindings(us, strlen(s0), TermNil, 1200, names);
|
||||||
@ -329,3 +329,5 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/// @}
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
*
|
*
|
||||||
* @defgroup yap-cplus-interface An object oriented interface for YAP.
|
* @defgroup yap-cplus-interface An object oriented interface for YAP.
|
||||||
*
|
*
|
||||||
* @ingroup ChYInterface
|
* @ingroup yap-cplus-interface
|
||||||
* @tableofcontents
|
* @tableofcontents
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
|
16
CXX/yapie.hh
16
CXX/yapie.hh
@ -1,3 +1,17 @@
|
|||||||
|
/**
|
||||||
|
* @{
|
||||||
|
*
|
||||||
|
* @defgroup yap-cplus-error-hanadlinge Errir Handling in the YAP interface.
|
||||||
|
*
|
||||||
|
* @ingroup yap-cplus-interface
|
||||||
|
* @tableofcontents
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* These classes define an object that we can then throw when an error
|
||||||
|
* or unexoected event interrupts YAP. Often, the object is built by
|
||||||
|
* YAP itself, but we may generate our own errors.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifndef YAPIE_HH
|
#ifndef YAPIE_HH
|
||||||
#define YAPIE_HH
|
#define YAPIE_HH
|
||||||
@ -36,3 +50,5 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/// @}
|
||||||
|
17
CXX/yapq.hh
17
CXX/yapq.hh
@ -1,3 +1,16 @@
|
|||||||
|
/**
|
||||||
|
* @{
|
||||||
|
^
|
||||||
|
* @defgroup yap-cplus-query-hanadlinge Query Handling in the YAP interface.
|
||||||
|
*
|
||||||
|
* @ingroup yap-cplus-interface
|
||||||
|
* @tableofcontents
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* These classes define the concepts of engine ana of query.Ann engine is an environment where we can rum
|
||||||
|
* Prolog, that is, where we can run queries.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef YAPQ_HH
|
#ifndef YAPQ_HH
|
||||||
#define YAPQ_HH 1
|
#define YAPQ_HH 1
|
||||||
|
|
||||||
@ -217,3 +230,7 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
#endif /* YAPQ_HH */
|
#endif /* YAPQ_HH */
|
||||||
|
|
||||||
|
/// @}
|
||||||
|
|
||||||
|
|
||||||
|
16
CXX/yapt.hh
16
CXX/yapt.hh
@ -1,3 +1,17 @@
|
|||||||
|
/**
|
||||||
|
* @{
|
||||||
|
* @defgroup yap-cplus-term-handling Term Handling in the YAP interface.
|
||||||
|
*
|
||||||
|
* @ingroup yap-cplus-interface
|
||||||
|
* @tableofcontents
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* These classes define a term objectthat can be refined, Currently, all exported terms have an
|
||||||
|
* handle, in the SWI-Prolog style.
|
||||||
|
*
|
||||||
|
* Nottce that terms are forcefully destroyed during backtracking.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifndef YAPT_HH
|
#ifndef YAPT_HH
|
||||||
#define YAPT_HH 1
|
#define YAPT_HH 1
|
||||||
@ -445,3 +459,5 @@ public:
|
|||||||
const char *text() { return (const char *)AtomOfTerm(gt())->StrOfAE; }
|
const char *text() { return (const char *)AtomOfTerm(gt())->StrOfAE; }
|
||||||
};
|
};
|
||||||
#endif /* YAPT_HH */
|
#endif /* YAPT_HH */
|
||||||
|
|
||||||
|
/// @}
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
#
|
#
|
||||||
macro_optional_find_package (LibR ON)
|
macro_optional_find_package (LibR ON)
|
||||||
|
|
||||||
macro_log_feature (R_FOUND "R"
|
macro_log_feature (LIBR_FOUND "R"
|
||||||
"Use R Environment"
|
"Use R Environment"
|
||||||
"http://www.r.org" FALSE)
|
"http://www.r.org" FALSE)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user