MCPcopy Create free account
hub / github.com/InfinitiBit/graphbit / parse_decode_result

Function parse_decode_result

guardrail_ffi/src/lib.rs:355–372  ·  view source on GitHub ↗
(s: &str)

Source from the content-addressed store, hash-verified

353}
354
355fn parse_decode_result(s: &str) -> Option<DecodeResult> {
356 let v: serde_json::Value = serde_json::from_str(s).ok()?;
357 let payload = v.get("payload")?.clone();
358 let rules_applied_count = v.get("rules_applied_count")?.as_u64()? as u32;
359 let rule_names: Vec<String> = v
360 .get("rule_names")?
361 .as_array()?
362 .iter()
363 .filter_map(|x| x.as_str().map(String::from))
364 .collect();
365 let policy_name = v.get("policy_name")?.as_str()?.to_string();
366 Some(DecodeResult {
367 payload,
368 rules_applied_count,
369 rule_names,
370 policy_name,
371 })
372}
373
374/// Singleton entry point to create enforcers.
375#[derive(Debug, Clone)]

Callers 1

decodeMethod · 0.85

Calls 3

cloneMethod · 0.80
to_stringMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected