pub enum TrieIterKind<'a, R: TrieIterable> {
Relation(&'a R),
Singleton(SingletonTrieIter),
}Expand description
Either borrows a real relation or owns a synthetic singleton.
TrieIterable::trie_iter dispatches to the appropriate inner
variant. Lifetime 'a borrows the real relation; singletons carry
no reference.
Variants§
Relation(&'a R)
A real relation borrowed from the database.
Singleton(SingletonTrieIter)
A synthetic Const_<id> singleton introduced by the rewrite.
Trait Implementations§
Source§impl<R: TrieIterable> TrieIterable for TrieIterKind<'_, R>
impl<R: TrieIterable> TrieIterable for TrieIterKind<'_, R>
Source§fn trie_iter(&self) -> impl TrieIterator + IntoIterator<Item = Vec<usize>>
fn trie_iter(&self) -> impl TrieIterator + IntoIterator<Item = Vec<usize>>
Returns a trie iterator over this structure that also implements
IntoIterator, allowing it to be wrapped in a TrieIteratorWrapper
for tuple-at-a-time consumption.impl<R: TrieIterable> JoinIterable for TrieIterKind<'_, R>
Auto Trait Implementations§
impl<'a, R> Freeze for TrieIterKind<'a, R>
impl<'a, R> RefUnwindSafe for TrieIterKind<'a, R>where
R: RefUnwindSafe,
impl<'a, R> Send for TrieIterKind<'a, R>where
R: Sync,
impl<'a, R> Sync for TrieIterKind<'a, R>where
R: Sync,
impl<'a, R> Unpin for TrieIterKind<'a, R>
impl<'a, R> UnsafeUnpin for TrieIterKind<'a, R>
impl<'a, R> UnwindSafe for TrieIterKind<'a, R>where
R: RefUnwindSafe,
Blanket Implementations§
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