Trait rust_cuda::lend::RustToCuda
source · pub unsafe trait RustToCuda {
type CudaAllocation: CudaAlloc;
type CudaRepresentation: CudaAsRust<RustRepresentation = Self>;
}
Expand description
§Safety
This is an internal trait and should ONLY be derived automatically using
#[derive(LendRustToCuda)]
Required Associated Types§
type CudaAllocation: CudaAlloc
type CudaRepresentation: CudaAsRust<RustRepresentation = Self>
Object Safety§
This trait is not object safe.
Implementations on Foreign Types§
source§impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a [T]
impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a [T]
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = SliceRefCudaRepresentation<'a, T>
source§impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a mut [T]
impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a mut [T]
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = SliceRefMutCudaRepresentation<'a, T>
source§impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a T
impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a T
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = RefCudaRepresentation<'a, T>
source§impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a mut T
impl<'a, T: PortableBitSemantics + TypeGraphLayout> RustToCuda for &'a mut T
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = RefMutCudaRepresentation<'a, T>
source§impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Box<[T]>
impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Box<[T]>
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = BoxedSliceCudaRepresentation<T>
source§impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Box<T>
impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Box<T>
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = BoxCudaRepresentation<T>
source§impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Arc<[T]>
impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Arc<[T]>
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = ArcedSliceCudaRepresentation<T>
source§impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Arc<T>
impl<T: PortableBitSemantics + TypeGraphLayout> RustToCuda for Arc<T>
type CudaAllocation = SomeCudaAlloc
type CudaRepresentation = ArcCudaRepresentation<T>
source§impl<T: RustToCuda> RustToCuda for Option<T>
impl<T: RustToCuda> RustToCuda for Option<T>
type CudaAllocation = Option<<T as RustToCuda>::CudaAllocation>
type CudaRepresentation = OptionCudaRepresentation<<T as RustToCuda>::CudaRepresentation>
source§impl<T: RustToCuda> RustToCuda for Final<T>
Available on crate feature final
only.
impl<T: RustToCuda> RustToCuda for Final<T>
Available on crate feature
final
only.type CudaAllocation = <T as RustToCuda>::CudaAllocation
type CudaRepresentation = FinalCudaRepresentation<<T as RustToCuda>::CudaRepresentation>
Implementors§
source§impl<T: StackOnly + PortableBitSemantics + TypeGraphLayout, const M2D: bool, const M2H: bool> RustToCuda for CudaExchangeBuffer<T, M2D, M2H>
Available on crate features host
or device
only.
impl<T: StackOnly + PortableBitSemantics + TypeGraphLayout, const M2D: bool, const M2H: bool> RustToCuda for CudaExchangeBuffer<T, M2D, M2H>
Available on crate features
host
or device
only.