From 3eb3659128ba6279d89c4e33ff59c6ffb5888a28 Mon Sep 17 00:00:00 2001 From: Ivan Ukhov Date: Tue, 4 Aug 2015 08:34:07 -0400 Subject: [PATCH] Preserve column types when advancing a cursor --- src/cursor.rs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/cursor.rs b/src/cursor.rs index 96d4d6b..681369b 100644 --- a/src/cursor.rs +++ b/src/cursor.rs @@ -32,7 +32,21 @@ impl<'l> Cursor<'l> { let values = match self.values.take() { Some(mut values) => { for (i, value) in values.iter_mut().enumerate() { - *value = try!(self.statement.read(i)); + match value { + &mut Value::Binary(ref mut value) => { + *value = try!(self.statement.read(i)); + }, + &mut Value::Float(ref mut value) => { + *value = try!(self.statement.read(i)); + }, + &mut Value::Integer(ref mut value) => { + *value = try!(self.statement.read(i)); + }, + &mut Value::String(ref mut value) => { + *value = try!(self.statement.read(i)); + }, + &mut Value::Null => {}, + } } values },