indenting
This commit is contained in:
parent
5fcf173d0a
commit
110a23b209
86
C/text.c
86
C/text.c
@ -39,21 +39,24 @@ void *buf__, *cur__;
|
|||||||
|
|
||||||
#define init_alloc(I) \
|
#define init_alloc(I) \
|
||||||
void *ov__ = TR, *ocur__ = LOCAL_ScannerStack; \
|
void *ov__ = TR, *ocur__ = LOCAL_ScannerStack; \
|
||||||
if (!LOCAL_ScannerStack) LOCAL_ScannerStack = (char *)TR
|
if (!LOCAL_ScannerStack) \
|
||||||
|
LOCAL_ScannerStack = (char *)TR
|
||||||
|
|
||||||
#define mark_stack() \
|
#define mark_stack() \
|
||||||
void *otr__ = TR; void * ost__ = LOCAL_ScannerStack; TR =(tr_fr_ptr)LOCAL_ScannerStack
|
void *otr__ = TR; \
|
||||||
|
void *ost__ = LOCAL_ScannerStack; \
|
||||||
|
TR = (tr_fr_ptr)LOCAL_ScannerStack
|
||||||
|
|
||||||
#define restore_stack() \
|
#define restore_stack() \
|
||||||
TR = otr__; LOCAL_ScannerStack = ost__
|
TR = otr__; \
|
||||||
|
LOCAL_ScannerStack = ost__
|
||||||
|
|
||||||
#define export_buf(s) {}
|
#define export_buf(s) \
|
||||||
|
{}
|
||||||
|
|
||||||
#define unprotect_stack(s) \
|
#define unprotect_stack(s) TR = ov__, LOCAL_ScannerStack = ocur__
|
||||||
TR = ov__, LOCAL_ScannerStack = ocur__
|
|
||||||
// LOCAL_ScannerStack = ov__, TR = ot__
|
// LOCAL_ScannerStack = ov__, TR = ot__
|
||||||
|
|
||||||
|
|
||||||
static bool alloc_ovfl(size_t sz) {
|
static bool alloc_ovfl(size_t sz) {
|
||||||
return (char *)+(sz + 4096) > (char *)LOCAL_TrailTop;
|
return (char *)+(sz + 4096) > (char *)LOCAL_TrailTop;
|
||||||
}
|
}
|
||||||
@ -194,8 +197,7 @@ static Int SkipListCodes(unsigned char **bufp, Term *l, Term **tailp,
|
|||||||
return length;
|
return length;
|
||||||
}
|
}
|
||||||
|
|
||||||
static unsigned char *latin2utf8(seq_tv_t *inp, size_t
|
static unsigned char *latin2utf8(seq_tv_t *inp, size_t *lengp) {
|
||||||
*lengp) {
|
|
||||||
unsigned char *b0 = inp->val.uc;
|
unsigned char *b0 = inp->val.uc;
|
||||||
size_t sz = *lengp = strlen(inp->val.c);
|
size_t sz = *lengp = strlen(inp->val.c);
|
||||||
sz *= 2;
|
sz *= 2;
|
||||||
@ -214,7 +216,6 @@ static unsigned char *latin2utf8(seq_tv_t *inp, size_t
|
|||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static unsigned char *wchar2utf8(seq_tv_t *inp, size_t *lengp) {
|
static unsigned char *wchar2utf8(seq_tv_t *inp, size_t *lengp) {
|
||||||
*lengp = wcslen(inp->val.w);
|
*lengp = wcslen(inp->val.w);
|
||||||
size_t sz = *lengp * 4;
|
size_t sz = *lengp * 4;
|
||||||
@ -306,15 +307,12 @@ unsigned char *Yap_readText(seq_tv_t *inp, size_t *lengp) {
|
|||||||
if (!(inp->type & YAP_STRING_TERM)) {
|
if (!(inp->type & YAP_STRING_TERM)) {
|
||||||
if (IsVarTerm(inp->val.t)) {
|
if (IsVarTerm(inp->val.t)) {
|
||||||
LOCAL_Error_TYPE = INSTANTIATION_ERROR;
|
LOCAL_Error_TYPE = INSTANTIATION_ERROR;
|
||||||
} else if (!IsAtomTerm(inp->val.t) &&
|
} else if (!IsAtomTerm(inp->val.t) && inp->type == YAP_STRING_ATOM) {
|
||||||
inp->type == YAP_STRING_ATOM) {
|
|
||||||
LOCAL_Error_TYPE = TYPE_ERROR_ATOM;
|
LOCAL_Error_TYPE = TYPE_ERROR_ATOM;
|
||||||
} else if (!IsStringTerm(inp->val.t) &&
|
} else if (!IsStringTerm(inp->val.t) && inp->type == YAP_STRING_STRING) {
|
||||||
inp->type == YAP_STRING_STRING) {
|
|
||||||
LOCAL_Error_TYPE = TYPE_ERROR_STRING;
|
LOCAL_Error_TYPE = TYPE_ERROR_STRING;
|
||||||
} else if (!IsPairOrNilTerm(inp->val.t) && !IsStringTerm(inp->val.t) &&
|
} else if (!IsPairOrNilTerm(inp->val.t) && !IsStringTerm(inp->val.t) &&
|
||||||
inp->type ==
|
inp->type == (YAP_STRING_ATOMS_CODES | YAP_STRING_STRING)) {
|
||||||
(YAP_STRING_ATOMS_CODES | YAP_STRING_STRING)) {
|
|
||||||
LOCAL_Error_TYPE = TYPE_ERROR_LIST;
|
LOCAL_Error_TYPE = TYPE_ERROR_LIST;
|
||||||
} else if (!IsNumTerm(inp->val.t) &&
|
} else if (!IsNumTerm(inp->val.t) &&
|
||||||
(inp->type & (YAP_STRING_INT | YAP_STRING_FLOAT |
|
(inp->type & (YAP_STRING_INT | YAP_STRING_FLOAT |
|
||||||
@ -342,14 +340,14 @@ unsigned char *Yap_readText(seq_tv_t *inp, size_t *lengp) {
|
|||||||
if (IsStringTerm(inp->val.t) && inp->type & YAP_STRING_STRING) {
|
if (IsStringTerm(inp->val.t) && inp->type & YAP_STRING_STRING) {
|
||||||
// this is a term, extract to a buffer, and representation is wide
|
// this is a term, extract to a buffer, and representation is wide
|
||||||
// Yap_DebugPlWriteln(inp->val.t);
|
// Yap_DebugPlWriteln(inp->val.t);
|
||||||
return UStringOfTerm(inp->val.t);
|
return (unsigned char *)UStringOfTerm(inp->val.t);
|
||||||
}
|
}
|
||||||
if (((inp->type & (YAP_STRING_CODES | YAP_STRING_ATOMS)) ==
|
if (((inp->type & (YAP_STRING_CODES | YAP_STRING_ATOMS)) ==
|
||||||
(YAP_STRING_CODES | YAP_STRING_ATOMS)) && IsPairOrNilTerm(inp->val.t)) {
|
(YAP_STRING_CODES | YAP_STRING_ATOMS)) &&
|
||||||
|
IsPairOrNilTerm(inp->val.t)) {
|
||||||
// Yap_DebugPlWriteln(inp->val.t);
|
// Yap_DebugPlWriteln(inp->val.t);
|
||||||
return inp->val.uc =
|
return inp->val.uc =
|
||||||
Yap_ListToBuffer(s0, inp->val.t, inp, &wide, lengp
|
Yap_ListToBuffer(s0, inp->val.t, inp, &wide, lengp PASS_REGS);
|
||||||
PASS_REGS);
|
|
||||||
// this is a term, extract to a sfer, and representation is wide
|
// this is a term, extract to a sfer, and representation is wide
|
||||||
}
|
}
|
||||||
if (inp->type & YAP_STRING_CODES && IsPairOrNilTerm(inp->val.t)) {
|
if (inp->type & YAP_STRING_CODES && IsPairOrNilTerm(inp->val.t)) {
|
||||||
@ -404,8 +402,7 @@ unsigned char *Yap_readText(seq_tv_t *inp, size_t *lengp) {
|
|||||||
s = 0;
|
s = 0;
|
||||||
else
|
else
|
||||||
s = Malloc(0);
|
s = Malloc(0);
|
||||||
if (!Yap_mpz_to_string(Yap_BigIntOfTerm(inp->val.t), s, MaxTmp() - 1,
|
if (!Yap_mpz_to_string(Yap_BigIntOfTerm(inp->val.t), s, MaxTmp() - 1, 10)) {
|
||||||
10)) {
|
|
||||||
AUX_ERROR(inp->val.t, MaxTmp(PASS_REGS1), s, char);
|
AUX_ERROR(inp->val.t, MaxTmp(PASS_REGS1), s, char);
|
||||||
}
|
}
|
||||||
*lengp = strlen(s);
|
*lengp = strlen(s);
|
||||||
@ -460,14 +457,15 @@ static Term write_strings(unsigned char *s0, seq_tv_t *out,
|
|||||||
utf8proc_int32_t chr;
|
utf8proc_int32_t chr;
|
||||||
int off;
|
int off;
|
||||||
off = get_utf8(cp, -1, &chr);
|
off = get_utf8(cp, -1, &chr);
|
||||||
if (off > 0) cp += off;
|
if (off > 0)
|
||||||
|
cp += off;
|
||||||
else {
|
else {
|
||||||
// Yap_Error(TYPE_ERROR_TEXT, t, NULL);
|
// Yap_Error(TYPE_ERROR_TEXT, t, NULL);
|
||||||
cp++;
|
cp++;
|
||||||
}
|
}
|
||||||
off = put_utf8(buf, chr);
|
off = put_utf8(buf, chr);
|
||||||
if (off > 0) buf += off;
|
if (off > 0)
|
||||||
|
buf += off;
|
||||||
}
|
}
|
||||||
if (max >= min)
|
if (max >= min)
|
||||||
*buf++ = '\0';
|
*buf++ = '\0';
|
||||||
@ -582,7 +580,8 @@ static Atom write_atom(void *s0, seq_tv_t *out, size_t leng USES_REGS) {
|
|||||||
{
|
{
|
||||||
unsigned char *s = s0;
|
unsigned char *s = s0;
|
||||||
utf8proc_int32_t chr;
|
utf8proc_int32_t chr;
|
||||||
while (*s && get_utf8(s, -1, &chr) == 1) s++;
|
while (*s && get_utf8(s, -1, &chr) == 1)
|
||||||
|
s++;
|
||||||
if (*s == '\0')
|
if (*s == '\0')
|
||||||
return out->val.a = Yap_LookupAtom((char *)s0);
|
return out->val.a = Yap_LookupAtom((char *)s0);
|
||||||
s = s0;
|
s = s0;
|
||||||
@ -614,7 +613,7 @@ size_t write_buffer(unsigned char *s0, seq_tv_t *out, size_t leng USES_REGS) {
|
|||||||
if (out->enc == ENC_ISO_UTF8) {
|
if (out->enc == ENC_ISO_UTF8) {
|
||||||
room_end = strlen((char *)s0) + 1;
|
room_end = strlen((char *)s0) + 1;
|
||||||
if (out->val.uc == NULL) {
|
if (out->val.uc == NULL) {
|
||||||
out->val.uc = malloc(room_end);
|
out->val.uc = malloc(room_end < 16 ? 16 : room_end);
|
||||||
}
|
}
|
||||||
if (out->val.uc != s0) {
|
if (out->val.uc != s0) {
|
||||||
strcpy(out->val.c, (char *)s0);
|
strcpy(out->val.c, (char *)s0);
|
||||||
@ -682,8 +681,7 @@ static size_t write_length(const unsigned char *s0, seq_tv_t *out,
|
|||||||
return leng;
|
return leng;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Term write_number(unsigned char *s, seq_tv_t *out, int size
|
static Term write_number(unsigned char *s, seq_tv_t *out, int size USES_REGS) {
|
||||||
USES_REGS) {
|
|
||||||
Term t;
|
Term t;
|
||||||
mark_stack();
|
mark_stack();
|
||||||
t = Yap_StringToNumberTerm((char *)s, &out->enc);
|
t = Yap_StringToNumberTerm((char *)s, &out->enc);
|
||||||
@ -695,8 +693,7 @@ static Term string_to_term(void *s, seq_tv_t *out, size_t leng USES_REGS) {
|
|||||||
Term o;
|
Term o;
|
||||||
mark_stack();
|
mark_stack();
|
||||||
o = out->val.t =
|
o = out->val.t =
|
||||||
Yap_StringToTerm(s, strlen(s) + 1, &out->enc,
|
Yap_StringToTerm(s, strlen(s) + 1, &out->enc, GLOBAL_MaxPriority, NULL);
|
||||||
GLOBAL_MaxPriority, NULL);
|
|
||||||
restore_stack();
|
restore_stack();
|
||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
@ -707,11 +704,8 @@ bool write_Text(unsigned char *inp, seq_tv_t *out, size_t leng USES_REGS) {
|
|||||||
if ((out->val.t = string_to_term(inp, out, leng PASS_REGS)) != 0L)
|
if ((out->val.t = string_to_term(inp, out, leng PASS_REGS)) != 0L)
|
||||||
return out->val.t != 0;
|
return out->val.t != 0;
|
||||||
}
|
}
|
||||||
if (out->type &
|
if (out->type & (YAP_STRING_INT | YAP_STRING_FLOAT | YAP_STRING_BIG)) {
|
||||||
(YAP_STRING_INT | YAP_STRING_FLOAT | YAP_STRING_BIG)) {
|
if ((out->val.t = write_number(inp, out, leng PASS_REGS)) != 0L) {
|
||||||
if (
|
|
||||||
(out->val.t = write_number(inp, out, leng PASS_REGS)) !=
|
|
||||||
0L) {
|
|
||||||
// Yap_DebugPlWriteln(out->val.t);
|
// Yap_DebugPlWriteln(out->val.t);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@ -721,8 +715,7 @@ bool write_Text(unsigned char *inp, seq_tv_t *out, size_t leng USES_REGS) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (out->type & (YAP_STRING_ATOM)) {
|
if (out->type & (YAP_STRING_ATOM)) {
|
||||||
if (
|
if (write_atom(inp, out, leng PASS_REGS) != NIL) {
|
||||||
write_atom(inp, out, leng PASS_REGS) != NIL) {
|
|
||||||
Atom at = out->val.a;
|
Atom at = out->val.a;
|
||||||
if (at && (out->type & YAP_STRING_OUTPUT_TERM))
|
if (at && (out->type & YAP_STRING_OUTPUT_TERM))
|
||||||
out->val.t = MkAtomTerm(at);
|
out->val.t = MkAtomTerm(at);
|
||||||
@ -766,8 +759,7 @@ bool write_Text(unsigned char *inp, seq_tv_t *out, size_t leng USES_REGS) {
|
|||||||
out->val.t = write_number(inp, out, leng PASS_REGS);
|
out->val.t = write_number(inp, out, leng PASS_REGS);
|
||||||
// Yap_DebugPlWriteln(out->val.t);
|
// Yap_DebugPlWriteln(out->val.t);
|
||||||
return out->val.t != 0;
|
return out->val.t != 0;
|
||||||
default: {
|
default: {}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -889,8 +881,9 @@ static unsigned char *concat(int n, unsigned char *sv[] USES_REGS) {
|
|||||||
buf = Malloc(room + 1);
|
buf = Malloc(room + 1);
|
||||||
buf0 = (unsigned char *)buf;
|
buf0 = (unsigned char *)buf;
|
||||||
for (i = 0; i < n; i++) {
|
for (i = 0; i < n; i++) {
|
||||||
buf = strcpy(buf, (char *) sv[i]);
|
char *s = (char *)sv[i];
|
||||||
buf += strlen( sv[i] );
|
buf = strcpy(buf, s);
|
||||||
|
buf += strlen(s);
|
||||||
}
|
}
|
||||||
return buf0;
|
return buf0;
|
||||||
}
|
}
|
||||||
@ -983,8 +976,7 @@ bool Yap_Splice_Text(int n, size_t cuts[], seq_tv_t *inp,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
l0 = l - l1;
|
l0 = l - l1;
|
||||||
if (cmp_Text(skip_utf8((const unsigned char *) buf, l0), buf1,
|
if (cmp_Text(skip_utf8((const unsigned char *)buf, l0), buf1, l1) !=
|
||||||
l1) !=
|
|
||||||
0) {
|
0) {
|
||||||
unprotect_stack(NULL);
|
unprotect_stack(NULL);
|
||||||
return false;
|
return false;
|
||||||
@ -1095,8 +1087,7 @@ const char *Yap_PredIndicatorToUTF8String(PredEntry *ap) {
|
|||||||
if (ap->ModuleOfPred == IDB_MODULE) {
|
if (ap->ModuleOfPred == IDB_MODULE) {
|
||||||
if (ap->PredFlags & NumberDBPredFlag) {
|
if (ap->PredFlags & NumberDBPredFlag) {
|
||||||
Int key = ap->src.IndxId;
|
Int key = ap->src.IndxId;
|
||||||
snprintf(s, smax - s, "%"
|
snprintf(s, smax - s, "%" PRIdPTR, key);
|
||||||
PRIdPTR, key);
|
|
||||||
return LOCAL_FileNameBuf;
|
return LOCAL_FileNameBuf;
|
||||||
} else if (ap->PredFlags & AtomDBPredFlag) {
|
} else if (ap->PredFlags & AtomDBPredFlag) {
|
||||||
at = (Atom)(ap->FunctorOfPred);
|
at = (Atom)(ap->FunctorOfPred);
|
||||||
@ -1119,8 +1110,7 @@ const char *Yap_PredIndicatorToUTF8String(PredEntry *ap) {
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
s += strlen(s);
|
s += strlen(s);
|
||||||
snprintf(s, smax - s, "/%"
|
snprintf(s, smax - s, "/%" PRIdPTR, arity);
|
||||||
PRIdPTR, arity);
|
|
||||||
return s0;
|
return s0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user