MCPcopy Create free account
hub / github.com/cel-rust/cel-rust / arbitrary_key

Function arbitrary_key

fuzz/fuzz_targets/value_binop.rs:88–98  ·  view source on GitHub ↗
(u: &mut arbitrary::Unstructured<'_>)

Source from the content-addressed store, hash-verified

86}
87
88fn arbitrary_key(u: &mut arbitrary::Unstructured<'_>) -> arbitrary::Result<Key> {
89 Ok(
90 match (u64::from(<u32 as arbitrary::Arbitrary>::arbitrary(u)?) * 4u64) >> 32 {
91 0u64 => Key::Int(arbitrary::Arbitrary::arbitrary(u)?),
92 1u64 => Key::Uint(arbitrary::Arbitrary::arbitrary(u)?),
93 2u64 => Key::Bool(arbitrary::Arbitrary::arbitrary(u)?),
94 3u64 => Key::String(Arc::new(arbitrary::Arbitrary::arbitrary(u)?)),
95 _ => unreachable!(),
96 },
97 )
98}
99
100// Ensure that the binary operators on `Value` do not panic,
101// c.f. https://github.com/cel-rust/cel-rust/pull/145.

Callers 1

arbitrary_valueFunction · 0.85

Calls 3

IntClass · 0.85
BoolClass · 0.85
StringClass · 0.85

Tested by

no test coverage detected