From 9543962ece4671f0f53c85ef9728d1188e86f0a3 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Sun, 11 Nov 2018 10:10:43 +0100 Subject: [PATCH] mes: Add char-downcase, char-upcase. * mes/module/srfi/srfi-14.mes (char-downcase, char-upcase): New function. --- mes/module/srfi/srfi-14.mes | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/mes/module/srfi/srfi-14.mes b/mes/module/srfi/srfi-14.mes index a0a96b92..2e925ec5 100644 --- a/mes/module/srfi/srfi-14.mes +++ b/mes/module/srfi/srfi-14.mes @@ -76,3 +76,15 @@ (define (char-set-copy cs) (map identity cs)) + +(define (char-upcase c) + (if (char-set-contains? char-set:lower-case c) (integer->char (- (char->integer c) + (- (char->integer #\a) + (char->integer #\A)))) + c)) + +(define (char-downcase c) + (if (char-set-contains? char-set:upper-case c) (integer->char (+ (char->integer c) + (- (char->integer #\a) + (char->integer #\A)))) + c))