Fix asd for cmucl with unicode
[closure-common.git] / utf8.lisp
blob03e0dd235c2a93c3dd0fe306c7fd50de38677a36
1 ;;; copyright (c) 2005 David Lichteblau <david@lichteblau.com>
2 ;;; License: Lisp-LGPL (See file COPYING for details).
3 ;;;
4 ;;; Rune emulation for the UTF-8-compatible DOM implementation.
5 ;;; Used only with 8 bit characters on non-unicode Lisps.
7 (in-package :utf8-runes)
9 (deftype rune () 'character)
10 (deftype rod () '(vector rune))
11 (deftype simple-rod () '(simple-array rune))
13 (defun rod= (r s)
14 (string= r s))
16 (defun rod-string (rod &optional default)
17 (declare (ignore default))
18 rod)
20 (defun string-rod (string)
21 string)
23 (defun make-rod (size)
24 (make-string size :element-type 'rune))
26 (defun rune-reader (stream subchar arg)
27 (runes::rune-char (runes::rune-reader stream subchar arg)))
29 (defun rod-reader (stream subchar arg)
30 (runes::rod-string (runes::rod-reader stream subchar arg)))
32 (setf closure-common-system:*utf8-runes-readtable*
33 (let ((rt (copy-readtable)))
34 (set-dispatch-macro-character #\# #\/ 'rune-reader rt)
35 (set-dispatch-macro-character #\# #\" 'rod-reader rt)
36 rt))