feat: add Std::Json — JSON parser and serializer

- JsonValue struct supporting null, bool, number, string, array, object
- Json_Parse(s: String) -> JsonValue: recursive descent parser
- Json_Stringify(v: JsonValue) -> String: recursive serializer
- Access helpers: Json_ObjectGet, Json_ObjectSet, Json_ObjectHas,
  Json_ArrayGet, Json_ArrayPush, Json_ArrayLen, Json_ObjectLen
- Constructors: Json_Null, Json_Bool, Json_Number, Json_String,
  Json_Array, Json_Object
- Type accessors: Json_IsNull, Json_AsBool, Json_AsNumber, Json_AsString
- examples/json.bux: demonstrates parse, access, build programmatically
- Add os_time, process, json to test-examples suite
This commit is contained in:
2026-06-05 21:26:51 +03:00
parent 459e4fb6db
commit 49264b5d06
35 changed files with 804 additions and 1 deletions
+1
View File
@@ -0,0 +1 @@
[Package]
+17
View File
@@ -0,0 +1,17 @@
import Std::Io::{PrintLine};
struct JsonValue {
tag: int,
strVal: String,
numVal: float64
}
extern func bux_alloc(size: uint) -> *void;
func Main() -> int {
let cap: uint = 4;
let data: *JsonValue = bux_alloc(cap * sizeof(JsonValue)) as *JsonValue;
data[0] = JsonValue { tag: 1, strVal: "first", numVal: 1.0 };
PrintLine(data[0].strVal);
return 0;
}