[−][src]Crate yajlish
yajlish is a low-level, event-based json parser based (loosely) on yajl. Use
use yajlish::{Context, Handler, Status}; pub struct FooCountHandler { count: usize, } impl Handler for FooCountHandler { fn handle_map_key(&mut self, _ctx: &Context, key: &str) -> Status { if key == "foo" { self.count += 1; } Status::Continue } fn handle_null(&mut self, _ctx: &Context) -> Status { Status::Continue } fn handle_bool(&mut self, _ctx: &Context, boolean: bool) -> Status { Status::Continue } fn handle_double(&mut self, _ctx: &Context, val: f64) -> Status { Status::Continue } fn handle_int(&mut self, _ctx: &Context, val: i64) -> Status { Status::Continue } fn handle_string(&mut self, _ctx: &Context, val: &str) -> Status { Status::Continue } fn handle_start_map(&mut self, _ctx: &Context) -> Status { Status::Continue } fn handle_start_array(&mut self, _ctx: &Context) -> Status { Status::Continue } fn handle_end_map(&mut self, _ctx: &Context) -> Status { Status::Continue } fn handle_end_array(&mut self, _ctx: &Context) -> Status { Status::Continue } }
Modules
ndjson_handler | This Handler implementation converts JSON with an array into new-line delimited JSON. |
Structs
Context | The context passed to each Handler function. Context gives basic information about where it is at in the json document. |
Parser | Main Parser struct. |
Enums
Status | The Status that each Handler method returns. |
Traits
Handler | Implement this trait to handle parse events. |