Add typed Kotlin JSONObject Boolean put
ober
1668be75bfbde97ecbf729e038c656cba6d3ffab
--- a/lib/jerboa/typed/checker.ss +++ b/lib/jerboa/typed/checker.ss @@ -557,6 +557,9 @@ (cons 'json-object-put-int32! (make-typed-call-sig (list 'JSONObject 'String 'Int32) 'Unit '() 'jvm-json-object-put-int32 '())) + (cons 'json-object-put-bool! + (make-typed-call-sig (list 'JSONObject 'String 'Bool) 'Unit '() + 'jvm-json-object-put-bool '())) (cons 'json-object-put-float32! (make-typed-call-sig (list 'JSONObject 'String 'Float32) 'Unit '() 'jvm-json-object-put-float32 '())) --- a/lib/jerboa/typed/core.ss +++ b/lib/jerboa/typed/core.ss @@ -163,6 +163,7 @@ jvm-json-object-copy jvm-json-object-put-string jvm-json-object-put-int32 + jvm-json-object-put-bool jvm-json-object-put-float32 jvm-json-object-put-json-array jvm-json-object-put-json-object --- a/lib/jerboa/typed/kotlin/lower.ss +++ b/lib/jerboa/typed/kotlin/lower.ss @@ -496,6 +496,15 @@ 'put (list (cadr args) (caddr args))))) (make-kt-lit 'Unit '()))] + [(jvm-json-object-put-bool) + (make-kt-block + (list + (make-kt-expr-stmt + (make-kt-member-call + (car args) + 'put + (list (cadr args) (caddr args))))) + (make-kt-lit 'Unit '()))] [(jvm-json-object-put-float32) (make-kt-block (list --- a/tests/test-typed-kotlin.ss +++ b/tests/test-typed-kotlin.ss @@ -823,6 +823,7 @@ (json-object-put-string! json "id" id) (json-object-put-float32! json "x" x) (json-object-put-int32! json "count" count) + (json-object-put-bool! json "active" #t) (json-object-put-json-array! json "mean_bgr" mean) (json-object-put-json-object! json "meta" meta) json))))) @@ -862,6 +863,9 @@ (test-contains "JSONObject put Int32 lowers directly" json-object-kotlin "json.put(\"count\", count)") +(test-contains "JSONObject put Bool lowers directly" + json-object-kotlin + "json.put(\"active\", true)") (test-contains "JSONObject put JSONArray lowers directly" json-object-kotlin "json.put(\"mean_bgr\", mean)")