(type (simple-array * (*)) str))
(let ((len (length str)))
(declare (type fixnum len))
- (cond ((= len 0)
+ (cond ((zerop len)
+empty-string+)
((and (null (position #\' str))
(null (position #\\ str)))
(do* ((i 0 (incf i))
(j 1 (incf j)))
((= i len) (subseq buf 0 (1+ j)))
- (declare (type integer i j))
+ (declare (type fixnum i j))
(let ((char (aref str i)))
- (cond ((eql char #\')
- (setf (aref buf j) #\\)
+ (declare (character char))
+ (cond ((char= char #\')
+ (setf (aref buf j) #\')
(incf j)
(setf (aref buf j) #\'))
- ((eql char #\\)
+ ((char= char #\\)
(setf (aref buf j) #\\)
(incf j)
(setf (aref buf j) #\\))