rev 608 - in trunk: . include/prothon pr/test src
SVN User <[email protected]> Sat, 12 Jun 2004 15:44:20 -0400
| Newsgroups | gmane.comp.lang.prothon.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: mark
Date: 2004-06-12 15:44:17 -0400 (Sat, 12 Jun 2004)
New Revision: 608
Modified:
trunk/STATUS.txt
trunk/include/prothon/prothon.h
trunk/pr/test/test.pr
trunk/src/builtins-attrdict.c
trunk/src/builtins-bytes.c
trunk/src/builtins-core.c
trunk/src/builtins-dict.c
trunk/src/builtins-float.c
trunk/src/builtins-int.c
trunk/src/builtins-list.c
trunk/src/builtins-protolist.c
trunk/src/builtins-string.c
trunk/src/builtins-tuple.c
trunk/src/console.c
trunk/src/symbol.c
trunk/src/sys.c
Log:
changed Len, Cmp, len, cmp, chr, ord to
len, cmp, len_, cmp_, chr_, ord_
Modified: trunk/STATUS.txt
===================================================================
--- trunk/STATUS.txt 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/STATUS.txt 2004-06-12 19:44:17 UTC (rev 608)
@@ -5,6 +5,7 @@
http://www.prothon.org/pipermail/prothon-user/2004-June/001895.html
--- add int.str_(spec), float.str_(spec), and vars_
+--- Allow {$var:spec} and {$$:spec}
--- support list and dictionary object params in string.fmt()
--- add Object.data_ (builtins-databytes.c)
Modified: trunk/include/prothon/prothon.h
===================================================================
--- trunk/include/prothon/prothon.h 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/include/prothon/prothon.h 2004-06-12 19:44:17 UTC (rev 608)
@@ -380,7 +380,7 @@
NE__QUES,
EQ__QUES,
- CMP,
+ CMP_,
OR_,
XOR_,
AND_,
@@ -449,7 +449,7 @@
DELITEM_,
OBJLIST_,
DEL_,
- LEN,
+ LEN_,
MAX,
MIN,
COPY,
@@ -1045,7 +1045,7 @@
#define FORM_RPARAM (list2(ist, SYM(RPARAM),NULL))
// FORM_PARAM2: same for 2 right params
-// example: Cmp(a,b)
+// example: cmp(a,b)
#define FORM_PARAM2 (list4(ist, SYM(PARAM1), NULL, SYM(PARAM2), NULL))
// FORM_STARn_PARAM: convenience macros for variable number of formal right parameters
Modified: trunk/pr/test/test.pr
===================================================================
--- trunk/pr/test/test.pr 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/pr/test/test.pr 2004-06-12 19:44:17 UTC (rev 608)
@@ -1,3 +1,13 @@
#!/usr/bin/env prothon
-print "*{0:{1}}*".fmt("abc",10)
\ No newline at end of file
+# -i -dpbc ..\pr\test\test.pr
+
+try:
+ print 0x123.chr_()
+except Exception, e:
+ print e
+
+try:
+ 0x123456789.chr_()
+except Exception, e:
+ print e
Modified: trunk/src/builtins-attrdict.c
===================================================================
--- trunk/src/builtins-attrdict.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-attrdict.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -247,7 +247,7 @@
return NULL;
}
-DEF(AttrDict, len, NULL) {
+DEF(AttrDict, len_, NULL) {
obj_p obj;
int res;
BIN_CONTENT_CHK(AttrDict);
@@ -308,7 +308,7 @@
MODULE_ADD_SYM(AttrDict, str_);
MODULE_ADD_SYM(AttrDict, hasKey_QUES);
MODULE_ADD_SYM(AttrDict, items);
- MODULE_ADD_SYM(AttrDict, len);
+ MODULE_ADD_SYM(AttrDict, len_);
MODULE_ADD_SYM(AttrDict, keys);
MODULE_ADD_SYM(AttrDict, values);
MODULE_ADD_SYM(AttrDict, get);
Modified: trunk/src/builtins-bytes.c
===================================================================
--- trunk/src/builtins-bytes.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-bytes.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -242,7 +242,7 @@
return NULL;
}
-DEF(Bytes, cmp, FORM_RPARAM){
+DEF(Bytes, cmp_, FORM_RPARAM){
obj_p other = parms[1];
size_t i, len, len1, len2;
u8_t *p1, *p2, str_flg = FALSE;
@@ -323,7 +323,7 @@
return obj;
}
-DEF(Bytes, len, NULL) {
+DEF(Bytes, len_, NULL) {
BIN_CONTENT_CHK(Bytes);
return NEW_INT(bytes_len(self));
}
@@ -399,8 +399,8 @@
MODULE_ADD_SYM(Bytes, bool__QUES);
MODULE_ADD_SYM(Bytes, str_);
MODULE_ADD_SYM(Bytes, hash_);
- MODULE_ADD_SYM(Bytes, cmp);
- MODULE_ADD_SYM(Bytes, len);
+ MODULE_ADD_SYM(Bytes, cmp_);
+ MODULE_ADD_SYM(Bytes, len_);
MODULE_ADD_SYM(Bytes, getItem_);
MODULE_ADD_SYM(Bytes, add_);
MODULE_ADD_SYM(Bytes, mul_);
Modified: trunk/src/builtins-core.c
===================================================================
--- trunk/src/builtins-core.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-core.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -190,12 +190,12 @@
return NULL;
}
-DEF(Object, Len, FORM_RPARAM) {
- return call_func0(ist, parms[1], SYM(LEN));
+DEF(Object, len, FORM_RPARAM) {
+ return call_func0(ist, parms[1], SYM(LEN_));
}
-DEF(Object, Cmp, FORM_PARAM2) {
- return call_func1(ist, parms[1], SYM(CMP), parms[3]);
+DEF(Object, cmp, FORM_PARAM2) {
+ return call_func1(ist, parms[1], SYM(CMP_), parms[3]);
}
DEF(Object, Max, FORM_RPARAM) {
@@ -306,7 +306,7 @@
}
DEF(Object, eq__QUES, FORM_RPARAM) {
- obj_p cmp_obj = call_func1(ist, self, SYM(CMP), parms[1]);
+ obj_p cmp_obj = call_func1(ist, self, SYM(CMP_), parms[1]);
if(catch_exception(ist, OBJ(FUNCNOTFOUND_EXC), NULL))
return OBJ(PR_FALSE);
if (cmp_obj && *((i64_t*)(obj_dataptr(cmp_obj))) == 0)
@@ -324,25 +324,25 @@
}
DEF(Object, lt__QUES, FORM_RPARAM) {
- obj_p cmp_obj = call_func1(ist, self, SYM(CMP), parms[1]); if_exc_return NULL;
+ obj_p cmp_obj = call_func1(ist, self, SYM(CMP_), parms[1]); if_exc_return NULL;
if (cmp_obj && *((i64_t*)(obj_dataptr(cmp_obj))) < 0) return OBJ(PR_TRUE);
else return OBJ(PR_FALSE);
}
DEF(Object, le__QUES, FORM_RPARAM) {
- obj_p cmp_obj = call_func1(ist, self, SYM(CMP), parms[1]); if_exc_return NULL;
+ obj_p cmp_obj = call_func1(ist, self, SYM(CMP_), parms[1]); if_exc_return NULL;
if (cmp_obj && *((i64_t*)(obj_dataptr(cmp_obj))) <= 0) return OBJ(PR_TRUE);
else return OBJ(PR_FALSE);
}
DEF(Object, gt__QUES, FORM_RPARAM) {
- obj_p cmp_obj = call_func1(ist, self, SYM(CMP), parms[1]); if_exc_return NULL;
+ obj_p cmp_obj = call_func1(ist, self, SYM(CMP_), parms[1]); if_exc_return NULL;
if (cmp_obj && *((i64_t*)(obj_dataptr(cmp_obj))) > 0) return OBJ(PR_TRUE);
else return OBJ(PR_FALSE);
}
DEF(Object, ge__QUES, FORM_RPARAM) {
- obj_p cmp_obj = call_func1(ist, self, SYM(CMP), parms[1]); if_exc_return NULL;
+ obj_p cmp_obj = call_func1(ist, self, SYM(CMP_), parms[1]); if_exc_return NULL;
if (cmp_obj && *((i64_t*)(obj_dataptr(cmp_obj))) >= 0) return OBJ(PR_TRUE);
else return OBJ(PR_FALSE);
}
@@ -414,7 +414,7 @@
DEF(False, str_, NULL) { return NEW_STRING("False"); }
DEF(False, bool__QUES, NULL) { return False_OBJ; }
-DEF(False, cmp, FORM_RPARAM) {
+DEF(False, cmp_, FORM_RPARAM) {
if (parms[1] == False_OBJ)
return NEW_INT(0);
else
@@ -433,7 +433,7 @@
DEF(True, str_, NULL) { return NEW_STRING("True"); }
DEF(True, bool__QUES, NULL) { return True_OBJ; }
-DEF(True, cmp, FORM_RPARAM) {
+DEF(True, cmp_, FORM_RPARAM) {
if (parms[1] == OBJ(PR_FALSE))
return NEW_INT(1);
else if (parms[1] == True_OBJ)
@@ -849,8 +849,8 @@
MODULE_ADD_SYM(Object, setProto);
MODULE_ADD_SYM(Object, addProto);
MODULE_ADD_SYM(Object, protoChain);
- MODULE_ADD_SYM(Object, Cmp);
- MODULE_ADD_SYM(Object, Len);
+ MODULE_ADD_SYM(Object, cmp);
+ MODULE_ADD_SYM(Object, len);
MODULE_ADD_SYM(Object, Max);
MODULE_ADD_SYM(Object, Min);
MODULE_ADD_SYM(Object, getItem_);
@@ -884,12 +884,12 @@
MODULE_SUB_INIT(False);
MODULE_ADD_SYM(False, str_);
MODULE_ADD_SYM(False, bool__QUES);
- MODULE_ADD_SYM(False, cmp);
+ MODULE_ADD_SYM(False, cmp_);
MODULE_SUB_INIT(True);
MODULE_ADD_SYM(True, str_);
MODULE_ADD_SYM(True, bool__QUES);
- MODULE_ADD_SYM(True, cmp);
+ MODULE_ADD_SYM(True, cmp_);
MODULE_ADD_SYM(True, getCmp_);
MODULE_SUB_INIT(None);
Modified: trunk/src/builtins-dict.c
===================================================================
--- trunk/src/builtins-dict.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-dict.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -476,7 +476,7 @@
return NULL;
}
-DEF(Dict, len, NULL) {
+DEF(Dict, len_, NULL) {
BIN_CONTENT_CHK(Dict);
return NEW_INT(dict_len(ist, self));
}
@@ -604,7 +604,7 @@
MODULE_ADD_SYM(Dict, str_);
MODULE_ADD_SYM(Dict, hasKey_QUES);
MODULE_ADD_SYM(Dict, items);
- MODULE_ADD_SYM(Dict, len);
+ MODULE_ADD_SYM(Dict, len_);
MODULE_ADD_SYM(Dict, keys);
MODULE_ADD_SYM(Dict, values);
MODULE_ADD_SYM(Dict, get);
Modified: trunk/src/builtins-float.c
===================================================================
--- trunk/src/builtins-float.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-float.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -296,7 +296,7 @@
}
-DEF(Float, cmp, FORM_RPARAM){
+DEF(Float, cmp_, FORM_RPARAM){
double float_other;
obj_p other = parms[1];
BIN_CONTENT_CHK(Float);
@@ -392,7 +392,7 @@
MODULE_ADD_SYM(Float, str_);
MODULE_ADD_SYM(Float, hash_);
MODULE_ADD_SYM(Float, eq__QUES);
- MODULE_ADD_SYM(Float, cmp);
+ MODULE_ADD_SYM(Float, cmp_);
MODULE_ADD_SYM(Float, rCmp_);
MODULE_ADD_SYM(Float, abs_);
MODULE_ADD_SYM(Float, neg_);
Modified: trunk/src/builtins-int.c
===================================================================
--- trunk/src/builtins-int.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-int.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -2359,7 +2359,7 @@
return new_int_long_obj(ist, long_pow(ist, a, b, NULL));
}
-DEF(Int, cmp, FORM_RPARAM){
+DEF(Int, cmp_, FORM_RPARAM){
obj_p other = parms[1];
BIN_CONTENT_CHK(Int);
if (!is_Int(other)) {
@@ -2563,11 +2563,20 @@
return gen_obj;
}
-DEF(Int, chr, NULL) {
- char s[1];
+DEF(Int, chr_, NULL) {
+ ch3_t ch3;
+ i32_t val;
BIN_CONTENT_CHK(Int);
- s[0] = (char) int2i32t(ist, self);
- return NEW_STRINGN(s, 1);
+ val = int2i32t(ist, self);
+ if (val < 0 || val >= 0x10ffff) {
+ raise_exception( ist, OBJ(VALUE_EXC),
+ "integer value outside of unicode character range" );
+ return NULL;
+ }
+ ch3.b0 = val & 0xff;
+ ch3.b1 = val >> 8 & 0xff;
+ ch3.b2 = val >> 16 & 0xff;
+ return NEW_STRING_CH3(&ch3, 1);
}
@@ -2585,7 +2594,7 @@
( self->data_type == DATA_TYPE_IMMDATA &&
limit->data_type == DATA_TYPE_IMMDATA ?
(self->data.i64 == limit->data.i64) :
- !(call_func1(ist, self, SYM(CMP), limit)->data.i64) ) ) {
+ !(call_func1(ist, self, SYM(CMP_), limit)->data.i64) ) ) {
if (limit) {
read_unlock(ist, self);
del_attr(ist, self, SYM_LIMIT);
@@ -2603,7 +2612,7 @@
int_imm_value(self)++;
def_write_unlock(self);
} else {
- call_func1(ist, self, SYM(CMP), tmp = NEW_INT(1));
+ call_func1(ist, self, SYM(CMP_), tmp = NEW_INT(1));
del_unlock(tmp);
}
return res;
@@ -2623,8 +2632,8 @@
MODULE_ADD_SYM(Int, str_);
MODULE_ADD_SYM(Int, hash_);
MODULE_ADD_SYM(Int, eq__QUES);
- MODULE_ADD_SYM(Int, cmp);
- MODULE_ADD_SYM(Int, chr);
+ MODULE_ADD_SYM(Int, cmp_);
+ MODULE_ADD_SYM(Int, chr_);
MODULE_ADD_SYM(Int, abs_);
MODULE_ADD_SYM(Int, neg_);
MODULE_ADD_SYM(Int, pos_);
Modified: trunk/src/builtins-list.c
===================================================================
--- trunk/src/builtins-list.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-list.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -249,7 +249,7 @@
}
arr[0] = NULL;
arr[1] = b;
- res = call_func(ist, a, SYM(CMP), 2, arr, NULL);
+ res = call_func(ist, a, SYM(CMP_), 2, arr, NULL);
if_exc_return 0;
return (res->data.i64 < 0);
}
Modified: trunk/src/builtins-protolist.c
===================================================================
--- trunk/src/builtins-protolist.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-protolist.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -215,7 +215,7 @@
return res;
}
-DEF(ProtoList, len, NULL) {
+DEF(ProtoList, len_, NULL) {
BIN_CONTENT_CHK(ProtoList);
return NEW_INT(proto_len(ist, self->data.ptr));
}
@@ -231,7 +231,7 @@
MODULE_ADD_SYM(ProtoList, init_);
MODULE_ADD_SYM(ProtoList, str_);
MODULE_ADD_SYM(ProtoList, eq__QUES);
- MODULE_ADD_SYM(ProtoList, len);
+ MODULE_ADD_SYM(ProtoList, len_);
MODULE_ADD_SYM(ProtoList, rIn__QUES);
MODULE_ADD_SYM(ProtoList, rNotIn__QUES);
MODULE_ADD_SYM(ProtoList, getItem_);
Modified: trunk/src/builtins-string.c
===================================================================
--- trunk/src/builtins-string.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-string.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -489,7 +489,7 @@
return NULL;
}
-DEF(String, cmp, FORM_RPARAM){
+DEF(String, cmp_, FORM_RPARAM){
obj_p other = parms[1];
data_size_t i, slen, olen, len;
ch3_p sptr, optr;
@@ -727,10 +727,10 @@
return res;
}
-DEF(String, ord, NULL) {
+DEF(String, ord_, NULL) {
BIN_CONTENT_CHK(String);
if (!pr_strlen(self)) {
- raise_exception(ist, OBJ(VALUE_EXC), "ord not valid on empty string");
+ raise_exception(ist, OBJ(VALUE_EXC), "ord_ not valid on empty string");
return NULL;
}
return NEW_INT(ORD(pr_ch3ptr(self)));
@@ -817,7 +817,7 @@
else return OBJ(PR_TRUE);
}
-DEF(String, len, NULL) {
+DEF(String, len_, NULL) {
BIN_CONTENT_CHK(String);
return NEW_INT(pr_strlen(self));
}
@@ -1134,9 +1134,9 @@
MODULE_ADD_SYM(String, bool__QUES);
MODULE_ADD_SYM(String, str_);
MODULE_ADD_SYM(String, hash_);
- MODULE_ADD_SYM(String, cmp);
- MODULE_ADD_SYM(String, ord);
- MODULE_ADD_SYM(String, len);
+ MODULE_ADD_SYM(String, cmp_);
+ MODULE_ADD_SYM(String, ord_);
+ MODULE_ADD_SYM(String, len_);
MODULE_ADD_SYM(String, getItem_);
MODULE_ADD_SYM(String, add_);
MODULE_ADD_SYM(String, mul_);
Modified: trunk/src/builtins-tuple.c
===================================================================
--- trunk/src/builtins-tuple.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/builtins-tuple.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -129,7 +129,7 @@
return self;
}
-DEF(Tuple, cmp, FORM_RPARAM) {
+DEF(Tuple, cmp_, FORM_RPARAM) {
int i, llen, tlen, mlen;
obj_p res;
obj_p self_item, tgt_item, tgt_list;
@@ -145,7 +145,7 @@
for(i=0; i < mlen; i++) {
self_item = list_item(ist, self, i);
tgt_item = list_item(ist, tgt_list, i);
- res = call_func1(ist, self_item, SYM(CMP), tgt_item); if_exc_return NULL;
+ res = call_func1(ist, self_item, SYM(CMP_), tgt_item); if_exc_return NULL;
if (res->data.i64)
return NEW_INT(res->data.i64);
}
@@ -243,7 +243,7 @@
return res;
}
-DEF(Tuple, len, NULL) {
+DEF(Tuple, len_, NULL) {
BIN_CONTENT_CHK(Tuple);
return NEW_INT(list_len(ist, self));
}
@@ -254,11 +254,11 @@
BIN_CONTENT_CHK(Tuple);
if (llen == 0) return OBJ(NONE);
if (llen == 1) return list_item(ist, self, 0);
- cmp_obj = call_func1(ist, list_item(ist, self, 0), SYM(CMP), list_item(ist, self, 1)); if_exc_return NULL;
+ cmp_obj = call_func1(ist, list_item(ist, self, 0), SYM(CMP_), list_item(ist, self, 1)); if_exc_return NULL;
if (cmp_obj->data.i64 < 0) min_item = list_item(ist, self, 0);
else min_item = list_item(ist, self, 1);
for(i=2; i < llen; i++) {
- cmp_obj = call_func1(ist, list_item(ist, self, i), SYM(CMP), min_item); if_exc_return NULL;
+ cmp_obj = call_func1(ist, list_item(ist, self, i), SYM(CMP_), min_item); if_exc_return NULL;
if (cmp_obj->data.i64 < 0) min_item = list_item(ist, self, i);
}
return min_item;
@@ -270,11 +270,11 @@
BIN_CONTENT_CHK(Tuple);
if (llen == 0) return OBJ(NONE);
if (llen == 1) return list_item(ist, self, 0);
- cmp_obj = call_func1(ist, list_item(ist, self, 0), SYM(CMP), list_item(ist, self, 1)); if_exc_return NULL;
+ cmp_obj = call_func1(ist, list_item(ist, self, 0), SYM(CMP_), list_item(ist, self, 1)); if_exc_return NULL;
if (cmp_obj->data.i64 > 0) max_item = list_item(ist, self, 0);
else max_item = list_item(ist, self, 1);
for(i=2; i < llen; i++) {
- cmp_obj = call_func1(ist, list_item(ist, self, i), SYM(CMP), max_item); if_exc_return NULL;
+ cmp_obj = call_func1(ist, list_item(ist, self, i), SYM(CMP_), max_item); if_exc_return NULL;
if (cmp_obj->data.i64 > 0) max_item = list_item(ist, self, i);
}
return max_item;
@@ -356,10 +356,10 @@
MODULE_ADD_SYM(Tuple, init_);
MODULE_ADD_SYM(Tuple, str_);
MODULE_ADD_SYM(Tuple, hash_);
- MODULE_ADD_SYM(Tuple, len);
+ MODULE_ADD_SYM(Tuple, len_);
MODULE_ADD_SYM(Tuple, min);
MODULE_ADD_SYM(Tuple, max);
- MODULE_ADD_SYM(Tuple, cmp);
+ MODULE_ADD_SYM(Tuple, cmp_);
MODULE_ADD_SYM(Tuple, eq__QUES);
MODULE_ADD_SYM(Tuple, count);
MODULE_ADD_SYM(Tuple, index);
Modified: trunk/src/console.c
===================================================================
--- trunk/src/console.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/console.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -88,14 +88,16 @@
char* ps1(isp ist){
obj_p prompt;
if (!sys) sys = get_attr(ist, OBJ(OBJECT), sym(ist, "Sys"));
- prompt = get_attr(ist, sys, sym(ist, "ps1"));
+ prompt = get_attr(ist, sys, sym(ist, "cons"));
+ prompt = get_attr(ist, prompt, sym(ist, "ps1"));
return pr2c_strptr(ist, prompt);
}
char* ps2(isp ist){
obj_p prompt;
if (!sys) sys = get_attr(ist, OBJ(OBJECT), sym(ist, "Sys"));
- prompt = get_attr(ist, sys, sym(ist, "ps2"));
+ prompt = get_attr(ist, sys, sym(ist, "cons"));
+ prompt = get_attr(ist, prompt, sym(ist, "ps2"));
return pr2c_strptr(ist, prompt);
}
Modified: trunk/src/symbol.c
===================================================================
--- trunk/src/symbol.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/symbol.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -76,7 +76,7 @@
{ "ge__QUES", 0 },
{ "ne__QUES", 0 },
{ "eq__QUES", 0 },
- { "cmp", 0 },
+ { "cmp_", 0 },
{ "or_", 0 },
{ "xor_", 0 },
{ "and_", 0 },
@@ -142,7 +142,7 @@
{ "delItem_", 0 },
{ "objList_", 0 }, // f3
{ "del_", 0 },
- { "len", 0 },
+ { "len_", 0 },
{ "max", 0 },
{ "min", 0 },
{ "copy", 0 },
Modified: trunk/src/sys.c
===================================================================
--- trunk/src/sys.c 2004-06-12 07:47:57 UTC (rev 607)
+++ trunk/src/sys.c 2004-06-12 19:44:17 UTC (rev 608)
@@ -137,7 +137,7 @@
int have_home = FALSE;
char *s, *d, path[1024], home[1024], *pp;
obj_p sys_path, vers_tuple;
- obj_p sys_module;
+ obj_p sys_module, cons_obj;
apr_dir_t *search_dir = NULL;
apr_finfo_t file_info;
apr_file_t *file_pth;
@@ -215,8 +215,11 @@
#else
set_attr(ist, sys_module, sym(ist, "platform"), NEW_STRING("unknown"));
#endif
- set_attr(ist, sys_module, sym(ist, "ps1"), NEW_STRING(">>> "));
- set_attr(ist, sys_module, sym(ist, "ps2"), NEW_STRING("... "));
+ cons_obj = new_object(ist, NULL);
+ set_obj_wracc(cons_obj, ACC_USER1);
+ set_attr(ist, sys_module, sym(ist, "cons"), cons_obj);
+ set_attr(ist, cons_obj, sym(ist, "ps1"), NEW_STRING(">>> "));
+ set_attr(ist, cons_obj, sym(ist, "ps2"), NEW_STRING("... "));
set_attr(ist, sys_module, sym(ist, "execpath"), NEW_STRING(prog_path));
set_attr(ist, sys_module, sym(ist, "argv"), argv_obj);