pub struct LogicError {
pub id: u32,
pub kind: LogicErrorKind,
pub design_reference: Option<Arc<dyn Reference>>,
}
Expand description
Handles and describe a Mélodium logic error.
Fields§
§id: u32
Identifier of error.
kind: LogicErrorKind
Kind of error.
design_reference: Option<Arc<dyn Reference>>
Optional design reference attached to error.
Implementations§
Source§impl LogicError
impl LogicError
Sourcepub fn collection_undefined(
id: u32,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn collection_undefined( id: u32, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::CollectionUndefined
kind.
Sourcepub fn uncommited_descriptor(
id: u32,
identifier: Identifier,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn uncommited_descriptor( id: u32, identifier: Identifier, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UncommitedDescriptor
kind.
Sourcepub fn no_designer(
id: u32,
identifier: Identifier,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn no_designer( id: u32, identifier: Identifier, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::NoDesigner
kind.
Sourcepub fn erroneous_design(
id: u32,
identifier: Identifier,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn erroneous_design( id: u32, identifier: Identifier, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ErroneousDesign
kind.
Sourcepub fn erroneous_checks(
id: u32,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn erroneous_checks( id: u32, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ErroneousChecks
kind.
Generates a new error with LogicErrorKind::UnavailableDesign
kind.
Sourcepub fn launch_expect_treatment(id: u32, wrong_identifier: Identifier) -> Self
pub fn launch_expect_treatment(id: u32, wrong_identifier: Identifier) -> Self
Generates a new error with LogicErrorKind::LaunchExpectTreatment
kind.
pub fn launch_wrong_parameter(id: u32, parameter: String) -> Self
Sourcepub fn unexisting_variable(
id: u32,
identifier: Identifier,
parameter: String,
variable: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_variable( id: u32, identifier: Identifier, parameter: String, variable: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingVariable
kind.
Sourcepub fn unexisting_context_variable(
id: u32,
identifier: Identifier,
parameter: String,
context: Identifier,
variable: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_context_variable( id: u32, identifier: Identifier, parameter: String, context: Identifier, variable: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingContextVariable
kind.
Sourcepub fn unexisting_parameter(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_parameter( id: u32, scope: Identifier, called: Identifier, parameter: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingParameter
kind.
Sourcepub fn unmatching_datatype(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
value: Value,
expected: DescribedType,
given: DescribedType,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unmatching_datatype( id: u32, scope: Identifier, called: Identifier, parameter: String, value: Value, expected: DescribedType, given: DescribedType, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnmatchingDataType
kind.
Sourcepub fn unset_parameter(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unset_parameter( id: u32, scope: Identifier, called: Identifier, parameter: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnsetParameter
kind.
Sourcepub fn multiple_parameter_assignation(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn multiple_parameter_assignation( id: u32, scope: Identifier, called: Identifier, parameter: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::MultipleParameterAssignation
kind.
Sourcepub fn no_value(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn no_value( id: u32, scope: Identifier, called: Identifier, parameter: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::NoValue
kind.
Sourcepub fn no_context(
id: u32,
scope: Identifier,
model: Identifier,
name: String,
parameter: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn no_context( id: u32, scope: Identifier, model: Identifier, name: String, parameter: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::NoContext
kind.
Generates a new error with LogicErrorKind::UnavailableContext
kind.
Sourcepub fn connection_input_not_found(
id: u32,
scope: Identifier,
to: Identifier,
input: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn connection_input_not_found( id: u32, scope: Identifier, to: Identifier, input: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ConnectionInputNotFound
kind.
Sourcepub fn connection_self_input_not_found(
id: u32,
scope: Identifier,
input: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn connection_self_input_not_found( id: u32, scope: Identifier, input: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ConnectionSelfInputNotFound
kind.
Sourcepub fn connection_output_not_found(
id: u32,
scope: Identifier,
from: Identifier,
output: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn connection_output_not_found( id: u32, scope: Identifier, from: Identifier, output: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ConnectionOutputNotFound
kind.
Sourcepub fn connection_self_output_not_found(
id: u32,
scope: Identifier,
output: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn connection_self_output_not_found( id: u32, scope: Identifier, output: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ConnectionSelfOutputNotFound
kind.
Sourcepub fn unexisting_treatment(
id: u32,
scope: Identifier,
claimed: IdentifierRequirement,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_treatment( id: u32, scope: Identifier, claimed: IdentifierRequirement, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingTreatment
kind.
Sourcepub fn unexisting_model(
id: u32,
scope: Identifier,
claimed: IdentifierRequirement,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_model( id: u32, scope: Identifier, claimed: IdentifierRequirement, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingModel
kind.
Sourcepub fn unexisting_context(
id: u32,
scope: Identifier,
claimed: IdentifierRequirement,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_context( id: u32, scope: Identifier, claimed: IdentifierRequirement, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingContext
kind.
Sourcepub fn unexisting_function(
id: u32,
scope: Identifier,
claimed: IdentifierRequirement,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_function( id: u32, scope: Identifier, claimed: IdentifierRequirement, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingFunction
kind.
Sourcepub fn unexisting_data(
id: u32,
scope: Identifier,
claimed: IdentifierRequirement,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_data( id: u32, scope: Identifier, claimed: IdentifierRequirement, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingData
kind.
Sourcepub fn undeclared_model(
id: u32,
scope: Identifier,
model: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn undeclared_model( id: u32, scope: Identifier, model: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UndeclaredModel
kind.
Sourcepub fn already_declared_model(
id: u32,
scope: Identifier,
model: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn already_declared_model( id: u32, scope: Identifier, model: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::AlreadyDeclaredModel
kind.
Sourcepub fn undeclared_treatment(
id: u32,
scope: Identifier,
treatment: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn undeclared_treatment( id: u32, scope: Identifier, treatment: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UndeclaredTreatment
kind.
Sourcepub fn already_declared_treatment(
id: u32,
scope: Identifier,
treatment: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn already_declared_treatment( id: u32, scope: Identifier, treatment: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::AlreadyDeclaredTreatment
kind.
Sourcepub fn unexisting_connexion_type(
id: u32,
scope: Identifier,
from: String,
output: String,
to: String,
input: String,
output_flow: Flow,
output_type: DescribedType,
input_flow: Flow,
input_type: DescribedType,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_connexion_type( id: u32, scope: Identifier, from: String, output: String, to: String, input: String, output_flow: Flow, output_type: DescribedType, input_flow: Flow, input_type: DescribedType, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingConnectionType
kind.
Sourcepub fn unsatisfied_output(
id: u32,
scope: Identifier,
output: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unsatisfied_output( id: u32, scope: Identifier, output: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnsatisfiedOutput
kind.
Sourcepub fn overloaded_output(
id: u32,
scope: Identifier,
output: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn overloaded_output( id: u32, scope: Identifier, output: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::OverloadedOutput
kind.
Sourcepub fn unmatching_model_type(
id: u32,
scope: Identifier,
called: Identifier,
name: String,
expected: Identifier,
given_name: String,
given: Identifier,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unmatching_model_type( id: u32, scope: Identifier, called: Identifier, name: String, expected: Identifier, given_name: String, given: Identifier, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnmatchingModelType
kind.
Sourcepub fn unexisting_parametric_model(
id: u32,
scope: Identifier,
called: Identifier,
parametric_model: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_parametric_model( id: u32, scope: Identifier, called: Identifier, parametric_model: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingParametricModel
kind.
Sourcepub fn unset_model(
id: u32,
scope: Identifier,
called: Identifier,
parametric_model: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unset_model( id: u32, scope: Identifier, called: Identifier, parametric_model: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnsetModel
kind.
Sourcepub fn already_included_build_step(
id: u32,
treatment: Identifier,
cause_step: CheckStep,
check_steps: Vec<CheckStep>,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn already_included_build_step( id: u32, treatment: Identifier, cause_step: CheckStep, check_steps: Vec<CheckStep>, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::AlreadyIncludedBuildStep
kind.
Sourcepub fn unsatisfied_input(
id: u32,
scope: Option<Identifier>,
treatment: String,
input: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unsatisfied_input( id: u32, scope: Option<Identifier>, treatment: String, input: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnsatisfiedInput
kind.
Sourcepub fn const_required_var_provided(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
variable: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn const_required_var_provided( id: u32, scope: Identifier, called: Identifier, parameter: String, variable: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ConstRequiredVarProvided
kind.
Sourcepub fn const_required_context_provided(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
context: Identifier,
entry: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn const_required_context_provided( id: u32, scope: Identifier, called: Identifier, parameter: String, context: Identifier, entry: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ConstRequiredContextProvided
kind.
Sourcepub fn model_instanciation_const_only(
id: u32,
scope: Identifier,
called: Identifier,
name: String,
parameter: String,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn model_instanciation_const_only( id: u32, scope: Identifier, called: Identifier, name: String, parameter: String, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ModelInstanciationConstOnly
kind.
Sourcepub fn const_required_function_returns_var(
id: u32,
scope: Identifier,
called: Identifier,
parameter: String,
function: Identifier,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn const_required_function_returns_var( id: u32, scope: Identifier, called: Identifier, parameter: String, function: Identifier, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::ConstRequiredFunctionReturnsVar
kind.
Sourcepub fn unmatching_number_of_parameters(
id: u32,
scope: Identifier,
function: Identifier,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unmatching_number_of_parameters( id: u32, scope: Identifier, function: Identifier, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnmatchingNumberOfParameters
kind.
Sourcepub fn unexisting_generic(
id: u32,
scope: Identifier,
element: Identifier,
name: String,
described_type: DescribedType,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unexisting_generic( id: u32, scope: Identifier, element: Identifier, name: String, described_type: DescribedType, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnexistingGeneric
kind.
Sourcepub fn undefined_generic(
id: u32,
scope: Identifier,
element: Identifier,
described_type: DescribedType,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn undefined_generic( id: u32, scope: Identifier, element: Identifier, described_type: DescribedType, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UndefinedGeneric
kind.
Sourcepub fn unsatisfied_traits(
id: u32,
scope: Identifier,
element: Identifier,
described_type: DescribedType,
unsatisfied_traits: Vec<DataTrait>,
design_reference: Option<Arc<dyn Reference>>,
) -> Self
pub fn unsatisfied_traits( id: u32, scope: Identifier, element: Identifier, described_type: DescribedType, unsatisfied_traits: Vec<DataTrait>, design_reference: Option<Arc<dyn Reference>>, ) -> Self
Generates a new error with LogicErrorKind::UnsatisfiedTraits
kind.
Trait Implementations§
Source§impl Clone for LogicError
impl Clone for LogicError
Source§fn clone(&self) -> LogicError
fn clone(&self) -> LogicError
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for LogicError
impl Debug for LogicError
Source§impl Display for LogicError
impl Display for LogicError
Source§impl From<LogicError> for LogicErrors
impl From<LogicError> for LogicErrors
Source§fn from(value: LogicError) -> Self
fn from(value: LogicError) -> Self
Auto Trait Implementations§
impl Freeze for LogicError
impl !RefUnwindSafe for LogicError
impl Send for LogicError
impl Sync for LogicError
impl Unpin for LogicError
impl !UnwindSafe for LogicError
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
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>
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>
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)
&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)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.