Skip to content

Commit b4bd6e2

Browse files
Update listener callback signature in Engine to include LBool parameter
1 parent fe8c4e5 commit b4bd6e2

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

src/lib.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ use std::{
2727
ops::Not,
2828
};
2929

30-
type Callback = Box<dyn Fn(usize)>;
30+
type Callback = Box<dyn Fn(usize, LBool)>;
3131

3232
#[derive(Clone, Debug, PartialEq, Eq, Default)]
3333
#[repr(u8)]
@@ -306,7 +306,7 @@ impl Engine {
306306
self.prop_q.push_back(lit.var());
307307
if let Some(listeners) = self.listeners.get(&lit.var()) {
308308
for listener in listeners {
309-
listener(lit.var());
309+
listener(lit.var(), self.value(lit.var()).clone());
310310
}
311311
}
312312
true
@@ -424,7 +424,7 @@ impl Engine {
424424

425425
pub fn add_listener<F>(&mut self, var: usize, listener: F)
426426
where
427-
F: Fn(usize) + 'static,
427+
F: Fn(usize, LBool) + 'static,
428428
{
429429
self.listeners.entry(var).or_default().push(Box::new(listener));
430430
}
@@ -527,7 +527,7 @@ mod tests {
527527
let triggered_clone = Arc::clone(&triggered);
528528

529529
// Add listener to b
530-
engine.add_listener(b, move |_| {
530+
engine.add_listener(b, move |_, _| {
531531
let mut val = triggered_clone.lock().unwrap();
532532
*val = true;
533533
});

0 commit comments

Comments
 (0)