summaryrefslogtreecommitdiffstats
path: root/copy/cepis-json.cpy
blob: 05e43ea100eaa37fbbb3e3481c8526d4ba861935 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
*> ---------------------------------------------------------------------
*> Control block for CEPIS-JSON-GET. Internal.
*>
*> Set JS-FROM and JS-TO to the span of the object to search (JS-FROM on
*> its opening brace) and JS-KEY to the member wanted. On return JS-TYPE
*> says what was found:
*>
*>   S string   JS-VALUE holds it, escapes already decoded
*>   N number   JS-VALUE holds the literal text, for FUNCTION NUMVAL
*>   O object   JS-VSTART and JS-VEND span it; search it in turn
*>   A array    likewise
*>   B boolean, Z null
*>   space      the key is not in this object
*>   E          the text is not a JSON object
*> ---------------------------------------------------------------------
01  CEPIS-JSON-SCAN.
    05  JS-FROM                     PIC 9(9).
    05  JS-TO                       PIC 9(9).
    05  JS-KEY                      PIC X(32).
    05  JS-TYPE                     PIC X.
    05  JS-VALUE                    PIC X(1024).
    05  JS-VALUE-LEN                PIC 9(9).
    05  JS-VSTART                   PIC 9(9).
    05  JS-VEND                     PIC 9(9).