~ chicken-core (chicken-5) d5e8cff27f69568e6a49cd15a48bbd7435508093
commit d5e8cff27f69568e6a49cd15a48bbd7435508093 Author: felix <felix@call-with-current-continuation.org> AuthorDate: Thu Mar 26 10:17:23 2020 +0100 Commit: Evan Hanson <evhan@foldling.org> CommitDate: Fri Mar 27 19:26:05 2020 +1300 Hand-expand use of "and" in specialization rules for "irregex-match?" Signed-off-by: Evan Hanson <evhan@foldling.org> diff --git a/types.db b/types.db index 5f018e44..43f0a741 100644 --- a/types.db +++ b/types.db @@ -1638,9 +1638,9 @@ ;; A silly procedure, but at least we can "inline" it like this (chicken.irregex#irregex-match? (#(procedure #:clean #:enforce) chicken.irregex#irregex-match? (* string #!optional fixnum fixnum) boolean) - ((* string) (and (chicken.irregex#irregex-match #(1) #(2)) '#t)) - ((* string fixnum) (and (chicken.irregex#irregex-match #(1) #(2) #(3)) '#t)) - ((* string fixnum fixnum) (and (chicken.irregex#irregex-match #(1) #(2) #(3) #(4)) '#t))) + ((* string) (if (chicken.irregex#irregex-match #(1) #(2)) '#t '#f)) + ((* string fixnum) (if (chicken.irregex#irregex-match #(1) #(2) #(3)) '#t '#f)) + ((* string fixnum fixnum) (if (chicken.irregex#irregex-match #(1) #(2) #(3) #(4)) '#t '#f))) ;; These two return #f or a match object (chicken.irregex#irregex-match (#(procedure #:clean #:enforce) chicken.irregex#irregex-match (* string #!optional fixnum fixnum) (or false (struct regexp-match))))Trap