pub trait DynamicScalarAccess<S>: Send + Sync{
// Required methods
fn entity_class(&self) -> EntityClassId;
fn variable(&self) -> VariableId;
fn entity_count(&self, solution: &S) -> usize;
fn get(&self, solution: &S, row: usize) -> Option<usize>;
fn set(&self, solution: &mut S, row: usize, value: Option<usize>);
fn candidate_values<'a>(&self, solution: &'a S, row: usize) -> &'a [usize];
}Expand description
Object-safe dynamic scalar variable access.
Required Methods§
fn entity_class(&self) -> EntityClassId
fn variable(&self) -> VariableId
fn entity_count(&self, solution: &S) -> usize
fn get(&self, solution: &S, row: usize) -> Option<usize>
fn set(&self, solution: &mut S, row: usize, value: Option<usize>)
fn candidate_values<'a>(&self, solution: &'a S, row: usize) -> &'a [usize]
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".