pub struct ArgAccumulator<P: ReducePrecision> {
pub elements: SharedMemory<Vector<P::EA, P::SI>>,
pub args: SharedMemory<Vector<u32, P::SI>>,
}Fields§
§elements: SharedMemory<Vector<P::EA, P::SI>>§args: SharedMemory<Vector<u32, P::SI>>Trait Implementations§
Source§impl<P: ReducePrecision> RudaType for ArgAccumulator<P>
impl<P: ReducePrecision> RudaType for ArgAccumulator<P>
type ExpandType = ArgAccumulatorExpand<P>
fn allocate(length: usize, _coordinate: bool, _inst: &I) -> Self
fn read(accumulator: &Self, index: usize) -> Accumulator<P>
fn write(accumulator: &mut Self, index: usize, item: Accumulator<P>)
fn __expand_allocate( scope: &mut Scope, length: usize, _coordinate: bool, _inst: <I as RudaType>::ExpandType, ) -> <Self as RudaType>::ExpandType
fn __expand_read( scope: &mut Scope, accumulator: <Self as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, ) -> <Accumulator<P> as RudaType>::ExpandType
fn __expand_write( scope: &mut Scope, accumulator: <Self as RudaType>::ExpandType, index: <usize as RudaType>::ExpandType, item: <Accumulator<P> as RudaType>::ExpandType, ) -> <() as RudaType>::ExpandType
Auto Trait Implementations§
impl<P> Freeze for ArgAccumulator<P>where
SharedMemory<Vector<<P as ReducePrecision>::EA, <P as ReducePrecision>::SI>>: Freeze,
SharedMemory<Vector<u32, <P as ReducePrecision>::SI>>: Freeze,
impl<P> RefUnwindSafe for ArgAccumulator<P>where
SharedMemory<Vector<<P as ReducePrecision>::EA, <P as ReducePrecision>::SI>>: RefUnwindSafe,
SharedMemory<Vector<u32, <P as ReducePrecision>::SI>>: RefUnwindSafe,
impl<P> Send for ArgAccumulator<P>where
SharedMemory<Vector<<P as ReducePrecision>::EA, <P as ReducePrecision>::SI>>: Send,
SharedMemory<Vector<u32, <P as ReducePrecision>::SI>>: Send,
impl<P> Sync for ArgAccumulator<P>where
SharedMemory<Vector<<P as ReducePrecision>::EA, <P as ReducePrecision>::SI>>: Sync,
SharedMemory<Vector<u32, <P as ReducePrecision>::SI>>: Sync,
impl<P> Unpin for ArgAccumulator<P>where
SharedMemory<Vector<<P as ReducePrecision>::EA, <P as ReducePrecision>::SI>>: Unpin,
SharedMemory<Vector<u32, <P as ReducePrecision>::SI>>: Unpin,
impl<P> UnsafeUnpin for ArgAccumulator<P>where
SharedMemory<Vector<<P as ReducePrecision>::EA, <P as ReducePrecision>::SI>>: UnsafeUnpin,
SharedMemory<Vector<u32, <P as ReducePrecision>::SI>>: UnsafeUnpin,
impl<P> UnwindSafe for ArgAccumulator<P>where
SharedMemory<Vector<<P as ReducePrecision>::EA, <P as ReducePrecision>::SI>>: UnwindSafe,
SharedMemory<Vector<u32, <P as ReducePrecision>::SI>>: 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