cleanup
This commit is contained in:
parent
1ef7eeabdf
commit
c8ea14057c
96
debug.txt
96
debug.txt
|
@ -1,96 +0,0 @@
|
|||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QAsciiDict: Cannot insert null item
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
||||
QGDict::hashAsciiKey: Invalid null key
|
|
@ -1,16 +0,0 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.3
|
||||
|
||||
# Relative path conversion top directories.
|
||||
set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/vsc/git/yap-6.3")
|
||||
set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/vsc/git/yap-6.3")
|
||||
|
||||
# Force unix paths in dependencies.
|
||||
set(CMAKE_FORCE_UNIX_PATHS 1)
|
||||
|
||||
|
||||
# The C and CXX include file regular expressions for this directory.
|
||||
set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
|
||||
set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
|
|
@ -1 +0,0 @@
|
|||
0
|
20
patch
20
patch
|
@ -1,20 +0,0 @@
|
|||
diff --git a/packages/myddas/myddas_shared.c b/packages/myddas/myddas_shared.c
|
||||
index 5d82323..5f13c47 100644
|
||||
--- a/packages/myddas/myddas_shared.c
|
||||
+++ b/packages/myddas/myddas_shared.c
|
||||
@@ -736,9 +736,13 @@ init_myddas(void)
|
||||
}
|
||||
#endif
|
||||
#if defined MYDDAS_MYSQL || defined MYDDAS_ODBC
|
||||
+#define stringify(X) _stringify(X)
|
||||
+#define _stringify(X) #X
|
||||
Yap_REGS.MYDDAS_GLOBAL_POINTER = NULL;
|
||||
Yap_PutValue(AtomMyddasVersionName,
|
||||
- MkAtomTerm(Yap_LookupAtom(MYDDAS_VERSION)));
|
||||
+ MkAtomTerm(Yap_LookupAtom(stringify(MYDDAS_VERSION))));
|
||||
+#undef stringify
|
||||
+#undef _stringify
|
||||
Yap_HaltRegisterHook((HaltHookFunc)Yap_MYDDAS_delete_all_myddas_structs,NULL);
|
||||
Yap_MYDDAS_delete_all_myddas_structs();
|
||||
#endif
|
||||
|
1
start
1
start
|
@ -1 +0,0 @@
|
|||
echo "bootstrap('./pl/init.yap'). module(user). qsave_program('startup.yss')." | LD_LIBRARY_PATH=. ./yap -b ./pl/boot.yap
|
|
@ -1 +0,0 @@
|
|||
/usr/local/Cellar/automake/1.14.1/share/automake-1.14/test-driver
|
268
text.cpp
268
text.cpp
|
@ -1,268 +0,0 @@
|
|||
/*************************************************************************
|
||||
* *
|
||||
* YAP Prolog *
|
||||
* *
|
||||
* Yap Prolog was developed at NCCUP - Universidade do Porto *
|
||||
* *
|
||||
* Copyright L.Damas, V.S.Costa and Universidade do Porto 1985-1997 *
|
||||
* *
|
||||
**************************************************************************
|
||||
* *
|
||||
* File: iopreds.c *
|
||||
* Last rev: 5/2/88 *
|
||||
* mods: *
|
||||
* comments: Input/Output C implemented predicates *
|
||||
* *
|
||||
*************************************************************************/
|
||||
#ifdef SCCS
|
||||
static char SccsId[] = "%W% %G%";
|
||||
#endif
|
||||
|
||||
/*
|
||||
* This file includes the definition of a miscellania of standard predicates
|
||||
* for yap refering to: Files and GLOBAL_Streams, Simple Input/Output,
|
||||
*
|
||||
*/
|
||||
|
||||
#include "Yap.h"
|
||||
#if HAVE_FCNTL_H
|
||||
/* for O_BINARY and O_TEXT in WIN32 */
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
#include "Yatom.h"
|
||||
#include "YapHeap.h"
|
||||
#include "yapio.h"
|
||||
#include "eval.h"
|
||||
|
||||
// Use C++ classes to implement text conversion
|
||||
//
|
||||
|
||||
#include "utf8.h"
|
||||
#include <iomanip>
|
||||
#include <string>
|
||||
#include <locale>
|
||||
#include <codecvt>
|
||||
|
||||
/// copy the ISO-Latin1 string s
|
||||
///
|
||||
/// this done by first initializing and then getting the bytes and converting to UTF-8
|
||||
size_t readISOLatin1(const char *s, size_t maxlen, char **o, size_t *limit) {
|
||||
|
||||
char *new;
|
||||
size_t max;
|
||||
if (!alloc_tmp( s, maxlen, o, limit))
|
||||
return -1;
|
||||
new = *o;
|
||||
maxp = new+max;
|
||||
while (*s || maxlen--) {
|
||||
// notice that string does not about encodings;
|
||||
size_t extra;
|
||||
int32_t ch = *s++;
|
||||
íf (ch < 128) {
|
||||
*new = ch;
|
||||
extra = 1;
|
||||
} else {
|
||||
extra = utf8proc_encode_char( ch, new);
|
||||
}
|
||||
count++;
|
||||
if (new+extra> maxp || maxlen == 0) {
|
||||
break;
|
||||
}
|
||||
new += extra;
|
||||
}
|
||||
*new++ = '\0';
|
||||
*limit = count;
|
||||
return new-*o;
|
||||
}
|
||||
|
||||
size_t readWide(const wchar_t *s, size_t maxlen, char **o, size_t *limit) {
|
||||
|
||||
char *new;
|
||||
size_t max;
|
||||
if (!alloc_tmp( s, maxlen, o, limit))
|
||||
return -1;
|
||||
max = *limit;
|
||||
memcpy( *o, s, *limit);
|
||||
if ((int32_t)(sz = utf8proc_reencode(*o, max/sizeof(int32+t), 0)) < 0)
|
||||
return sz;
|
||||
*new++ = '\0';
|
||||
*limit = new-*o;
|
||||
return sz;
|
||||
}
|
||||
|
||||
|
||||
size_t readAtom(Atom at, char **o) {
|
||||
if (IsBlob(at))
|
||||
return readTerm, (MkAtomTerm(at), o, -1, NULL, -1);
|
||||
if (IsWideAtom( at ))
|
||||
return readWide( RepAtom(at)->WStrOfAE , o, -1, NULL, -1);
|
||||
return readISOLatin1( RepAtom(at)->StrOfAE, o, -1, NULL, -1 );
|
||||
}
|
||||
|
||||
size_t readString(Term t, char **o) {
|
||||
char *s = StringOfTerm(t);
|
||||
*o = s;
|
||||
return strlen( s );
|
||||
}
|
||||
|
||||
size_t readCodes(Term t, size_t maxlen, char **o, size_t *limit) {
|
||||
|
||||
char *new;
|
||||
size_t max;
|
||||
if (*limit == 0)
|
||||
* limit = Yap_ListLength(t)*sizeof(int32_t);
|
||||
if ((int32_t)(*limit) < 0)
|
||||
return -1;
|
||||
if (!alloc_tmp( s, maxlen, o, limit))
|
||||
return -1;
|
||||
max = *limit;
|
||||
new = *o;
|
||||
maxp = new+max;
|
||||
while (IsPairTerm(t) || maxlen--) {
|
||||
// notice that string does not about encodings;
|
||||
size_t extra;
|
||||
if (IsPairTerm(t)) {
|
||||
Term hd = HeadOfTerm(t);
|
||||
if (!IsIntegerTerm(hd))
|
||||
throw std::range_error;
|
||||
Int ch = IntegerOfTerm(hd);
|
||||
if (ch < 0) {
|
||||
return -1;
|
||||
}
|
||||
t = TailOfTerm(t);
|
||||
íf (ch < 128) {
|
||||
*new = ch;
|
||||
extra = 1;
|
||||
} else {
|
||||
extra = utf8proc_encode_char( ch, new);
|
||||
}
|
||||
} else {
|
||||
extra = 1;
|
||||
*new = '\0';
|
||||
}
|
||||
count++;
|
||||
if (new+extra> maxp || maxlen == 0) {
|
||||
break;
|
||||
}
|
||||
new += extra;
|
||||
}
|
||||
*new++ = '\0';
|
||||
*limit = new;
|
||||
if (t == TermNil) {
|
||||
*lim = new-*o;
|
||||
return count;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
size_t readChars(Term t, size_t maxlen, char **o, size_t *limit) {
|
||||
|
||||
char *new;
|
||||
size_t max;
|
||||
if (*limit == 0)
|
||||
* limit = Yap_ListLength(t)*sizeof(int32_t);
|
||||
if ((int32_t)(*limit) < 0)
|
||||
return -1;
|
||||
if (!alloc_tmp( s, maxlen, o, limit))
|
||||
return -1;
|
||||
max = *limit;
|
||||
new = *o;
|
||||
maxp = new+max;
|
||||
while (IsPairTerm(t) || maxlen--) {
|
||||
// notice that string does not about encodings;
|
||||
size_t extra;
|
||||
if (IsPairTerm(t)) {
|
||||
Term hd = HeadOfTerm(t);
|
||||
if (!IsAtomTerm(hd))
|
||||
return -1;
|
||||
Atom at = AtomOfTerm(hd);
|
||||
if (IsWideAtom(at)) {
|
||||
wchar_t *s = RepAtom(at)->WStrOfAE;
|
||||
if (s[1]) {
|
||||
return -1;
|
||||
}
|
||||
ch = s[0];
|
||||
} else if (IsBlob(at)) {
|
||||
return -1;
|
||||
} else {
|
||||
char *s = RepAtom(at)->StrOfAE;
|
||||
if (s[1]) {
|
||||
return -1;
|
||||
}
|
||||
ch = s[0];
|
||||
}
|
||||
if (i < 0) {
|
||||
return -1;
|
||||
}
|
||||
t = TailOfTerm(t);
|
||||
íf (ch < 128) {
|
||||
*new = ch;
|
||||
extra = 1;
|
||||
} else {
|
||||
extra = utf8proc_encode_char( ch, new);
|
||||
}
|
||||
} else {
|
||||
extra = 1;
|
||||
*new = '\0';
|
||||
}
|
||||
count++;
|
||||
if (new+extra> maxp || maxlen == 0) {
|
||||
break;
|
||||
}
|
||||
new += extra;
|
||||
}
|
||||
*new++ = '\0';
|
||||
*limit = new;
|
||||
if (t == TermNil) {
|
||||
*lim = new-*o;
|
||||
return count;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
readNumber(
|
||||
/// convert a number
|
||||
/// again, we add to the empty case
|
||||
bool getNumber(Term t, char *buf=NULL, size_t sz = 0, size_t *fsz = NULL) {
|
||||
text = "";
|
||||
return text.addNumber(t, , flags, buf, sz, fs);
|
||||
}
|
||||
|
||||
/// add a number, that may be an integer, float,
|
||||
/// big, or rational
|
||||
/// remember, numbers are in ASCII
|
||||
bool addNumber(Term t, char *buf=NULL, size_t sz = 0, size_t *fsz = NULL)
|
||||
{
|
||||
try {
|
||||
text =
|
||||
Yap_TermToString(Term t, NULL, size_t sz, NULL, ENC_UTF8, 0);
|
||||
} catch(const std::range_error& e) {
|
||||
Yap_Error(SYSTEM_ERROR_INTERNAL, TermNil, "failed to convert the number", s);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/// output a term to uTF-8 text.
|
||||
/// again, we add to the empty case
|
||||
bool getText(Term t, int flags = 0, char *buf=NULL, size_t sz = 0, size_t *fsz = NULL) {
|
||||
text = "";
|
||||
return text.addText( t, flags, buf, sz, fsz);
|
||||
}
|
||||
|
||||
/// add a number, that may be an integer, float,
|
||||
/// big, or rational
|
||||
/// remember, numbers are in ASCII
|
||||
bool addText(Term t, int flags = 0, char *buf=NULL, size_t sz = 0, size_t *fsz = NULL )
|
||||
{
|
||||
try {
|
||||
text =
|
||||
Yap_TermToString(Term t, buf, sz, fsz, ENC_UTF8, flags);
|
||||
} catch(const std::range_error& e) {
|
||||
Yap_Error(SYSTEM_ERROR_INTERNAL, TermNil, "failed to convert the number", s);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
Reference in New Issue