Function simple_json_parser::parse
source · pub fn parse<'a>(
on: &'a str,
cb: impl for<'b> Fn(&'b [JSONKey<'a>], RootJSONValue<'a>)
) -> Result<(), (usize, JSONParseError)>Examples found in repository?
examples/package_json.rs (line 84)
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
fn main() {
let content = r#"{
"name": "ezno",
"version": "0.0.14",
"description": "A JavaScript compiler and TypeScript checker written in Rust with a focus on static analysis and runtime performance",
"license": "MIT",
"repository": "https://github.com/kaleidawave/ezno",
"main": "./dist/index.mjs",
"module": "./dist/index.mjs",
"type": "module",
"exports": {
".": {
"import": "./dist/index.mjs"
},
"./initialised": {
"import": "./dist/initialised.mjs"
}
},
"scripts": {
"clean": "rmdir dist && rmdir build",
"build": "cargo build --lib --target wasm32-unknown-unknown && npm run bind && npm run build-js",
"build-release": "cargo build --lib --release --target wasm32-unknown-unknown && npm run bind-release && npm run build-js",
"bind": "wasm-bindgen --out-dir build --target web ../../target/wasm32-unknown-unknown/debug/ezno_lib.wasm",
"bind-release": "wasm-bindgen --out-dir build --target web ../../target/wasm32-unknown-unknown/release/ezno_lib.wasm",
"build-js": "unbuild && cp ./build/ezno_lib_bg.wasm dist/shared && cp src/cli_node.cjs dist/cli.cjs",
"test": "npm run build && npm run run-tests",
"run-tests": "node test.mjs && deno run -A test.mjs"
},
"keywords": [
"typescript",
"checker",
"type-checker",
"compiler"
],
"files": [
"dist"
],
"bin": {
"ezno": "./dist/cli.mjs"
},
"author": {
"name": "Ben",
"email": "kaleidawave@gmail.com",
"url": "https://kaleidawave.github.io/"
},
"funding": {
"type": "individual",
/*
multiline comment
*/
"url": "https://github.com/sponsors/kaleidawave"
},
"build": {
"failOnWarn": false,
"entries": [
{
"builder": "rollup",
"input": "./src/index"
},
{
"builder": "rollup",
"input": "./src/initialised"
},
{
"builder": "rollup",
"input": "./src/cli"
}
],
// some comment
"rollup": {
"commonjs": true,
"esbuild": {
"target": "esnext"
}
}
},
"devDependencies": {
"unbuild": "^1.1.2"
}
}"#;
let result = parse(content, |keys, value| eprintln!("{keys:?} -> {value:?}"));
if let Err((idx, err)) = result {
eprintln!("{err:?} @ {idx}")
}
}