MCPcopy Create free account
hub / github.com/apache/avro-rs / from

Method from

avro/src/reader/single_object.rs:183–210  ·  view source on GitHub ↗
(obj: Value)

Source from the content-addressed store, hash-verified

181 }
182 }
183
184 impl From<Value> for TestSingleObjectReader {
185 fn from(obj: Value) -> TestSingleObjectReader {
186 if let Value::Record(fields) = obj {
187 let mut a = None;
188 let mut b = None;
189 let mut c = vec![];
190 for (field_name, v) in fields {
191 match (field_name.as_str(), v) {
192 ("a", Value::Long(i)) => a = Some(i),
193 ("b", Value::Double(d)) => b = Some(d),
194 ("c", Value::Array(v)) => {
195 for inner_val in v {
196 if let Value::String(s) = inner_val {
197 c.push(s);
198 }
199 }
200 }
201 (key, value) => panic!("Unexpected pair: {key:?} -> {value:?}"),
202 }
203 }
204 TestSingleObjectReader {
205 a: a.unwrap(),
206 b: b.unwrap(),
207 c,
208 }
209 } else {
210 panic!("Expected a Value::Record but was {obj:?}")
211 }
212 }
213 }

Callers

nothing calls this directly

Calls 1

RecordClass · 0.85

Tested by

no test coverage detected