Ticket #870: 0001-Ensure-that-srfi-13-string-and-its-string-comparison.patch.txt

File 0001-Ensure-that-srfi-13-string-and-its-string-comparison.patch.txt, 3.9 KB (added by Jim Ursetto, 14 years ago)
Line 
1From 72b4138d0fd1f314f9129ea1bf54f67892e25d38 Mon Sep 17 00:00:00 2001
2From: Jim Ursetto <zbigniewsz@gmail.com>
3Date: Mon, 18 Jun 2012 20:16:24 -0500
4Subject: [PATCH] Ensure that srfi-13 string= and its string-comparison
5 friends return booleans on success
6
7---
8 srfi-13.scm | 36 ++++++++++++++++++------------------
9 1 files changed, 18 insertions(+), 18 deletions(-)
10
11diff --git a/srfi-13.scm b/srfi-13.scm
12index 615cbb7..e4a0509 100644
13--- a/srfi-13.scm
14+++ b/srfi-13.scm
15@@ -783,7 +783,7 @@
16 (or (and (eq? s1 s2) (= start1 start2)) ; Fast path
17 (%string-compare s1 start1 end1 s2 start2 end2 ; Real test
18 (lambda (i) #f)
19- values
20+ (lambda (i) (if i #t #f))
21 (lambda (i) #f))))))
22
23 (define (string<> s1 s2 . maybe-starts+ends)
24@@ -792,9 +792,9 @@
25 (or (not (= (- end1 start1) (- end2 start2))) ; Fast path
26 (and (not (and (eq? s1 s2) (= start1 start2))) ; Quick filter
27 (%string-compare s1 start1 end1 s2 start2 end2 ; Real test
28- values
29+ (lambda (i) (if i #t #f))
30 (lambda (i) #f)
31- values)))))
32+ (lambda (i) (if i #t #f)))))))
33
34 (define (string< s1 s2 . maybe-starts+ends)
35 (let-string-start+end2 (start1 end1 start2 end2)
36@@ -803,7 +803,7 @@
37 (< end1 end2)
38
39 (%string-compare s1 start1 end1 s2 start2 end2 ; Real test
40- values
41+ (lambda (i) (if i #t #f))
42 (lambda (i) #f)
43 (lambda (i) #f)))))
44
45@@ -816,7 +816,7 @@
46 (%string-compare s1 start1 end1 s2 start2 end2 ; Real test
47 (lambda (i) #f)
48 (lambda (i) #f)
49- values))))
50+ (lambda (i) (if i #t #f))))))
51
52 (define (string<= s1 s2 . maybe-starts+ends)
53 (let-string-start+end2 (start1 end1 start2 end2)
54@@ -825,8 +825,8 @@
55 (<= end1 end2)
56
57 (%string-compare s1 start1 end1 s2 start2 end2 ; Real test
58- values
59- values
60+ (lambda (i) (if i #t #f))
61+ (lambda (i) (if i #t #f))
62 (lambda (i) #f)))))
63
64 (define (string>= s1 s2 . maybe-starts+ends)
65@@ -837,8 +837,8 @@
66
67 (%string-compare s1 start1 end1 s2 start2 end2 ; Real test
68 (lambda (i) #f)
69- values
70- values))))
71+ (lambda (i) (if i #t #f))
72+ (lambda (i) (if i #t #f))))))
73
74 (define (string-ci= s1 s2 . maybe-starts+ends)
75 (let-string-start+end2 (start1 end1 start2 end2)
76@@ -847,7 +847,7 @@
77 (or (and (eq? s1 s2) (= start1 start2)) ; Fast path
78 (%string-compare-ci s1 start1 end1 s2 start2 end2 ; Real test
79 (lambda (i) #f)
80- values
81+ (lambda (i) (if i #t #f))
82 (lambda (i) #f))))))
83
84 (define (string-ci<> s1 s2 . maybe-starts+ends)
85@@ -856,9 +856,9 @@
86 (or (not (= (- end1 start1) (- end2 start2))) ; Fast path
87 (and (not (and (eq? s1 s2) (= start1 start2))) ; Quick filter
88 (%string-compare-ci s1 start1 end1 s2 start2 end2 ; Real test
89- values
90+ (lambda (i) (if i #t #f))
91 (lambda (i) #f)
92- values)))))
93+ (lambda (i) (if i #t #f)))))))
94
95 (define (string-ci< s1 s2 . maybe-starts+ends)
96 (let-string-start+end2 (start1 end1 start2 end2)
97@@ -867,7 +867,7 @@
98 (< end1 end2)
99
100 (%string-compare-ci s1 start1 end1 s2 start2 end2 ; Real test
101- values
102+ (lambda (i) (if i #t #f))
103 (lambda (i) #f)
104 (lambda (i) #f)))))
105
106@@ -880,7 +880,7 @@
107 (%string-compare-ci s1 start1 end1 s2 start2 end2 ; Real test
108 (lambda (i) #f)
109 (lambda (i) #f)
110- values))))
111+ (lambda (i) (if i #t #f))))))
112
113 (define (string-ci<= s1 s2 . maybe-starts+ends)
114 (let-string-start+end2 (start1 end1 start2 end2)
115@@ -889,8 +889,8 @@
116 (<= end1 end2)
117
118 (%string-compare-ci s1 start1 end1 s2 start2 end2 ; Real test
119- values
120- values
121+ (lambda (i) (if i #t #f))
122+ (lambda (i) (if i #t #f))
123 (lambda (i) #f)))))
124
125 (define (string-ci>= s1 s2 . maybe-starts+ends)
126@@ -901,8 +901,8 @@
127
128 (%string-compare-ci s1 start1 end1 s2 start2 end2 ; Real test
129 (lambda (i) #f)
130- values
131- values))))
132+ (lambda (i) (if i #t #f))
133+ (lambda (i) (if i #t #f))))))
134
135
136
137 ;;; Hash
138--
1391.7.6.1
140