Changeset 12342 in project for chicken/trunk/srfi-13.scm


Ignore:
Timestamp:
11/03/08 03:56:09 (13 years ago)
Author:
felix winkelmann
Message:

removed some dead code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chicken/trunk/srfi-13.scm

    r11092 r12342  
    14341434;;; lengths of the pattern and string respectively
    14351435
    1436 ;;; KMP search source[start,end) for PATTERN. Return starting index of
    1437 ;;; leftmost match or #f.
    1438 
    1439 (define (%kmp-search pattern text c= p-start p-end t-start t-end)
    1440   (let ((plen (- p-end p-start))
    1441         (rv (make-kmp-restart-vector pattern c= p-start p-end)))
    1442 
    1443     ;; The search loop. TJ & PJ are redundant state.
    1444     (let lp ((ti t-start) (pi 0)
    1445              (tj (- t-end t-start))     ; (- tlen ti) -- how many chars left.
    1446              (pj plen))                 ; (- plen pi) -- how many chars left.
    1447 
    1448       (if (= pi plen) (- ti plen)                       ; Win.
    1449          
    1450           (and (<= pj tj)                               ; Lose.
    1451                  
    1452                (if (c= (string-ref text ti)             ; Search.
    1453                        (string-ref pattern (+ p-start pi)))
    1454                    (lp (+ 1 ti) (+ 1 pi) (- tj 1) (- pj 1))     ; Advance.
    1455                    
    1456                    (let ((pi (vector-ref rv pi)))               ; Retreat.
    1457                      (if (= pi -1)
    1458                          (lp (+ ti 1)  0   (- tj 1)  plen)      ; Punt.
    1459                          (lp ti        pi  tj        (- plen pi))))))))))
    14601436
    14611437;;; (make-kmp-restart-vector pattern [c= start end]) -> integer-vector
Note: See TracChangeset for help on using the changeset viewer.