[][src]Trait tract_core::analyser::types::Fact

pub trait Fact: Debug + Clone + PartialEq + Default {
type Concrete: Debug;
    fn concretize(&self) -> Option<Self::Concrete>;
fn unify(&self, other: &Self) -> TractResult<Self>; fn is_concrete(&self) -> bool { ... } }

Partial information about any value.

Associated Types

Loading content...

Required methods

fn concretize(&self) -> Option<Self::Concrete>

Tries to transform the fact into a concrete value.

fn unify(&self, other: &Self) -> TractResult<Self>

Tries to unify the fact with another fact of the same type.

Loading content...

Provided methods

fn is_concrete(&self) -> bool

Returns whether the value is fully determined.

Loading content...

Implementors

impl Fact for ShapeFact[src]

type Concrete = TVec<TDim>

fn concretize(self: &ShapeFact) -> Option<TVec<TDim>>[src]

Tries to transform the fact into a Vec<usize>, or returns None.

fn unify(&self, other: &Self) -> TractResult<Self>[src]

Tries to unify the fact with another fact of the same type.

fn is_concrete(&self) -> bool[src]

impl Fact for TensorFact[src]

type Concrete = Arc<Tensor>

fn concretize(&self) -> Option<Self::Concrete>[src]

Tries to transform the fact into a concrete value.

fn unify(&self, other: &Self) -> TractResult<Self>[src]

Tries to unify the fact with another fact of the same type.

fn is_concrete(&self) -> bool[src]

impl<T: Debug + Clone + PartialEq> Fact for GenericFact<T>[src]

type Concrete = T

fn concretize(&self) -> Option<T>[src]

Tries to transform the fact into a concrete value.

fn unify(&self, other: &Self) -> TractResult<Self>[src]

Tries to unify the fact with another fact of the same type.

fn is_concrete(&self) -> bool[src]

Loading content...