use crate::error::AsynResult;
use crate::user::AsynUser;
pub trait AsynUInt64: Send + Sync {
fn read_uint64(&mut self, user: &AsynUser) -> AsynResult<u64>;
fn write_uint64(&mut self, user: &mut AsynUser, value: u64) -> AsynResult<()>;
fn get_bounds(&self, _user: &AsynUser) -> AsynResult<(u64, u64)> {
Ok((u64::MIN, u64::MAX))
}
}
pub trait AsynUInt64Array: Send + Sync {
fn read_uint64_array(&mut self, user: &AsynUser, max_elements: usize) -> AsynResult<Vec<u64>>;
fn write_uint64_array(&mut self, user: &mut AsynUser, value: &[u64]) -> AsynResult<()>;
}