make this callable from foeign code.
This commit is contained in:
parent
1d2de81e86
commit
9397c9336d
32
H/TermExt.h
32
H/TermExt.h
@ -58,13 +58,19 @@ blob_type;
|
|||||||
#define FunctorDouble ((Functor)(double_e))
|
#define FunctorDouble ((Functor)(double_e))
|
||||||
#define EndSpecials (double_e+sizeof(Functor *))
|
#define EndSpecials (double_e+sizeof(Functor *))
|
||||||
|
|
||||||
|
|
||||||
inline EXTERN int IsAttVar (CELL *pt);
|
inline EXTERN int IsAttVar (CELL *pt);
|
||||||
|
|
||||||
inline EXTERN int
|
inline EXTERN int
|
||||||
IsAttVar (CELL *pt)
|
IsAttVar (CELL *pt)
|
||||||
{
|
{
|
||||||
|
#ifdef _YAP_NOT_INSTALLED_
|
||||||
CACHE_REGS
|
CACHE_REGS
|
||||||
return (pt)[-1] == (CELL)attvar_e && pt < H;
|
return (pt)[-1] == (CELL)attvar_e
|
||||||
|
&& pt < H;
|
||||||
|
#else
|
||||||
|
return (pt)[-1] == (CELL)attvar_e;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
inline EXTERN int GlobalIsAttVar (CELL *pt);
|
inline EXTERN int GlobalIsAttVar (CELL *pt);
|
||||||
@ -142,6 +148,8 @@ exts;
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef _YAP_NOT_INSTALLED_
|
||||||
|
|
||||||
/* make sure that these data structures are the first thing to be allocated
|
/* make sure that these data structures are the first thing to be allocated
|
||||||
in the heap when we start the system */
|
in the heap when we start the system */
|
||||||
#ifdef THREADS
|
#ifdef THREADS
|
||||||
@ -171,6 +179,7 @@ inline EXTERN Float STD_PROTO (CpFloatUnaligned, (CELL *));
|
|||||||
|
|
||||||
#if SIZEOF_DOUBLE == SIZEOF_LONG_INT
|
#if SIZEOF_DOUBLE == SIZEOF_LONG_INT
|
||||||
|
|
||||||
|
|
||||||
inline EXTERN Term MkFloatTerm (Float);
|
inline EXTERN Term MkFloatTerm (Float);
|
||||||
|
|
||||||
inline EXTERN Term
|
inline EXTERN Term
|
||||||
@ -246,7 +255,6 @@ MkFloatTerm (Float dbl)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
inline EXTERN Float FloatOfTerm (Term t);
|
inline EXTERN Float FloatOfTerm (Term t);
|
||||||
|
|
||||||
inline EXTERN Float
|
inline EXTERN Float
|
||||||
@ -264,6 +272,14 @@ FloatOfTerm (Term t)
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Term STD_PROTO (Yap_MkBlobStringTerm, (const char *, size_t len));
|
||||||
|
Term STD_PROTO (Yap_MkBlobWideStringTerm, (const wchar_t *, size_t len));
|
||||||
|
char *STD_PROTO (Yap_BlobStringOfTerm, (Term));
|
||||||
|
wchar_t *STD_PROTO (Yap_BlobWideStringOfTerm, (Term));
|
||||||
|
char *STD_PROTO (Yap_BlobStringOfTermAndLength, (Term, size_t *));
|
||||||
|
|
||||||
|
#endif /* YAP_NOT_INSTALLED */
|
||||||
|
|
||||||
|
|
||||||
inline EXTERN int IsFloatTerm (Term);
|
inline EXTERN int IsFloatTerm (Term);
|
||||||
|
|
||||||
@ -278,6 +294,7 @@ IsFloatTerm (Term t)
|
|||||||
|
|
||||||
/* extern Functor FunctorLongInt; */
|
/* extern Functor FunctorLongInt; */
|
||||||
|
|
||||||
|
#ifdef _YAP_NOT_INSTALLED_
|
||||||
inline EXTERN Term MkLongIntTerm (Int);
|
inline EXTERN Term MkLongIntTerm (Int);
|
||||||
|
|
||||||
inline EXTERN Term
|
inline EXTERN Term
|
||||||
@ -291,6 +308,8 @@ MkLongIntTerm (Int i)
|
|||||||
return AbsAppl(H - 3);
|
return AbsAppl(H - 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
inline EXTERN Int LongIntOfTerm (Term t);
|
inline EXTERN Int LongIntOfTerm (Term t);
|
||||||
|
|
||||||
inline EXTERN Int
|
inline EXTERN Int
|
||||||
@ -402,12 +421,6 @@ typedef struct string_struct {
|
|||||||
UInt len;
|
UInt len;
|
||||||
} blob_string_t;
|
} blob_string_t;
|
||||||
|
|
||||||
Term STD_PROTO (Yap_MkBlobStringTerm, (const char *, size_t len));
|
|
||||||
Term STD_PROTO (Yap_MkBlobWideStringTerm, (const wchar_t *, size_t len));
|
|
||||||
char *STD_PROTO (Yap_BlobStringOfTerm, (Term));
|
|
||||||
wchar_t *STD_PROTO (Yap_BlobWideStringOfTerm, (Term));
|
|
||||||
char *STD_PROTO (Yap_BlobStringOfTermAndLength, (Term, size_t *));
|
|
||||||
|
|
||||||
inline EXTERN int IsBlobStringTerm (Term);
|
inline EXTERN int IsBlobStringTerm (Term);
|
||||||
|
|
||||||
inline EXTERN int
|
inline EXTERN int
|
||||||
@ -591,6 +604,8 @@ IsAttachedTerm (Term t)
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef _YAP_NOT_INSTALLED_
|
||||||
|
|
||||||
inline EXTERN int STD_PROTO (unify_extension, (Functor, CELL, CELL *, CELL));
|
inline EXTERN int STD_PROTO (unify_extension, (Functor, CELL, CELL *, CELL));
|
||||||
|
|
||||||
EXTERN int STD_PROTO (unify_extension, (Functor, CELL, CELL *, CELL));
|
EXTERN int STD_PROTO (unify_extension, (Functor, CELL, CELL *, CELL));
|
||||||
@ -664,3 +679,4 @@ CELL Yap_Double_key(Term t)
|
|||||||
return Yap_DoubleP_key(RepAppl(t)+1);
|
return Yap_DoubleP_key(RepAppl(t)+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
Reference in New Issue
Block a user