use crate::prelude::*;
#[derive(Clone, Default)]
pub struct KnownFnInfo {
pub fn_set: Option<FnSetBody>,
pub equal_to: Option<Obj>,
pub restrict_to: Option<FnSetBody>,
}
impl KnownFnInfo {
pub fn with_fn_set(fn_set: Option<FnSetBody>, equal_to: Option<Obj>) -> Self {
KnownFnInfo {
fn_set,
equal_to,
restrict_to: None,
}
}
pub fn update_restrict_to(&mut self, restrict_to: FnSetBody) {
self.restrict_to = Some(restrict_to);
}
pub fn update_equal_to(&mut self, equal_to: Obj) {
self.equal_to = Some(equal_to);
}
pub fn update_fn_set(&mut self, fn_set: FnSetBody) {
self.fn_set = Some(fn_set);
}
}