Author: yamakenz
Date: Tue Jul 10 18:11:01 2007
New Revision: 4692

Modified:
   trunk/scm/util.scm
   trunk/test/test-uim-util.scm
   trunk/uim/uim-util.c

Log:
* uim/uim-util.c
  - (eucjp_string_to_list): Removed
  - (uim_init_util_subrs): Remove definition for string-to-list
* scm/util.scm
  - (string-to-list): New procedure
* test/test-uim-util.scm
  - Update the "passed revision" comment


Modified: trunk/scm/util.scm
==============================================================================
--- trunk/scm/util.scm  (original)
+++ trunk/scm/util.scm  Tue Jul 10 18:11:01 2007
@@ -312,6 +312,15 @@
          0
          (char->integer (car sl))))))
 
+;; split EUC-JP string into reversed character list
+(define string-to-list
+  (lambda (s)
+    (with-char-codec "EUC-JP"
+      (lambda ()
+       (map! (lambda (c)
+               (list->string (list c)))
+             (reverse! (string->list s)))))))
+
 (define symbolconc symbol-append)
 
 ;; should be obsoleted by list-ref

Modified: trunk/test/test-uim-util.scm
==============================================================================
--- trunk/test/test-uim-util.scm        (original)
+++ trunk/test/test-uim-util.scm        Tue Jul 10 18:11:01 2007
@@ -29,7 +29,7 @@
 ;;; SUCH DAMAGE.
 ;;;;
 
-;; These tests are passed at revision 4690 (new repository)
+;; These tests are passed at revision 4692 (new repository)
 
 (use test.unit)
 
@@ -38,6 +38,7 @@
 (define-uim-test-case "testcase uim-util"
   (setup
    (lambda ()
+     (uim '(require "util.scm"))
      (uim '(define lst '(1 2 3 4)))))
 
   ("test getenv"

Modified: trunk/uim/uim-util.c
==============================================================================
--- trunk/uim/uim-util.c        (original)
+++ trunk/uim/uim-util.c        Tue Jul 10 18:11:01 2007
@@ -271,33 +271,6 @@
 }
 
 static uim_lisp
-eucjp_string_to_list(uim_lisp str_)
-{
-  const char *str = uim_scm_refer_c_str(str_);
-  const unsigned char *cur = (const unsigned char *)str;
-  uim_lisp res = uim_scm_null_list();
-  while (*cur) {
-    char buf[3];
-    int len;
-    buf[2] = 0;
-    if (*cur > 127) {
-      /* 2 bytes */
-      buf[0] = cur[0];
-      buf[1] = cur[1];
-      len = 2;
-      cur ++;
-    } else {
-      buf[0] = cur[0];
-      buf[1] = 0;
-      len = 1;
-    }
-    res = uim_scm_cons(uim_scm_make_str((char *)buf), res);
-    cur ++;
-  }
-  return res;
-}
-
-static uim_lisp
 string_prefixp_internal(uim_lisp prefix_, uim_lisp str_,
                        int (*cmp)(const char *, const char *, size_t))
 {
@@ -390,7 +363,6 @@
 
   /* these procedures should be replaced with standard ones of R5RS or SRFIs */
   uim_scm_init_subr_2("string-split", uim_split_string);
-  uim_scm_init_subr_1("string-to-list", eucjp_string_to_list);
   uim_scm_init_subr_2("string-prefix?", string_prefixp);
   uim_scm_init_subr_2("string-prefix-ci?", string_prefix_cip);
 }

Reply via email to