pub struct Registry {
    pub id: Identifier,
    pub docstrings: Option<Vec<String, Global>>,
    pub aliases: Vec<Identifier, Global>,
    pub fragments: HashMap<Identifier, FragmentDef, RandomState>,
    pub primitives: HashMap<Identifier, PrimitiveDecl, RandomState>,
    pub unit_element_wise_ops: Vec<(Identifier, Box<dyn ElementWiseMiniOp + 'static, Global>), Global>,
    pub element_wise_ops: Vec<(Identifier, TypeId, fn(_: &mut IntoAst<'_>, _: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>) -> Result<Option<Arc<RValue>>, Error>, Vec<Parameter, Global>, fn(_: &mut ModelBuilder<'_>, _: &ResolvedInvocation<'_>) -> Result<Value, Error>), Global>,
    pub binary_ops: Vec<(Identifier, Box<dyn BinMiniOp + 'static, Global>), Global>,
    pub from_tract: HashMap<TypeId, fn(_: &mut IntoAst<'_>, _: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>) -> Result<Option<Arc<RValue>>, Error>, RandomState>,
    pub extensions: Vec<Box<dyn Fn(&mut ModelBuilder<'_>, &[Identifier]) -> Result<ControlFlow<(), ()>, Error> + Send + Sync + 'static, Global>, Global>,
}

Fields§

§id: Identifier§docstrings: Option<Vec<String, Global>>§aliases: Vec<Identifier, Global>§fragments: HashMap<Identifier, FragmentDef, RandomState>§primitives: HashMap<Identifier, PrimitiveDecl, RandomState>§unit_element_wise_ops: Vec<(Identifier, Box<dyn ElementWiseMiniOp + 'static, Global>), Global>§element_wise_ops: Vec<(Identifier, TypeId, fn(_: &mut IntoAst<'_>, _: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>) -> Result<Option<Arc<RValue>>, Error>, Vec<Parameter, Global>, fn(_: &mut ModelBuilder<'_>, _: &ResolvedInvocation<'_>) -> Result<Value, Error>), Global>§binary_ops: Vec<(Identifier, Box<dyn BinMiniOp + 'static, Global>), Global>§from_tract: HashMap<TypeId, fn(_: &mut IntoAst<'_>, _: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>) -> Result<Option<Arc<RValue>>, Error>, RandomState>§extensions: Vec<Box<dyn Fn(&mut ModelBuilder<'_>, &[Identifier]) -> Result<ControlFlow<(), ()>, Error> + Send + Sync + 'static, Global>, Global>

Implementations§

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.