Trait tract_api::ModelInterface 
source · pub trait ModelInterface: Sized {
    type Fact: FactInterface;
    type Runnable: RunnableInterface;
    type Value: ValueInterface;
Show 20 methods
    // Required methods
    fn input_count(&self) -> Result<usize>;
    fn output_count(&self) -> Result<usize>;
    fn input_name(&self, id: usize) -> Result<String>;
    fn output_name(&self, id: usize) -> Result<String>;
    fn set_output_names(
        &mut self,
        outputs: impl IntoIterator<Item = impl AsRef<str>>
    ) -> Result<()>;
    fn input_fact(&self, id: usize) -> Result<Self::Fact>;
    fn output_fact(&self, id: usize) -> Result<Self::Fact>;
    fn declutter(&mut self) -> Result<()>;
    fn optimize(&mut self) -> Result<()>;
    fn into_decluttered(self) -> Result<Self>;
    fn into_optimized(self) -> Result<Self>;
    fn into_runnable(self) -> Result<Self::Runnable>;
    fn concretize_symbols(
        &mut self,
        values: impl IntoIterator<Item = (impl AsRef<str>, i64)>
    ) -> Result<()>;
    fn f32_to_f16(&mut self) -> Result<()>;
    fn f16_to_f32(&mut self) -> Result<()>;
    fn pulse(
        &mut self,
        name: impl AsRef<str>,
        value: impl AsRef<str>
    ) -> Result<()>;
    fn cost_json(&self) -> Result<String>;
    fn profile_json<I, V, E>(&self, inputs: Option<I>) -> Result<String>
       where I: IntoIterator<Item = V>,
             V: TryInto<Self::Value, Error = E>,
             E: Into<Error> + Debug;
    fn property_keys(&self) -> Result<Vec<String>>;
    fn property(&self, name: impl AsRef<str>) -> Result<Self::Value>;
}Required Associated Types§
type Fact: FactInterface
type Runnable: RunnableInterface
type Value: ValueInterface
Required Methods§
fn input_count(&self) -> Result<usize>
fn output_count(&self) -> Result<usize>
fn input_name(&self, id: usize) -> Result<String>
fn output_name(&self, id: usize) -> Result<String>
fn set_output_names( &mut self, outputs: impl IntoIterator<Item = impl AsRef<str>> ) -> Result<()>
fn input_fact(&self, id: usize) -> Result<Self::Fact>
fn output_fact(&self, id: usize) -> Result<Self::Fact>
fn declutter(&mut self) -> Result<()>
fn optimize(&mut self) -> Result<()>
fn into_decluttered(self) -> Result<Self>
fn into_optimized(self) -> Result<Self>
fn into_runnable(self) -> Result<Self::Runnable>
fn concretize_symbols( &mut self, values: impl IntoIterator<Item = (impl AsRef<str>, i64)> ) -> Result<()>
fn f32_to_f16(&mut self) -> Result<()>
fn f16_to_f32(&mut self) -> Result<()>
fn pulse(&mut self, name: impl AsRef<str>, value: impl AsRef<str>) -> Result<()>
fn cost_json(&self) -> Result<String>
fn profile_json<I, V, E>(&self, inputs: Option<I>) -> Result<String>
fn property_keys(&self) -> Result<Vec<String>>
fn property(&self, name: impl AsRef<str>) -> Result<Self::Value>
Object Safety§
This trait is not object safe.