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);
}