pub fn cast_one<T: IsTable + IsDao>(&self) -> Option<T> {
        let mut casted = self.cast::<T>();
        if casted.len() < 1 {
            return None;
        }
        Some(casted.remove(0))
    }
/// FIXME: should return an error when there are more than 1 to be casted
should return an error when there are more than 1 to be casted
should return an error when there are more than 1 to be casted
pub fn cast_one<T: IsTable + IsDao>(&self) -> Option<T> {
        let mut casted = self.cast::<T>();
        if casted.len() < 1 {
            return None;
        }
        Some(casted.remove(0))
    }
pub fn cast_one < T : IsTable + IsDao > ( & self ) -> Option < T > { let mut casted = self . cast :: < T > ( ) ; if casted . len ( ) < 1 { return None ; } Some ( casted . remove ( 0 ) ) }
FIXME: should return an error when there are more than 1 to be casted
FIXME : should return an error when there are more than 1 to be casted
&self
&self