Define guarantee-boolean and parameter-converter.
authorChris Hanson <org/chris-hanson/cph>
Mon, 29 Feb 2016 04:33:50 +0000 (20:33 -0800)
committerChris Hanson <org/chris-hanson/cph>
Mon, 29 Feb 2016 04:33:50 +0000 (20:33 -0800)
src/runtime/boole.scm
src/runtime/dynamic.scm
src/runtime/runtime.pkg

index 3e8cd50b36b35f3bc0e6b6fc4dd4961930b503c9..921c6a212d1b88d8f4d718d2618ef4d227acd7c0 100644 (file)
@@ -39,6 +39,8 @@ USA.
   (or (eq? object #f)
       (eq? object #t)))
 
+(define-guarantee boolean "boolean")
+
 (define (boolean=? x y)
   (if x y (not y)))
 
index c14f225c8cd0dce7846f890b88ca21099f83b55e..b6846347e574849d97159f03c11300885fed9f9c 100644 (file)
@@ -70,9 +70,7 @@ USA.
 
 (define (default-parameter-converter value) value)
 (define (default-parameter-getter value) value)
-
-(define (default-parameter-setter set-param value)
-  (set-param value))
+(define (default-parameter-setter set-param value) (set-param value))
 
 (define (make-general-parameter initial-value converter getter setter)
   (guarantee-procedure converter 'make-general-parameter)
@@ -106,4 +104,7 @@ USA.
           (lambda ()
             (set! bindings (set! temp (set! bindings)))
             unspecific)))
-      (shallow-fluid-bind swap! thunk swap!))))
\ No newline at end of file
+      (shallow-fluid-bind swap! thunk swap!))))
+
+(define (parameter-converter parameter)
+  (car (parameter-metadata parameter)))
\ No newline at end of file
index ff2e2b08aabdbead721360cb92cc0cf7ffc7ae88..5bd42903f3e1bfc7769a1f9c415908f673b590a0 100644 (file)
@@ -129,6 +129,7 @@ USA.
          boolean?
          false
          for-all?
+         guarantee-boolean
          not
          there-exists?
          true))
@@ -4611,6 +4612,7 @@ USA.
          default-parameter-converter
          default-parameter-getter
          default-parameter-setter
+         parameter-converter
          parameter?
          make-general-parameter
          make-settable-parameter