aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Christian Hesse <mail@eworm.de>2024-03-28 23:27:57 +0100
committerGravatar Christian Hesse <mail@eworm.de>2024-04-02 00:08:44 +0200
commit4db91ec16eb482d0989435f40373f455f1665f97 (patch)
tree6d4af0498b99b7b633ff3102af704eaf24257594
parentbb237dcef3fea8c5a6988cc52b2a0360078faad8 (diff)
global-functions: drop $ParseJson
-rw-r--r--global-functions.rsc61
1 files changed, 0 insertions, 61 deletions
diff --git a/global-functions.rsc b/global-functions.rsc
index b2ef3a2..e19ed65 100644
--- a/global-functions.rsc
+++ b/global-functions.rsc
@@ -56,7 +56,6 @@
:global MkDir;
:global NotificationFunctions;
:global ParseDate;
-:global ParseJson;
:global ParseKeyValueStore;
:global PrettyPrint;
:global RandomDelay;
@@ -830,66 +829,6 @@
"day"=[ :tonum [ :pick $Date 8 10 ] ] });
}
-# parse JSON into array
-# Warning: This is not a complete parser!
-:set ParseJson do={
- :local Input [ :tostr $1 ];
-
- :local InLen;
- :local Return ({});
- :local Skip 0;
-
- :if ([ :pick $Input 0 ] = "{") do={
- :set Input [ :pick $Input 1 ([ :len $Input ] - 1) ];
- }
- :set Input [ :toarray $Input ];
- :set InLen [ :len $Input ];
-
- :for I from=0 to=$InLen do={
- :if ($Skip > 0 || $Input->$I = "\n" || $Input->$I = "\r\n") do={
- :if ($Skip > 0) do={
- :set $Skip ($Skip - 1);
- }
- } else={
- :local Done false;
- :local Key ($Input->$I);
- :local Val1 ($Input->($I + 1));
- :local Val2 ($Input->($I + 2));
- :if ($Val1 = ":") do={
- :set Skip 2;
- :set ($Return->$Key) $Val2;
- :set Done true;
- }
- :if ($Done = false && $Val1 = ":[") do={
- :local Last false;
- :set Skip 1;
- :set ($Return->$Key) ({});
- :do {
- :set Skip ($Skip + 1);
- :local ValX ($Input->($I + $Skip));
- :if ([ :pick $ValX ([ :len $ValX ] - 1) ] = "]") do={
- :set Last true;
- :set ValX [ :pick $ValX 0 ([ :len $ValX ] - 1) ];
- }
- :set ($Return->$Key) (($Return->$Key), $ValX);
- } while=($Last = false && $I + $Skip < $InLen);
- :set Done true;
- }
- :if ($Done = false && $Val1 = ":[]") do={
- :set Skip 1;
- :set ($Return->$Key) ({});
- :set Done true;
- }
- :if ($Done = false) do={
- :set Skip 1;
- :set ($Return->$Key) [ :pick $Val1 1 [ :len $Val1 ] ];
- }
- }
- }
-
- :return $Return;
-}
-
# parse key value store
:set ParseKeyValueStore do={
:local Source $1;