Compare commits
5 Commits
Author | SHA1 | Date | |
---|---|---|---|
ae3925c72b | |||
6183ae22b5 | |||
a7e07380ff | |||
14abd73110 | |||
3a5788bd24 |
@ -1,4 +1,4 @@
|
||||
# foliage [](https://github.com/potassco/foliage/releases) [](https://crates.io/crates/foliage)
|
||||
# foliage [](https://crates.io/crates/foliage)
|
||||
|
||||
> First-order logic with integer arithmetics in Rust
|
||||
|
||||
|
@ -67,6 +67,26 @@ impl Precedence for crate::Formula
|
||||
}
|
||||
}
|
||||
|
||||
impl std::fmt::Debug for crate::SpecialInteger
|
||||
{
|
||||
fn fmt(&self, format: &mut std::fmt::Formatter) -> std::fmt::Result
|
||||
{
|
||||
match &self
|
||||
{
|
||||
crate::SpecialInteger::Infimum => write!(format, "#inf"),
|
||||
crate::SpecialInteger::Supremum => write!(format, "#sup"),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl std::fmt::Display for crate::SpecialInteger
|
||||
{
|
||||
fn fmt(&self, format: &mut std::fmt::Formatter) -> std::fmt::Result
|
||||
{
|
||||
write!(format, "{:?}", &self)
|
||||
}
|
||||
}
|
||||
|
||||
impl std::fmt::Debug for crate::FunctionDeclaration
|
||||
{
|
||||
fn fmt(&self, format: &mut std::fmt::Formatter) -> std::fmt::Result
|
||||
@ -121,8 +141,7 @@ struct TermDisplay<'term>
|
||||
term: &'term crate::Term,
|
||||
}
|
||||
|
||||
fn display_term<'term>(term: &'term crate::Term, parent_precedence: Option<i32>)
|
||||
-> TermDisplay<'term>
|
||||
fn display_term(term: &crate::Term, parent_precedence: Option<i32>) -> TermDisplay
|
||||
{
|
||||
TermDisplay
|
||||
{
|
||||
@ -152,8 +171,7 @@ impl<'term> std::fmt::Debug for TermDisplay<'term>
|
||||
{
|
||||
crate::Term::Boolean(true) => write!(format, "true"),
|
||||
crate::Term::Boolean(false) => write!(format, "false"),
|
||||
crate::Term::SpecialInteger(crate::SpecialInteger::Infimum) => write!(format, "#inf"),
|
||||
crate::Term::SpecialInteger(crate::SpecialInteger::Supremum) => write!(format, "#sup"),
|
||||
crate::Term::SpecialInteger(value) => write!(format, "{:?}", value),
|
||||
crate::Term::Integer(value) => write!(format, "{}", value),
|
||||
crate::Term::String(value) => write!(format, "\"{}\"", value),
|
||||
crate::Term::Variable(variable) => write!(format, "{:?}", variable.declaration),
|
||||
@ -165,9 +183,9 @@ impl<'term> std::fmt::Debug for TermDisplay<'term>
|
||||
"number of function arguments differs from declaration (expected {}, got {})",
|
||||
function.declaration.arity, function.arguments.len());
|
||||
|
||||
if function.arguments.len() > 0
|
||||
if !function.arguments.is_empty()
|
||||
{
|
||||
write!(format, "{}(", function.declaration.name)?;
|
||||
write!(format, "(")?;
|
||||
|
||||
let mut separator = "";
|
||||
|
||||
@ -238,8 +256,7 @@ struct FormulaDisplay<'formula>
|
||||
formula: &'formula crate::Formula,
|
||||
}
|
||||
|
||||
fn display_formula<'formula>(formula: &'formula crate::Formula, parent_precedence: Option<i32>)
|
||||
-> FormulaDisplay<'formula>
|
||||
fn display_formula(formula: &crate::Formula, parent_precedence: Option<i32>) -> FormulaDisplay
|
||||
{
|
||||
FormulaDisplay
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user