use faster string split

This commit is contained in:
Artemis Everfree 2023-03-22 21:44:40 -07:00 committed by Cadence Ember
parent 8274e6cf1f
commit 3f1946a3b8
Signed by: cadence
GPG key ID: BC1C2C61CF521B17

View file

@ -190,7 +190,9 @@
'(body "Hey" (& nbsp) (a (@ (href "/")))))) '(body "Hey" (& nbsp) (a (@ (href "/"))))))
(define (has-class? name attributes) (define (has-class? name attributes)
(and (member name (string-split (or (get-attribute 'class attributes) "") " ")) #t)) ;; splitting without specifying separator or splitting on #px"\\s+" makes
;; string-split use a faster whitespace-specialized implementation.
(and (member name (string-split (or (get-attribute 'class attributes) "") #px"\\s+")) #t))
(module+ test (module+ test
(check-true (has-class? "red" '((class "yellow red blue")))) (check-true (has-class? "red" '((class "yellow red blue"))))
(check-false (has-class? "red" '((class "yellow blue")))) (check-false (has-class? "red" '((class "yellow blue"))))