pub trait Matcher { // Required method fn match_value( &self, value: &Value, matches: &mut Vec<(VarId, Value)>, ) -> bool; }