pub trait AbstractImplementationDataType: IdentifiableAbstractionElement {
// Provided methods
fn category(&self) -> Option<ImplementationDataCategory> { ... }
fn sub_elements(
&self,
) -> impl Iterator<Item = ImplementationDataTypeElement> + Send + use<Self> { ... }
fn base_type(&self) -> Option<SwBaseType> { ... }
fn compu_method(&self) -> Option<CompuMethod> { ... }
fn data_constraint(&self) -> Option<DataConstr> { ... }
fn referenced_type(&self) -> Option<ImplementationDataType> { ... }
fn array_size(&self) -> Option<u32> { ... }
fn data_pointer_target(&self) -> Option<DataPointerTarget> { ... }
fn apply_settings(
&self,
settings: &ImplementationDataTypeSettings,
) -> Result<(), AutosarAbstractionError> { ... }
fn settings(&self) -> Option<ImplementationDataTypeSettings> { ... }
}Expand description
Interface for implementation data types, which provides default implementations for common operations
Provided Methods§
Sourcefn category(&self) -> Option<ImplementationDataCategory>
fn category(&self) -> Option<ImplementationDataCategory>
get the category of this implementation data type
Sourcefn sub_elements(
&self,
) -> impl Iterator<Item = ImplementationDataTypeElement> + Send + use<Self>
fn sub_elements( &self, ) -> impl Iterator<Item = ImplementationDataTypeElement> + Send + use<Self>
create an iterator over the sub-elements of this implementation data type
Sourcefn base_type(&self) -> Option<SwBaseType>
fn base_type(&self) -> Option<SwBaseType>
get the SwBaseType of this implementation data type [category: VALUE]
Sourcefn compu_method(&self) -> Option<CompuMethod>
fn compu_method(&self) -> Option<CompuMethod>
get the CompuMethod of this implementation data type [category: VALUE, TYPE_REFERENCE]
Sourcefn data_constraint(&self) -> Option<DataConstr>
fn data_constraint(&self) -> Option<DataConstr>
get the DataConstr of this implementation data type [category: VALUE, TYPE_REFERENCE]
Sourcefn referenced_type(&self) -> Option<ImplementationDataType>
fn referenced_type(&self) -> Option<ImplementationDataType>
get the referenced implementation data type [category: TYPE_REFERENCE]
Sourcefn array_size(&self) -> Option<u32>
fn array_size(&self) -> Option<u32>
get the array size of this implementation data type [category: ARRAY]
Sourcefn data_pointer_target(&self) -> Option<DataPointerTarget>
fn data_pointer_target(&self) -> Option<DataPointerTarget>
get the data pointer target of this implementation data type [[category: DATA_REFERENCE]]
Sourcefn apply_settings(
&self,
settings: &ImplementationDataTypeSettings,
) -> Result<(), AutosarAbstractionError>
fn apply_settings( &self, settings: &ImplementationDataTypeSettings, ) -> Result<(), AutosarAbstractionError>
apply the settings to this implementation data type
Calling this method completely replaces the existing settings of the implementation data type, deleting existing sub-elements and creating new ones according to the settings
Sourcefn settings(&self) -> Option<ImplementationDataTypeSettings>
fn settings(&self) -> Option<ImplementationDataTypeSettings>
get the settings of this implementation data type
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.