use std::collections::HashSet;
use crate::{
config::Config,
context::Context,
db::ClauseKey,
structures::{clause::CClause, literal::CLiteral},
};
pub struct ContextBundle {
pub context: Context,
pub clause_buffer: CClause,
pub core_keys: Vec<ClauseKey>,
pub core_literals: HashSet<CLiteral>,
}
impl ContextBundle {
pub fn keep_fresh(&mut self) {
match self.context.refresh() {
true => {
self.core_keys.clear();
self.core_literals.clear();
}
false => {}
}
}
}
impl Default for ContextBundle {
fn default() -> Self {
ContextBundle {
context: Context::from_config(Config::default()),
clause_buffer: Vec::default(),
core_keys: Vec::default(),
core_literals: HashSet::default(),
}
}
}