Files
hakorune/apps/examples/json_pp/main.nyash
nyash-codex 34be7d2d79 vm/router: minimal special-method extension (equals/1); toString mapping kept
mir: add TypeCertainty to Callee::Method (diagnostic only); plumb through builder/JSON/printer; backends ignore behaviorally

using: confirm unified prelude resolver entry for all runner modes

docs: update Callee architecture with certainty; update call-instructions; CURRENT_TASK note

tests: quick 40/40 PASS; integration (LLVM) 17/17 PASS
2025-09-28 01:33:58 +09:00

36 lines
1022 B
Plaintext

// Ensure JsonNode symbol via SSOT alias (nyash.toml)
using JsonNode as JsonNode
static box Main {
main() {
// Minimal JSON pretty-printer (current: compact print via toString())
// TODO: add indentation-aware stringify once JsonNode exposes iterators
local samples = new ArrayBox()
samples.push("null")
samples.push("true")
samples.push("false")
samples.push("42")
samples.push("\"hello\"")
samples.push("[]")
samples.push("{}")
samples.push("{\"a\":1}")
samples.push("-0")
samples.push("0")
samples.push("3.14")
samples.push("-2.5")
samples.push("6.02e23")
samples.push("-1e-9")
local i = 0
loop(i < samples.length()) {
local s = samples.get(i)
// Use JsonNode.parse for compact pretty-printing in MVP path
// (JsonParserModule/full tokenizer is exercised in integration smokes)
local r = JsonNode.parse(s)
if (r == null) { print("null") } else { print(r.toString()) }
i = i + 1
}
return 0
}
}