json_event_parser_blocks/
lib.rs1#[cfg(feature = "serde")]
2mod serde;
3mod skipper;
4
5use json_event_parser::JsonEvent;
6#[cfg(feature = "serde")]
7pub use serde::{JsonEventSlice, JsonEventSource, JsonSerializer, JsonDeserializer, SerDeIoError};
8pub use skipper::{SkipError, Skipper};
9
10pub fn event_name(event: &JsonEvent<'_>) -> &'static str {
11 match event {
12 JsonEvent::String(_) => "String",
13 JsonEvent::Number(_) => "Number",
14 JsonEvent::Boolean(_) => "Boolean",
15 JsonEvent::Null => "Null",
16 JsonEvent::StartArray => "StartArray",
17 JsonEvent::EndArray => "EndArray",
18 JsonEvent::StartObject => "StartObject",
19 JsonEvent::EndObject => "EndObject",
20 JsonEvent::ObjectKey(_) => "ObjectKey",
21 JsonEvent::Eof => "Eof",
22 }
23}
24
25pub fn owned_event(event: JsonEvent<'_>) -> JsonEvent<'static> {
26 match event {
27 JsonEvent::String(v) => JsonEvent::String(v.into_owned().into()),
28 JsonEvent::Number(v) => JsonEvent::Number(v.into_owned().into()),
29 JsonEvent::Boolean(v) => JsonEvent::Boolean(v),
30 JsonEvent::Null => JsonEvent::Null,
31 JsonEvent::StartArray => JsonEvent::StartArray,
32 JsonEvent::EndArray => JsonEvent::EndArray,
33 JsonEvent::StartObject => JsonEvent::StartObject,
34 JsonEvent::EndObject => JsonEvent::EndObject,
35 JsonEvent::ObjectKey(v) => JsonEvent::ObjectKey(v.into_owned().into()),
36 JsonEvent::Eof => JsonEvent::Eof,
37 }
38}