(cond ((not (int:integer? number))
(error:wrong-type-argument number #f 'NUMBER->STRING))
((int:negative? number)
- (list->string (cons #\- (n>0 (int:negate number)))))
+ (list->ustring (cons #\- (n>0 (int:negate number)))))
(else
- (list->string (n>0 number)))))
+ (list->ustring (n>0 number)))))
\f
(declare (integrate-operator rat:rational?))
(define (rat:rational? object)
;; Returns ASCII string:
(define (char-set->string char-set)
- (list->string (char-set-members char-set)))
+ (list->ustring (char-set-members char-set)))
;; Returns only ASCII members:
(define (char-set-members char-set)
(dragon4 f e p radix cutoff-mode cutoff
(lambda (u k generate)
(let ((digits
- (list->string
+ (list->ustring
(let loop ((u u) (k k) (generate generate))
k ;ignore
(if (negative? u)
(make-hash-table-type key-hash
key=?
(if (and (or (eq? key=? string=?)
- (eq? key=? string-ci=?)
- (eq? key=? ustring=?))
- (or (eq? key-hash string-hash-mod)
- (eq? key-hash string-hash)
- (eq? key-hash ustring-hash)
- (eq? key-hash hash)
- (eq? key-hash string-ci-hash)))
+ (eq? key=? string-ci=?))
+ (or (eq? key-hash string-hash)
+ (eq? key-hash string-ci-hash)
+ (eq? key-hash hash)))
#f ;No rehash needed after GC
#t) ;Rehash needed after GC
hash-table-entry-type:strong))
(if (not (stack-empty? ctx))
(compilation-error ctx "Unmatched \\("))
(make-compiled-regexp
- (list->string (map integer->char (cdr (output-head ctx))))
+ (list->ustring (map integer->char (cdr (output-head ctx))))
case-fold?))
(begin
(compile-pattern-char ctx)
(char->integer char)))
(char-set-members
(re-compile-char-set
- (list->string (map integer->char (reverse! chars)))
+ (list->ustring (map integer->char (reverse! chars)))
#f))))
(loop (cons char chars)))))
(output-start! ctx (if invert? re-code:not-char-set re-code:char-set))
guarantee-substring-end-index
guarantee-substring-start-index
lisp-string->camel-case
- list->string
+ ;;list->string
make-string
reverse-string
reverse-string!
reverse-substring!
set-string-length!
string
- string->list
- string->vector
+ ;;string->list
+ ;;string->vector
string-allocate
string-append
string-capitalize
string-capitalize!
string-capitalized?
- string-ci-hash
- string-ci<=?
- string-ci<?
- string-ci=?
- string-ci>=?
- string-ci>?
+ ;; string-ci-hash
+ ;; string-ci<=?
+ ;; string-ci<?
+ ;; string-ci=?
+ ;; string-ci>=?
+ ;; string-ci>?
string-compare
string-compare-ci
string-copy
string-find-previous-char-ci
string-find-previous-char-in-set
string-for-each
- string-hash
- string-hash-mod
+ ;; string-hash
+ ;; string-hash-mod
string-head
string-head!
string-joiner
string-upcase
string-upcase!
string-upper-case?
- string<=?
- string<?
- string=?
- string>=?
- string>?
+ ;; string<=?
+ ;; string<?
+ ;; string=?
+ ;; string>=?
+ ;; string>?
string?
substring
substring->list
(files "ustring")
(parent (runtime))
(export ()
+ (list->string list->ustring)
+ (string->list ustring->list)
+ (string->vector ustring->vector)
+ (string-ci-hash ustring-ci-hash)
+ (string-ci<=? ustring-ci<=?)
+ (string-ci<? ustring-ci<?)
+ (string-ci=? ustring-ci=?)
+ (string-ci>=? ustring-ci>=?)
+ (string-ci>? ustring-ci>?)
+ (string-hash ustring-hash)
+ (string-hash-mod ustring-hash)
+ (string<=? ustring<=?)
+ (string<? ustring<?)
+ (string=? ustring=?)
+ (string>=? ustring>=?)
+ (string>? ustring>?)
(usubstring ustring-copy)
list->ustring
make-ustring
ustring-ci=?
ustring-ci>=?
ustring-ci>?
+ ustring-ci-hash
ustring-copy
ustring-copy!
ustring-downcase
((ucode-primitive string-hash) string*)
((ucode-primitive string-hash-mod) string* modulus))))
+(define (ustring-ci-hash string #!optional modulus)
+ (ustring-hash (ustring-foldcase string) modulus))
+
(define (ustring->legacy-string string)
(if (legacy-string? string)
string