Struct mysql::Row
[−]
[src]
pub struct Row { // some fields omitted }
Mysql row representation.
It allows you to move column values out of a row with Row::take
method but note that it
makes row incomplete. Calls to from_row_opt
on incomplete row will return
Error::FromRowError
and also numerical indexing on taken columns will panic.
pool.prep_exec("SELECT * FROM tmp.Users", ()).map(|mut result| { let mut row = result.next().unwrap().unwrap(); let id: u32 = row.take("id").unwrap(); let name: String = row.take("name").unwrap(); let age: u32 = row.take("age").unwrap(); let email: String = row.take("email").unwrap(); assert_eq!(1, id); assert_eq!("John", name); assert_eq!(17, age); assert_eq!("foo@bar.baz", email); });
Methods
impl Row
[src]
fn len(&self) -> usize
Returns length of a row.
fn as_ref(&self, index: usize) -> Option<&Value>
Returns reference to the value of a column with index index
if it exists and wasn't taken
by Row::take
method.
Non panicking version of row[usize]
.
fn get<T, I>(&mut self, index: I) -> Option<T> where T: FromValue, I: ColumnIndex
Will copy value at index index
if it was not taken by Row::take
earlier,
then will convert it to T
.
fn take<T, I>(&mut self, index: I) -> Option<T> where T: FromValue, I: ColumnIndex
Will take value of a column with index index
if it exists and wasn't taken earlier then
will converts it to T
.
fn unwrap(self) -> Vec<Value>
Trait Implementations
impl Debug for Row
[src]
impl PartialEq for Row
[src]
fn eq(&self, __arg_0: &Row) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Row) -> bool
This method tests for !=
.
impl Clone for Row
[src]
fn clone(&self) -> Row
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Index<usize> for Row
[src]
type Output = Value
The returned type after indexing
fn index<'a>(&'a self, index: usize) -> &'a Value
The method for the indexing (Foo[Bar]
) operation