veripb 3.0.2

VeriPB is a proof checker for verifying pseudo-Boolean certificates of satisfiability, unsatisfiability, and optimality bounds.
Documentation
use std::rc::Rc;

use veripb_formula::prelude::DBConstraint;

use crate::prelude::*;

#[derive(Debug)]
pub struct UnimplementedRule {
    #[allow(dead_code)]
    feature: String,
}

impl UnimplementedRule {
    pub fn new(feature: String) -> Self {
        Self { feature }
    }
}

impl Rule for UnimplementedRule {
    fn compute(
        &mut self,
        _context: &mut Context,
        _database: &mut Database,
    ) -> Result<Vec<Rc<DBConstraint>>, CheckingError> {
        Err(CheckingError::not_implemented(&self.feature))
    }

    #[inline]
    fn is_subproof_friendly(&self) -> bool {
        true
    }
}