From 0d0bdfdfb15376444d09b8bbbbe4e7034f710dcf Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Fri, 9 May 2003 00:05:13 +0000 Subject: [PATCH] r4882: *** empty log message *** --- strings.lisp | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/strings.lisp b/strings.lisp index 8af3497..f382fe9 100644 --- a/strings.lisp +++ b/strings.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: strings.lisp,v 1.24 2003/05/08 23:35:18 kevin Exp $ +;;;; $Id: strings.lisp,v 1.25 2003/05/09 00:05:13 kevin Exp $ ;;;; ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg ;;;; @@ -44,29 +44,17 @@ (setq in-word nil)))) n-words)) -#+allegro -(defun delimited-string-to-list (string &optional (separator #\space) skip-terminal) - "Uses allegro's internal function since that benchmarks faster than -my algorithm. Does allegro use assembly?" - (declare (string string) (character separator)) - (when skip-terminal - (let ((len (length string))) - (when (and (plusp len) (char= separator (char string (1- len)))) - (setq string (subseq string 0 (1- len)))))) - (excl:delimited-string-to-list string separator)) - ;; From Larry Hunter with modifications (defun position-char (char string start max) - (declare (optimize (speed 3) (safety 0)) + (declare (optimize (speed 3) (safety 0) (space 0)) (fixnum start max) (simple-string string)) (do* ((i start (1+ i))) ((= i max) nil) (declare (fixnum i)) (when (char= char (schar string i)) (return i)))) -(defun #-allegro delimited-string-to-list - #+allegro my-delimited-string-to-list - (string &optional (separator #\space) skip-terminal) +(defun delimited-string-to-list (string &optional (separator #\space) + skip-terminal) "split a string with delimiter" (declare (optimize (speed 3) (safety 0) (space 0) (compilation-speed 0)) (type string string) -- 2.34.1