pub enum BrickDomain {
Top,
Value(Brick),
}
Expand description
The single brick domain that represents a set of character sequences as well as the minimum and maximum of the sum of their occurrences.
e.g. [{“mo”, “de”}]^{1,2} represents the following set of strings: {mo, de, momo, dede, mode, demo}.
Variants§
Top
The Top value represents the powerset over the alphabet of allowed characters with a minimum of 0 and a maximum of positive infinity.
Value(Brick)
The set of character sequences as well as the minimum and maximum of the sum of their occurrences.
Implementations§
source§impl BrickDomain
impl BrickDomain
sourcepub fn widen(&self, other: &BrickDomain) -> Self
pub fn widen(&self, other: &BrickDomain) -> Self
The widen function of the BrickDomain takes the union of both BrickDomains and returns Top if the number of sequences exceeds a certain threshold. If neither of the domains are Top, the minimum and maximum of the interval bounds are taken and it is checked whether their difference exceeds a certain threshold. If so min is set to 0 and max is set to infinity (here Max value of 32 bits). Otherwise, their values are taken as new bounds for the merged domain.
sourcepub fn is_less_or_equal(&self, other: &BrickDomain) -> bool
pub fn is_less_or_equal(&self, other: &BrickDomain) -> bool
Checks whether the current BrickDomain is less or equal than the other BrickDomain by definition of the partial order. Empty strings are ignored for order comparisons.
Trait Implementations§
source§impl AbstractDomain for BrickDomain
impl AbstractDomain for BrickDomain
source§impl Clone for BrickDomain
impl Clone for BrickDomain
source§fn clone(&self) -> BrickDomain
fn clone(&self) -> BrickDomain
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for BrickDomain
impl Debug for BrickDomain
source§impl<'de> Deserialize<'de> for BrickDomain
impl<'de> Deserialize<'de> for BrickDomain
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl Display for BrickDomain
impl Display for BrickDomain
source§impl PartialEq for BrickDomain
impl PartialEq for BrickDomain
source§fn eq(&self, other: &BrickDomain) -> bool
fn eq(&self, other: &BrickDomain) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl Serialize for BrickDomain
impl Serialize for BrickDomain
impl Eq for BrickDomain
impl StructuralEq for BrickDomain
impl StructuralPartialEq for BrickDomain
Auto Trait Implementations§
impl RefUnwindSafe for BrickDomain
impl Send for BrickDomain
impl Sync for BrickDomain
impl Unpin for BrickDomain
impl UnwindSafe for BrickDomain
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.