guile-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

guile/guile-core/libguile strings.c strop.c str...


From: Dirk Herrmann
Subject: guile/guile-core/libguile strings.c strop.c str...
Date: Tue, 26 Sep 2000 15:15:14 -0700

CVSROOT:        /cvs
Module name:    guile
Changes by:     Dirk Herrmann <address@hidden>  00/09/26 15:15:13

Modified files:
        guile-core/libguile: strings.c strop.c strports.c symbols.c 
                             unif.c symbols.h 

Log message:
        * Eliminated all calls to SCM_UCHARS.

CVSWeb URLs:
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/strings.c.diff?r1=1.39&r2=1.40
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/strop.c.diff?r1=1.41&r2=1.42
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/strports.c.diff?r1=1.61&r2=1.62
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/symbols.c.diff?r1=1.58&r2=1.59
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/unif.c.diff?r1=1.88&r2=1.89
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-core/libguile/symbols.h.diff?r1=1.35&r2=1.36

Patches:
Index: guile/guile-core/libguile/strings.c
diff -u guile/guile-core/libguile/strings.c:1.39 
guile/guile-core/libguile/strings.c:1.40
--- guile/guile-core/libguile/strings.c:1.39    Fri Sep 22 10:17:55 2000
+++ guile/guile-core/libguile/strings.c Tue Sep 26 15:15:13 2000
@@ -109,7 +109,7 @@
   }
 
   {
-    unsigned char *data = SCM_UCHARS (result);
+    unsigned char *data = SCM_STRING_UCHARS (result);
 
     while (SCM_NNULLP (chrs))
       {
@@ -226,7 +226,7 @@
     {
       SCM_VALIDATE_CHAR (2,chr);
       {
-       unsigned char *dst = SCM_UCHARS (res);
+       unsigned char *dst = SCM_STRING_UCHARS (res);
        char c = SCM_CHAR (chr);
        
        memset (dst, c, i);
@@ -270,7 +270,7 @@
   SCM_VALIDATE_RWSTRING (1,str);
   SCM_VALIDATE_INUM_RANGE (2,k,0,SCM_LENGTH(str));
   SCM_VALIDATE_CHAR (3,chr);
-  SCM_UCHARS (str)[SCM_INUM (k)] = SCM_CHAR (chr);
+  SCM_STRING_UCHARS (str)[SCM_INUM (k)] = SCM_CHAR (chr);
   return SCM_UNSPECIFIED;
 }
 #undef FUNC_NAME
@@ -320,7 +320,7 @@
     i += SCM_ROLENGTH (s);
   }
   res = scm_makstr (i, 0);
-  data = SCM_UCHARS (res);
+  data = SCM_STRING_UCHARS (res);
   for (l = args;SCM_NIMP (l);l = SCM_CDR (l)) {
     s = SCM_CAR (l);
     for (i = 0;i<SCM_ROLENGTH (s);i++) *data++ = SCM_ROUCHARS (s)[i];
Index: guile/guile-core/libguile/strop.c
diff -u guile/guile-core/libguile/strop.c:1.41 
guile/guile-core/libguile/strop.c:1.42
--- guile/guile-core/libguile/strop.c:1.41      Fri Sep 22 10:17:55 2000
+++ guile/guile-core/libguile/strop.c   Tue Sep 26 15:15:13 2000
@@ -375,21 +375,13 @@
            "@end example")
 #define FUNC_NAME s_scm_string_upcase_x
 {
-  register long k;
-  register unsigned char *cs;
-  SCM_ASRTGO (SCM_NIMP (v), badarg1);
-  k = SCM_LENGTH (v);
-  switch SCM_TYP7
-    (v)
-    {
-    case scm_tc7_string:
-      cs = SCM_UCHARS (v);
-      while (k--)
-       cs[k] = scm_upcase(cs[k]);
-      break;
-    default:
-    badarg1:SCM_WTA (1,v);
-    }
+  unsigned long k;
+
+  SCM_VALIDATE_STRING (1, v);
+
+  for (k = 0; k < SCM_LENGTH (v); ++k)
+    SCM_STRING_UCHARS (v) [k] = scm_upcase (SCM_STRING_UCHARS (v) [k]);
+
   return v;
 }
 #undef FUNC_NAME
@@ -417,20 +409,13 @@
            "@end example")
 #define FUNC_NAME s_scm_string_downcase_x
 {
-  register long k;
-  register unsigned char *cs;
-  SCM_ASRTGO (SCM_NIMP (v), badarg1);
-  k = SCM_LENGTH (v);
-  switch (SCM_TYP7(v))
-    {
-      case scm_tc7_string:
-        cs = SCM_UCHARS (v);
-        while (k--)
-          cs[k] = scm_downcase(cs[k]);
-        break;
-      default:
-    badarg1:SCM_WTA (1,v);
-    }
+  unsigned long k;
+
+  SCM_VALIDATE_STRING (1, v);
+
+  for (k = 0; k < SCM_LENGTH (v); ++k)
+    SCM_STRING_UCHARS (v) [k] = scm_downcase (SCM_STRING_UCHARS (v) [k]);
+
   return v;
 }
 #undef FUNC_NAME
Index: guile/guile-core/libguile/strports.c
diff -u guile/guile-core/libguile/strports.c:1.61 
guile/guile-core/libguile/strports.c:1.62
--- guile/guile-core/libguile/strports.c:1.61   Sat Aug 12 16:15:48 2000
+++ guile/guile-core/libguile/strports.c        Tue Sep 26 15:15:13 2000
@@ -106,7 +106,7 @@
 
   /* reset buffer in case reallocation moved the string. */
   {
-    pt->read_buf = pt->write_buf = SCM_UCHARS (stream);
+    pt->read_buf = pt->write_buf = SCM_STRING_UCHARS (stream);
     pt->read_pos = pt->write_pos = pt->write_buf + index;
     pt->write_end = pt->write_buf + pt->write_buf_size;
     pt->read_end = pt->read_buf + pt->read_buf_size;
Index: guile/guile-core/libguile/symbols.c
diff -u guile/guile-core/libguile/symbols.c:1.58 
guile/guile-core/libguile/symbols.c:1.59
--- guile/guile-core/libguile/symbols.c:1.58    Fri Sep 22 10:17:55 2000
+++ guile/guile-core/libguile/symbols.c Tue Sep 26 15:15:13 2000
@@ -144,7 +144,7 @@
       SCM * lsymp;
       SCM z;
       scm_sizet hash
-       = scm_string_hash (SCM_UCHARS (sym), SCM_LENGTH (sym)) % 
scm_symhash_dim;
+       = scm_string_hash (SCM_SYMBOL_UCHARS (sym), SCM_LENGTH (sym)) % 
scm_symhash_dim;
 
       SCM_DEFER_INTS;
       for (lsym = SCM_VELTS (scm_symhash)[hash]; SCM_NIMP (lsym); lsym = 
SCM_CDR (lsym))
@@ -189,7 +189,7 @@
 {
   SCM lsym, z;
   scm_sizet hash 
-    = scm_string_hash (SCM_UCHARS (sym), SCM_LENGTH (sym)) % SCM_LENGTH 
(obarray);
+    = scm_string_hash (SCM_SYMBOL_UCHARS (sym), SCM_LENGTH (sym)) % SCM_LENGTH 
(obarray);
   SCM_REDEFER_INTS;
   for (lsym = SCM_VELTS (obarray)[hash];
        SCM_NIMP (lsym);
@@ -264,7 +264,7 @@
       scm_sizet i;
       SCM a = SCM_CAR (lsym);
       SCM z = SCM_CAR (a);
-      unsigned char *tmp = SCM_UCHARS (z);
+      unsigned char *tmp = SCM_SYMBOL_UCHARS (z);
       if (SCM_LENGTH (z) != len)
        goto trynext;
       for (i = len; i--;)
@@ -557,7 +557,7 @@
   if (SCM_FALSEP (o))
     o = scm_symhash;
   SCM_VALIDATE_VECTOR (1,o);
-  hval = scm_string_hash (SCM_UCHARS (s), SCM_LENGTH (s)) % SCM_LENGTH (o);
+  hval = scm_string_hash (SCM_SYMBOL_UCHARS (s), SCM_LENGTH (s)) % SCM_LENGTH 
(o);
   /* If the symbol is already interned, simply return. */
   SCM_REDEFER_INTS;
   {
@@ -594,7 +594,7 @@
   if (SCM_FALSEP (o))
     o = scm_symhash;
   SCM_VALIDATE_VECTOR (1,o);
-  hval = scm_string_hash (SCM_UCHARS (s), SCM_LENGTH (s)) % SCM_LENGTH (o);
+  hval = scm_string_hash (SCM_SYMBOL_UCHARS (s), SCM_LENGTH (s)) % SCM_LENGTH 
(o);
   SCM_DEFER_INTS;
   {
     SCM lsym_follow;
Index: guile/guile-core/libguile/symbols.h
diff -u guile/guile-core/libguile/symbols.h:1.35 
guile/guile-core/libguile/symbols.h:1.36
--- guile/guile-core/libguile/symbols.h:1.35    Tue Sep 26 14:53:49 2000
+++ guile/guile-core/libguile/symbols.h Tue Sep 26 15:15:13 2000
@@ -64,7 +64,6 @@
 #define SCM_LENGTH(x)          (((unsigned long) SCM_CELL_WORD_0 (x)) >> 8)
 #define SCM_SETLENGTH(x, v, t) (SCM_SET_CELL_WORD_0 ((x), ((v) << 8) + (t)))
 
-#define SCM_UCHARS(x)          ((unsigned char *) (SCM_CELL_WORD_1 (x)))
 #define SCM_SETCHARS(x, v)     (SCM_SET_CELL_WORD_1 ((x), (scm_bits_t) (v)))
 
 #define SCM_PROP_SLOTS(X)           (SCM_CELL_WORD_3 (X))
@@ -137,6 +136,7 @@
 #if (SCM_DEBUG_DEPRECATED == 0)
 
 #define SCM_CHARS(x) ((char *) (SCM_CELL_WORD_1 (x)))
+#define SCM_UCHARS(x) ((unsigned char *) (SCM_CELL_WORD_1 (x)))
 #define SCM_SLOPPY_SUBSTRP(x) (SCM_SUBSTRP (x))
 #define scm_strhash(str, len, n) (scm_string_hash ((str), (len)) % (n))
 
Index: guile/guile-core/libguile/unif.c
diff -u guile/guile-core/libguile/unif.c:1.88 
guile/guile-core/libguile/unif.c:1.89
--- guile/guile-core/libguile/unif.c:1.88       Tue Sep 26 14:53:49 2000
+++ guile/guile-core/libguile/unif.c    Tue Sep 26 15:15:13 2000
@@ -1138,7 +1138,7 @@
       else
        return SCM_BOOL_F;
     case scm_tc7_string:
-      return SCM_MAKE_CHAR (SCM_UCHARS (v)[pos]);
+      return SCM_MAKE_CHAR (SCM_STRING_UCHARS (v)[pos]);
     case scm_tc7_byvect:
       return SCM_MAKINUM (((char *) SCM_UVECTOR_BASE (v))[pos]);
   case scm_tc7_uvect:
@@ -1183,7 +1183,7 @@
       else
        return SCM_BOOL_F;
     case scm_tc7_string:
-      return SCM_MAKE_CHAR (SCM_UCHARS (v)[pos]);
+      return SCM_MAKE_CHAR (SCM_STRING_UCHARS (v)[pos]);
     case scm_tc7_byvect:
       return SCM_MAKINUM (((char *) SCM_UVECTOR_BASE (v))[pos]);
     case scm_tc7_uvect:
@@ -1294,7 +1294,7 @@
       break;
     case scm_tc7_string:
       SCM_ASRTGO (SCM_CHARP (obj), badobj);
-      SCM_UCHARS (v)[pos] = SCM_CHAR (obj);
+      SCM_STRING_UCHARS (v)[pos] = SCM_CHAR (obj);
       break;
     case scm_tc7_byvect:
       if (SCM_CHARP (obj))
@@ -2301,12 +2301,12 @@
       break;
     case scm_tc7_string:
       if (n-- > 0)
-       scm_iprin1 (SCM_MAKE_CHAR (SCM_UCHARS (ra)[j]), port, pstate);
+       scm_iprin1 (SCM_MAKE_CHAR (SCM_STRING_UCHARS (ra)[j]), port, pstate);
       if (SCM_WRITINGP (pstate))
        for (j += inc; n-- > 0; j += inc)
          {
            scm_putc (' ', port);
-           scm_iprin1 (SCM_MAKE_CHAR (SCM_UCHARS (ra)[j]), port, pstate);
+           scm_iprin1 (SCM_MAKE_CHAR (SCM_STRING_UCHARS (ra)[j]), port, 
pstate);
          }
       else
        for (j += inc; n-- > 0; j += inc)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]