pub struct Model { /* private fields */ }
Implementations§
Source§impl Model
impl Model
pub fn new( descriptor: &Arc<ModelDescriptor>, collection: Arc<Collection>, design_reference: Option<Arc<dyn Reference>>, ) -> Arc<RwLock<Self>>
pub fn collection(&self) -> &Arc<Collection>
pub fn descriptor(&self) -> Arc<ModelDescriptor>
pub fn design_reference(&self) -> &Option<Arc<dyn Reference>>
pub fn import_design( &mut self, design: &ModelDesign, replace: &HashMap<Identifier, Identifier>, design_reference: Option<Arc<dyn Reference>>, ) -> LogicResult<()>
pub fn add_parameter( &mut self, name: &str, design_reference: Option<Arc<dyn Reference>>, ) -> LogicResult<Arc<RwLock<Parameter>>>
pub fn remove_parameter(&mut self, name: &str) -> LogicResult<bool>
pub fn parameters(&self) -> &HashMap<String, Arc<RwLock<Parameter>>>
pub fn validate(&self) -> LogicResult<()>
pub fn make_use(&self, identifier: &Identifier) -> bool
pub fn unvalidated_design(&self) -> LogicResult<ModelDesign>
pub fn design(&self) -> LogicResult<ModelDesign>
Trait Implementations§
Source§impl Scope for Model
impl Scope for Model
fn descriptor(&self) -> Arc<dyn Parameterized>
fn collection(&self) -> Arc<Collection>
fn identifier(&self) -> Identifier
Auto Trait Implementations§
impl Freeze for Model
impl !RefUnwindSafe for Model
impl Send for Model
impl Sync for Model
impl Unpin for Model
impl !UnwindSafe for Model
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
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.