1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
use crate::conversion::FromGValue; use crate::{GValue, GremlinResult}; #[derive(Debug, PartialEq, Clone)] pub struct Traverser { bulk: i64, value: Box<GValue>, } impl Traverser { pub fn new(bulk: i64, value: GValue) -> Traverser { Traverser { bulk, value: Box::new(value), } } pub fn take<T>(self) -> GremlinResult<T> where T: FromGValue, { T::from_gvalue(*self.value) } }