X-Git-Url: https://git.kengrimes.com/?p=watForth.git;a=blobdiff_plain;f=forth.forth;h=8f609d70f17036fc4b8d8f4a04fffc3ad47883c7;hp=5c9834f320e840e6a83dce9b578cc82317b44981;hb=2a1f14a4ef5efe8084d6cd0468af00c8828b2bb5;hpb=ad3b02f34ef51d8df8db0472f8bebf412251ea2b diff --git a/forth.forth b/forth.forth index 5c9834f..8f609d7 100644 --- a/forth.forth +++ b/forth.forth @@ -155,6 +155,24 @@ here define-does then compiling ; : '> word find-does ; :> '> word find-does , ; +\ CHAR +: CHAR: word drop @8_u ; +:> CHAR: lit lit , ' char: execute , ; + +\ JSON Compiler +: JSON-CTRL-CHAR? char: { =? if 1 ;; then + char: } =? if 1 ;; then + char: [ =? if 1 ;; then + char: ] =? if 1 ;; then + 0 ; +: JSON-PARSE-V ; +: JSON-PARSE-" ; +: JSON-PARSE-[ ; +: JSON-PARSE-{ ; +: JSON-WORD word-start key JSON-CTRL-CHAR? if word-end ;; then ws? ; + +: JSON{ key ; + \ Include a remote file : REQUIRE" ' quit channel-open dup \' " \, fetch channel-await ;