pub struct Ignore { /* private fields */ }Implementations§
Source§impl Ignore
impl Ignore
Sourcepub fn new(keys: Vec<&str>) -> Self
pub fn new(keys: Vec<&str>) -> Self
Examples found in repository?
example/ignore.rs (line 17)
6fn main() {
7 let json = json!(
8 {
9 "explanation": "test",
10 "media_type": "test",
11 "hdurl": "test",
12 "service_version": "test",
13 "code": 200,
14 "msg": "test"
15 }
16 );
17 let values = filter::<Ignore>(json, &Ignore::new(vec!["explanation", "media_type"]));
18 if let Ok(trimmed) = values {
19 println!("TRIMMED: {:#?}", trimmed);
20 assert!(trimmed.get("explanation").is_none());
21 assert!(trimmed.get("media_type").is_none());
22 assert!(trimmed.get("hdurl").is_some());
23 } else {
24 panic!();
25 }
26
27 let json = json!({
28 "2020-01-01": {
29 "explanation": "test_1",
30 "media_type": "test",
31 "hdurl": "test",
32 "service_version": "test",
33 "code": 200,
34 "msg": "test"
35 },
36 "Object": {
37 "2023-01-11": {
38 "Object": {
39 "explanation": "test_3",
40 "media_type": "test",
41 "hdurl": "test",
42 "service_version": "test",
43 "code": 200,
44 "msg": "test"
45 },
46 "explanation": "test_2",
47 }
48 },
49 "explanation": "test_0"
50 });
51
52 let ignore = Ignore::new(vec!["explanation"]);
53 let trimmed = filter::<Ignore>(json, &ignore).unwrap();
54 println!("TRIMMED: {:#?}", trimmed);
55 assert!(trimmed["2020-01-01"].get("explanation").is_none(), "test_1");
56 assert!(
57 trimmed["Object"]["2023-01-11"]["Object"]
58 .get("explanation")
59 .is_none(),
60 "test_3"
61 );
62 assert!(
63 trimmed["Object"]["2023-01-11"].get("explanation").is_none(),
64 "test_2"
65 );
66 assert!(trimmed.get("explanation").is_none(), "test_0");
67}pub fn sift(json: &Value, ignore_keys: &HashSet<String>) -> Value
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Ignore
impl<'de> Deserialize<'de> for Ignore
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Ignore
Auto Trait Implementations§
impl Freeze for Ignore
impl RefUnwindSafe for Ignore
impl Send for Ignore
impl Sync for Ignore
impl Unpin for Ignore
impl UnwindSafe for Ignore
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more