use crate::types::{BinaryComparison, FluentExpression};
#[doc(alias("f-comp"))]
#[derive(Debug, Clone, PartialEq)]
pub struct FluentComparison(BinaryComparison, FluentExpression, FluentExpression);
impl FluentComparison {
pub const fn new(comp: BinaryComparison, lhs: FluentExpression, rhs: FluentExpression) -> Self {
Self(comp, lhs, rhs)
}
pub const fn comparison(&self) -> &BinaryComparison {
&self.0
}
pub const fn first(&self) -> &FluentExpression {
&self.1
}
pub const fn second(&self) -> &FluentExpression {
&self.2
}
}
impl From<(BinaryComparison, FluentExpression, FluentExpression)> for FluentComparison {
fn from(value: (BinaryComparison, FluentExpression, FluentExpression)) -> Self {
FluentComparison::new(value.0, value.1, value.2)
}
}
#[deprecated(since = "0.2.0", note = "Use `FluentComparison` instead")]
pub type FComp = FluentComparison;