pub struct Model { /* private fields */ }
Implementations§
Source§impl Model
impl Model
pub fn new( identifier: Identifier, base_model: &Arc<dyn ModelDescriptor>, ) -> Self
pub fn set_identifier(&mut self, identifier: Identifier)
pub fn reset_designer(&self)
pub fn designer( &self, collection: Arc<Collection>, design_reference: Option<Arc<dyn Reference>>, ) -> LogicResult<Arc<RwLock<Designer>>>
pub fn commit_design(&self) -> LogicResult<()>
pub fn design(&self) -> LogicResult<Arc<Design>>
pub fn update_with_collection( &mut self, collection: &Collection, replace: &HashMap<Identifier, Identifier>, ) -> LogicResult<()>
pub fn set_documentation(&mut self, documentation: &str)
pub fn add_attribute(&mut self, name: String, attribute: Attribute)
pub fn remove_attribute(&mut self, name: &str) -> bool
pub fn add_parameter(&mut self, parameter: Parameter)
pub fn remove_parameter(&mut self, name: &str) -> bool
pub fn commit(self) -> Arc<Self>
Trait Implementations§
Source§impl Attribuable for Model
impl Attribuable for Model
fn attributes(&self) -> &Attributes
Source§impl Buildable<ModelBuildMode> for Model
impl Buildable<ModelBuildMode> for Model
fn build_mode(&self) -> ModelBuildMode
fn make_use(&self, identifier: &Identifier) -> bool
Source§impl Clone for Model
impl Clone for Model
Source§fn clone(&self) -> Self
fn clone(&self) -> Self
Clone model descriptor.
The descriptor and its inner descriptive elements are all cloned, but not the designer nor the related design. The cloned descriptor need to be commited.
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Documented for Model
impl Documented for Model
fn documentation(&self) -> &str
Source§impl Identified for Model
impl Identified for Model
fn identifier(&self) -> &Identifier
Source§impl Model for Model
impl Model for Model
fn is_core_model(&self) -> bool
fn base_model(&self) -> Option<Arc<dyn ModelDescriptor>>
fn sources(&self) -> &HashMap<String, Vec<Arc<dyn Context>>>
fn as_identified(&self) -> Arc<dyn Identified>
fn as_buildable(&self) -> Arc<dyn Buildable<ModelBuildMode>>
fn as_parameterized(&self) -> Arc<dyn Parameterized>
Source§impl Parameterized for Model
impl Parameterized for Model
fn parameters(&self) -> &HashMap<String, Parameter>
fn as_identified(&self) -> Arc<dyn Identified>
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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.