Special case in make-array for strings
authorDavid Vázquez <davazp@gmail.com>
Fri, 24 May 2013 01:46:45 +0000 (02:46 +0100)
committerDavid Vázquez <davazp@gmail.com>
Fri, 24 May 2013 01:46:45 +0000 (02:46 +0100)
src/array.lisp
src/string.lisp

index e3e1f2e..44ad0cf 100644 (file)
          (array (make-storage-vector size)))
     ;; Upgrade type
     (if (eq element-type 'character)
-        (setf element-type 'character
-              initial-element (or initial-element #\space))
+        (progn
+          (oset array "stringp" 1)
+          (setf element-type 'character
+                initial-element (or initial-element #\space)))
         (setf element-type t))
     ;; Initialize array
     (dotimes (i size)
index 8c29abf..8fe6368 100644 (file)
@@ -13,9 +13,6 @@
 ;; You should have received a copy of the GNU General Public License
 ;; along with JSCL.  If not, see <http://www.gnu.org/licenses/>.
 
-;; (defun stringp (x)
-;;   (and (vectorp x) (eq (array-element-type x) 'character)))
-
 (defun stringp (s)
   (stringp s))