pub struct CNil<T>(/* private fields */)
where
T: CStackListHeadLimit;Expand description
Empty repr(C) list used as the tail sentinel for CStackList.
Trait Implementations§
Source§impl<T> CStackListHeadLimit for CNil<T>where
T: CStackListHeadLimit,
impl<T> CStackListHeadLimit for CNil<T>where
T: CStackListHeadLimit,
Source§const HEAD_LIMIT: usize = T::HEAD_LIMIT
const HEAD_LIMIT: usize = T::HEAD_LIMIT
The offset to the end of the head element.
Source§impl<T> Debug for CNil<T>where
T: CStackListHeadLimit,
impl<T> Debug for CNil<T>where
T: CStackListHeadLimit,
Source§impl<T> EmptyList for CNil<T>where
T: CStackListHeadLimit,
impl<T> EmptyList for CNil<T>where
T: CStackListHeadLimit,
Source§impl IntoRustTuple for CNil<()>
impl IntoRustTuple for CNil<()>
Source§impl<T, P> ListTypeIteratorAdvance<P> for CNil<T>where
T: CStackListHeadLimit,
P: ListTypeProperty,
impl<T, P> ListTypeIteratorAdvance<P> for CNil<T>where
T: CStackListHeadLimit,
P: ListTypeProperty,
Source§fn advancer<R>(
_iter: &mut ListTypeIterator<R, P>,
) -> Option<<P as ListTypeProperty>::Output>where
R: List,
fn advancer<R>(
_iter: &mut ListTypeIterator<R, P>,
) -> Option<<P as ListTypeProperty>::Output>where
R: List,
Advance the iterator, returning the next property value.
Source§impl StackResult for CNil<()>
impl StackResult for CNil<()>
Source§unsafe fn take_result(_stack: &mut RawStack) -> Undefined
unsafe fn take_result(_stack: &mut RawStack) -> Undefined
Returns the empty-stack marker without reading a nonexistent slot.
Source§impl ToTypeIdList for CNil<()>
impl ToTypeIdList for CNil<()>
Source§fn to_stack_info_list() -> Vec<StackInfo>
fn to_stack_info_list() -> Vec<StackInfo>
Returns an empty preloaded stack.
Auto Trait Implementations§
impl<T> Freeze for CNil<T>where
T: Freeze,
impl<T> RefUnwindSafe for CNil<T>where
T: RefUnwindSafe,
impl<T> Send for CNil<T>where
T: Send,
impl<T> Sync for CNil<T>where
T: Sync,
impl<T> Unpin for CNil<T>where
T: Unpin,
impl<T> UnsafeUnpin for CNil<T>where
T: UnsafeUnpin,
impl<T> UnwindSafe for CNil<T>where
T: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> List for Twhere
T: EmptyList,
impl<T> List for Twhere
T: EmptyList,
Source§type Push<U: 'static> = <T as EmptyList>::PushFirst<U>
type Push<U: 'static> = <T as EmptyList>::PushFirst<U>
The type of the list after pushing a new value.
Source§type ReverseOnto<U: List> = U
type ReverseOnto<U: List> = U
The resulting list when reversing
Self onto U.Source§fn empty() -> <T as List>::Empty
fn empty() -> <T as List>::Empty
Returns a new empty list that can be used to create a list with the same characteristics.
Source§fn push<U>(self, item: U) -> <T as List>::Push<U>
fn push<U>(self, item: U) -> <T as List>::Push<U>
Pushes a new value onto the front of the list, returning a new list.
Source§fn reverse_onto<U>(self, other: U) -> <T as List>::ReverseOnto<U>where
U: List,
fn reverse_onto<U>(self, other: U) -> <T as List>::ReverseOnto<U>where
U: List,
Reverse
Self and append the result to other.