[GODCC][COMMITTED] json.a68: remove unnecessary modes
Jose E. Marchesi
jemarch@gnu.org
Tue Mar 18 23:25:58 GMT 2025
---
src/json.a68 | 23 ++++++++++-------------
1 file changed, 10 insertions(+), 13 deletions(-)
diff --git a/src/json.a68 b/src/json.a68
index edf05ed..e2167e6 100644
--- a/src/json.a68
+++ b/src/json.a68
@@ -16,10 +16,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-MODE JSONVAL = UNION (JSONBOOL,JSONINT,JSONSTR,JSONARR,JSONOBJ),
- JSONBOOL = BOOL,
- JSONINT = INT,
- JSONSTR = STRING,
+MODE JSONVAL = UNION (BOOL,INT,STRING,JSONARR,JSONOBJ),
JSONARR = STRUCT (REF JSONELM elements),
JSONOBJ = STRUCT (REF JSONFLD fields),
JSONELM = STRUCT (JSONVAL value, REF JSONELM next),
@@ -27,9 +24,9 @@ MODE JSONVAL = UNION (JSONBOOL,JSONINT,JSONSTR,JSONARR,JSONOBJ),
PROC json to string = (JSONVAL val) STRING:
CASE val
- IN (JSONBOOL b): (b | "true" | "false"),
- (JSONINT i): itoa (i),
- (JSONSTR s): """" + s + """",
+ IN (BOOL b): (b | "true" | "false"),
+ (INT i): itoa (i),
+ (STRING s): """" + s + """",
(JSONARR a): "[" + (REF JSONELM elem := elements OF a, STRING res;
FOR i WHILE REF JSONELM (elem) :/=: NIL
DO (i > 1 | res +:= ",");
@@ -71,8 +68,8 @@ BEGIN
ELSE error (msg + ", found '" + ch + "'")
FI;
- PROC parse number = JSONINT:
- BEGIN JSONINT num := 0;
+ PROC parse number = INT:
+ BEGIN INT num := 0;
WHILE num := num * 10 + ABS ch - ABS "0";
isdigit (getchar)
DO SKIP OD;
@@ -80,8 +77,8 @@ BEGIN
num
END;
- PROC parse string = JSONSTR:
- BEGIN JSONSTR res;
+ PROC parse string = STRING:
+ BEGIN STRING res;
WHILE getchar /= """"
DO IF ch = eof THEN error ("while parsing string")
ELIF ch = "\\"
@@ -152,10 +149,10 @@ BEGIN
END;
PROC json int = (JSONVAL v) INT:
- (v | (JSONINT i): i | error ("expected integer in json str"); SKIP);
+ (v | (INT i): i | error ("expected integer in json str"); SKIP);
PROC json str = (JSONVAL v) STRING:
- (v | (JSONSTR s): s | error ("expected string in json str"); SKIP);
+ (v | (STRING s): s | error ("expected string in json str"); SKIP);
PROC json foreach elem = (JSONVAL v, PROC(JSONVAL)VOID h) VOID:
BEGIN CASE v
--
2.30.2
More information about the Algol68
mailing list