Module unstringify

Module unstringify 

Source
Expand description

Handler which unstringifies matched data it can be used e.g. shorten long strings "{\"aa\": {\"bb\":2}, \"cc\": \"dd\"}" -> {"aa": {"bb": 2}, "cc": "dd"}

§Example

use streamson_lib::{handler, matcher, strategy::{self, Strategy}};
use std::sync::{Arc, Mutex};

let handler = Arc::new(Mutex::new(handler::Unstringify::new()));
let matcher = matcher::Simple::new(r#"{"stringified_strings"}[]"#).unwrap();

let mut convert = strategy::Convert::new();

// Set the matcher for convert strategy
convert.add_matcher(Box::new(matcher), handler);

for input in vec![
    br#"{"stringified_strings": ["\"string\"", "{}", "[]"]}"#.to_vec(),
] {
    for converted_data in convert.process(&input).unwrap() {
        println!("{:?}", converted_data);
    }
}

Structs§

Unstringify
Handler which unstringifies the matched data

Enums§

State