Skip to main content

ArgVisitor

Trait ArgVisitor 

Source
pub trait ArgVisitor {
    // Required methods
    fn visit_ptr(&mut self, ptr: *mut c_void);
    fn visit_bool(&mut self, val: bool);
    fn visit_i8(&mut self, val: i8);
    fn visit_i16(&mut self, val: i16);
    fn visit_i32(&mut self, val: i32);
    fn visit_i64(&mut self, val: i64);
    fn visit_u8(&mut self, val: u8);
    fn visit_u16(&mut self, val: u16);
    fn visit_u32(&mut self, val: u32);
    fn visit_u64(&mut self, val: u64);
    fn visit_f32(&mut self, val: f32);
    fn visit_f64(&mut self, val: f64);
}
Expand description

Receives each argument of a kernel in order. Implement this on a backend- specific “packer” struct (e.g. a CUDA arg-pointer array builder).

Required Methods§

Source

fn visit_ptr(&mut self, ptr: *mut c_void)

Visits a raw pointer argument.

Source

fn visit_bool(&mut self, val: bool)

Visits a bool argument.

Source

fn visit_i8(&mut self, val: i8)

Visits an i8 argument.

Source

fn visit_i16(&mut self, val: i16)

Visits an i16 argument.

Source

fn visit_i32(&mut self, val: i32)

Visits an i32 argument.

Source

fn visit_i64(&mut self, val: i64)

Visits an i64 argument.

Source

fn visit_u8(&mut self, val: u8)

Visits a u8 argument.

Source

fn visit_u16(&mut self, val: u16)

Visits a u16 argument.

Source

fn visit_u32(&mut self, val: u32)

Visits a u32 argument.

Source

fn visit_u64(&mut self, val: u64)

Visits a u64 argument.

Source

fn visit_f32(&mut self, val: f32)

Visits an f32 argument.

Source

fn visit_f64(&mut self, val: f64)

Visits an f64 argument.

Implementors§