diff options
Diffstat (limited to 'format.csc')
| -rw-r--r-- | format.csc | 22 |
1 files changed, 11 insertions, 11 deletions
@@ -6,9 +6,9 @@ (import (scheme base) (only (scheme write) display) (only (csc strings) - str-find - str-not-found-error? - str-prefix?)) + find + not-found-error? + prefix?)) (begin @@ -16,24 +16,24 @@ (let loop ((start 0) (args format-args)) (cond ((>= start (string-length format-string))) - ((str-prefix? "{{" format-string start) + ((prefix? "{{" format-string start) (write-string "{" port) (loop (+ 2 start) args)) - ((str-prefix? "}}" format-string start) + ((prefix? "}}" format-string start) (write-string "}" port) (loop (+ 2 start) args)) - ((str-prefix? "{}" format-string start) + ((prefix? "{}" format-string start) (display (car args) port) (loop (+ 2 start) (cdr args))) - ((str-prefix? "{" format-string start) + ((prefix? "{" format-string start) (raise (error "invalid format string" format-string))) (else (let* ((open-brace-pos (guard (e - ((str-not-found-error? e) (string-length format-string))) - (str-find "{" format-string start))) + ((not-found-error? e) (string-length format-string))) + (find "{" format-string start))) (close-brace-pos (guard (e - ((str-not-found-error? e) (string-length format-string))) - (str-find "}" format-string start))) + ((not-found-error? e) (string-length format-string))) + (find "}" format-string start))) (format-pos (min open-brace-pos close-brace-pos))) (write-string format-string port start format-pos) (loop format-pos args)))))) |
