pub struct PartialRow<'a, R> { /* private fields */ }Available on crate feature
i-implement-a-third-party-backend-and-opt-into-breaking-changes only.Expand description
A row type that wraps an inner row
This type only allows to access fields of the inner row, whose index is
part of range. This type is used by diesel internally to implement
FromStaticSqlRow.
Indexing via usize starts with 0 for this row type. The index is then shifted
by self.range.start to match the corresponding field in the underlying row.
Implementations§
Source§impl<'a, R> PartialRow<'a, R>
impl<'a, R> PartialRow<'a, R>
Sourcepub fn new<'b, DB>(inner: &'a R, range: Range<usize>) -> Self
pub fn new<'b, DB>(inner: &'a R, range: Range<usize>) -> Self
Create a new PartialRow instance based on an inner
row and a range of field that should be part of the constructed
wrapper.
See the documentation of PartialRow for details.
Trait Implementations§
Source§impl<'a, R: Debug> Debug for PartialRow<'a, R>
impl<'a, R: Debug> Debug for PartialRow<'a, R>
Source§impl<'a, DB, R> Row<'a, DB> for PartialRow<'_, R>
impl<'a, DB, R> Row<'a, DB> for PartialRow<'_, R>
Source§type Field<'f> = <R as Row<'a, DB>>::Field<'f>
where
R: 'f,
Self: 'f,
'a: 'f
type Field<'f> = <R as Row<'a, DB>>::Field<'f> where R: 'f, Self: 'f, 'a: 'f
Field type returned by a
Row implementation Read moreSource§type InnerPartialRow = R
type InnerPartialRow = R
Return type of
PartialRow Read moreSource§fn field_count(&self) -> usize
fn field_count(&self) -> usize
Get the number of fields in the current row
Source§fn get<'c, I>(&'c self, idx: I) -> Option<Self::Field<'c>>where
Self: RowIndex<I>,
'a: 'c,
fn get<'c, I>(&'c self, idx: I) -> Option<Self::Field<'c>>where
Self: RowIndex<I>,
'a: 'c,
Get the field with the provided index from the row. Read more
Source§fn partial_row(&self, range: Range<usize>) -> PartialRow<'_, R>
fn partial_row(&self, range: Range<usize>) -> PartialRow<'_, R>
Returns a wrapping row that allows only to access fields, where the index is part of
the provided range.
Source§impl<'a, R> RowIndex<&'a str> for PartialRow<'_, R>
impl<'a, R> RowIndex<&'a str> for PartialRow<'_, R>
Source§impl<R> RowIndex<usize> for PartialRow<'_, R>
impl<R> RowIndex<usize> for PartialRow<'_, R>
impl<R> RowSealed for PartialRow<'_, R>
Auto Trait Implementations§
impl<'a, R> Freeze for PartialRow<'a, R>
impl<'a, R> RefUnwindSafe for PartialRow<'a, R>where
R: RefUnwindSafe,
impl<'a, R> Send for PartialRow<'a, R>where
R: Sync,
impl<'a, R> Sync for PartialRow<'a, R>where
R: Sync,
impl<'a, R> Unpin for PartialRow<'a, R>
impl<'a, R> UnwindSafe for PartialRow<'a, R>where
R: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> AggregateExpressionMethods for T
impl<T> AggregateExpressionMethods for T
Source§fn aggregate_distinct(self) -> AggregateDistinct<Self>where
Self: DistinctDsl,
fn aggregate_distinct(self) -> AggregateDistinct<Self>where
Self: DistinctDsl,
DISTINCT modifier for aggregate functions Read moreSource§fn aggregate_all(self) -> AggregateAll<Self>where
Self: AllDsl,
fn aggregate_all(self) -> AggregateAll<Self>where
Self: AllDsl,
ALL modifier for aggregate functions Read moreSource§fn aggregate_filter<P>(self, f: P) -> AggregateFilter<Self, P>
fn aggregate_filter<P>(self, f: P) -> AggregateFilter<Self, P>
Add an aggregate function filter Read more
Source§fn aggregate_order<O>(self, o: O) -> AggregateOrder<Self, O>where
Self: OrderAggregateDsl<O>,
fn aggregate_order<O>(self, o: O) -> AggregateOrder<Self, O>where
Self: OrderAggregateDsl<O>,
Add an aggregate function order Read more
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> IntoSql for T
impl<T> IntoSql for T
Source§impl<T> WindowExpressionMethods for T
impl<T> WindowExpressionMethods for T
Source§fn over(self) -> Over<Self>where
Self: OverDsl,
fn over(self) -> Over<Self>where
Self: OverDsl,
Turn a function call into a window function call Read more
Source§fn window_filter<P>(self, f: P) -> WindowFilter<Self, P>
fn window_filter<P>(self, f: P) -> WindowFilter<Self, P>
Add a filter to the current window function Read more
Source§fn partition_by<E>(self, expr: E) -> PartitionBy<Self, E>where
Self: PartitionByDsl<E>,
fn partition_by<E>(self, expr: E) -> PartitionBy<Self, E>where
Self: PartitionByDsl<E>,
Add a partition clause to the current window function Read more
Source§fn window_order<E>(self, expr: E) -> WindowOrder<Self, E>where
Self: OrderWindowDsl<E>,
fn window_order<E>(self, expr: E) -> WindowOrder<Self, E>where
Self: OrderWindowDsl<E>,
Add a order clause to the current window function Read more