pub struct ArPackage(/* private fields */);Expand description
An ArPackage is an Autosar package, which can contain other packages or elements
Implementations§
Source§impl ArPackage
impl ArPackage
Sourcepub fn get_or_create(
model: &AutosarModel,
package_path: &str,
) -> Result<Self, AutosarAbstractionError>
pub fn get_or_create( model: &AutosarModel, package_path: &str, ) -> Result<Self, AutosarAbstractionError>
Get or create an autosar package for the given path
§Example
let package = ArPackage::get_or_create(&model, "/pkg1").unwrap();§Errors
AutosarAbstractionError::InvalidPathThe value inpackage_pathwas not an Autosar pathAutosarAbstractionError::ModelErrorAn error occurred in the Autosar model
Sourcepub fn create_application_array_data_type<T: Into<ApplicationDataType> + AbstractionElement>(
&self,
name: &str,
element_type: &T,
max_num_elements: u64,
) -> Result<ApplicationArrayDataType, AutosarAbstractionError>
pub fn create_application_array_data_type<T: Into<ApplicationDataType> + AbstractionElement>( &self, name: &str, element_type: &T, max_num_elements: u64, ) -> Result<ApplicationArrayDataType, AutosarAbstractionError>
create a new ApplicationArrayDataType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let element_type = package.create_application_primitive_data_type("ElementType", ApplicationPrimitiveCategory::Value, None, None, None)?;
let data_type = package.create_application_array_data_type("ArrayDataType", &element_type, 4)?;
assert!(model.get_element_by_path("/some/package/ArrayDataType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the APPLICATION-ARRAY-DATA-TYPE element
Sourcepub fn create_application_primitive_data_type(
&self,
name: &str,
category: ApplicationPrimitiveCategory,
compu_method: Option<&CompuMethod>,
unit: Option<&Unit>,
data_constraint: Option<&DataConstr>,
) -> Result<ApplicationPrimitiveDataType, AutosarAbstractionError>
pub fn create_application_primitive_data_type( &self, name: &str, category: ApplicationPrimitiveCategory, compu_method: Option<&CompuMethod>, unit: Option<&Unit>, data_constraint: Option<&DataConstr>, ) -> Result<ApplicationPrimitiveDataType, AutosarAbstractionError>
create a new ApplicationPrimitiveDataType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let data_type = package.create_application_primitive_data_type("ApplicationPrimitiveDataType", ApplicationPrimitiveCategory::Value, None, None, None)?;
assert!(model.get_element_by_path("/some/package/ApplicationPrimitiveDataType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the APPLICATION-PRIMITIVE-DATA-TYPE element
Sourcepub fn create_application_record_data_type(
&self,
name: &str,
) -> Result<ApplicationRecordDataType, AutosarAbstractionError>
pub fn create_application_record_data_type( &self, name: &str, ) -> Result<ApplicationRecordDataType, AutosarAbstractionError>
create a new ApplicationRecordDataType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let data_type = package.create_application_record_data_type("ApplicationRecordDataType")?;
assert!(model.get_element_by_path("/some/package/ApplicationRecordDataType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the APPLICATION-RECORD-DATA-TYPE element
Sourcepub fn create_application_sw_component_type(
&self,
name: &str,
) -> Result<ApplicationSwComponentType, AutosarAbstractionError>
pub fn create_application_sw_component_type( &self, name: &str, ) -> Result<ApplicationSwComponentType, AutosarAbstractionError>
create a new ApplicationSwComponentType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let component = package.create_application_sw_component_type("MyComponent")?;
assert!(model.get_element_by_path("/some/package/MyComponent").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the APPLICATION-SW-COMPONENT-TYPE element
Sourcepub fn create_client_server_interface(
&self,
name: &str,
) -> Result<ClientServerInterface, AutosarAbstractionError>
pub fn create_client_server_interface( &self, name: &str, ) -> Result<ClientServerInterface, AutosarAbstractionError>
create a new ClientServerInterface in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let interface = package.create_client_server_interface("ClientServerInterface")?;
assert!(model.get_element_by_path("/some/package/ClientServerInterface").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the CLIENT-SERVER-INTERFACE element
Sourcepub fn create_complex_device_driver_sw_component_type(
&self,
name: &str,
) -> Result<ComplexDeviceDriverSwComponentType, AutosarAbstractionError>
pub fn create_complex_device_driver_sw_component_type( &self, name: &str, ) -> Result<ComplexDeviceDriverSwComponentType, AutosarAbstractionError>
create a new ComplexDeviceDriverSwComponentType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let component = package.create_complex_device_driver_sw_component_type("ComplexDeviceDriverSwComponentType")?;
assert!(model.get_element_by_path("/some/package/ComplexDeviceDriverSwComponentType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the COMPLEX-DEVICE-DRIVER-SW-COMPONENT-TYPE element
Sourcepub fn create_composition_sw_component_type(
&self,
name: &str,
) -> Result<CompositionSwComponentType, AutosarAbstractionError>
pub fn create_composition_sw_component_type( &self, name: &str, ) -> Result<CompositionSwComponentType, AutosarAbstractionError>
create a new CompositionSwComponentType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let component = package.create_composition_sw_component_type("CompositionSwComponentType")?;
assert!(model.get_element_by_path("/some/package/CompositionSwComponentType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the COMPOSITION-SW-COMPONENT-TYPE element
Sourcepub fn create_compu_method(
&self,
name: &str,
content: CompuMethodContent,
) -> Result<CompuMethod, AutosarAbstractionError>
pub fn create_compu_method( &self, name: &str, content: CompuMethodContent, ) -> Result<CompuMethod, AutosarAbstractionError>
create a new CompuMethod in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let compu_content = CompuMethodContent::Linear(CompuMethodLinearContent {
direction: CompuScaleDirection::IntToPhys,
offset: 0.0,
factor: 1.0,
divisor: 1.0,
lower_limit: None,
upper_limit: None,
});
let compu_method = package.create_compu_method("CompuMethod", compu_content)?;
assert!(model.get_element_by_path("/some/package/CompuMethod").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the COMPU-METHOD element
Sourcepub fn create_data_constr(
&self,
name: &str,
) -> Result<DataConstr, AutosarAbstractionError>
pub fn create_data_constr( &self, name: &str, ) -> Result<DataConstr, AutosarAbstractionError>
create a new DataConstr in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let data_constr = package.create_data_constr("DataConstr")?;
assert!(model.get_element_by_path("/some/package/DataConstr").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the DATA-CONSTR element
Sourcepub fn create_data_transformation_set(
&self,
name: &str,
) -> Result<DataTransformationSet, AutosarAbstractionError>
pub fn create_data_transformation_set( &self, name: &str, ) -> Result<DataTransformationSet, AutosarAbstractionError>
create a new DataTransformationSet in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let transformation_set = package.create_data_transformation_set("DataTransformationSet")?;
assert!(model.get_element_by_path("/some/package/DataTransformationSet").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the DATA-TRANSFORMATION-SET element
Sourcepub fn create_data_type_mapping_set(
&self,
name: &str,
) -> Result<DataTypeMappingSet, AutosarAbstractionError>
pub fn create_data_type_mapping_set( &self, name: &str, ) -> Result<DataTypeMappingSet, AutosarAbstractionError>
create a new DataTypeMappingSet in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let mapping_set = package.create_data_type_mapping_set("DataTypeMappingSet")?;
assert!(model.get_element_by_path("/some/package/DataTypeMappingSet").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the DATA-TYPE-MAPPING-SET element
Sourcepub fn create_ecu_abstraction_sw_component_type(
&self,
name: &str,
) -> Result<EcuAbstractionSwComponentType, AutosarAbstractionError>
pub fn create_ecu_abstraction_sw_component_type( &self, name: &str, ) -> Result<EcuAbstractionSwComponentType, AutosarAbstractionError>
create a new EcuAbstractionSwComponentType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let component = package.create_ecu_abstraction_sw_component_type("EcuAbstractionSwComponentType")?;
assert!(model.get_element_by_path("/some/package/EcuAbstractionSwComponentType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the ECU-ABSTRACTION-SW-COMPONENT-TYPE element
Sourcepub fn create_ecuc_definition_collection(
&self,
name: &str,
) -> Result<EcucDefinitionCollection, AutosarAbstractionError>
pub fn create_ecuc_definition_collection( &self, name: &str, ) -> Result<EcucDefinitionCollection, AutosarAbstractionError>
create a new EcucDefinitionCollection in the package
§Example
let package = ArPackage::get_or_create(&model, "/pkg")?;
let definition_collection = package.create_ecuc_definition_collection("DefinitionCollection")?;
assert!(model.get_element_by_path("/pkg/DefinitionCollection").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model
Sourcepub fn create_ecuc_destination_uri_def_set(
&self,
name: &str,
) -> Result<EcucDestinationUriDefSet, AutosarAbstractionError>
pub fn create_ecuc_destination_uri_def_set( &self, name: &str, ) -> Result<EcucDestinationUriDefSet, AutosarAbstractionError>
create a new EcucDestinationUriDefSet in the package
§Example
let package = ArPackage::get_or_create(&model, "/pkg")?;
let uri_def_set = package.create_ecuc_destination_uri_def_set("DestinationUriDefSet")?;
assert!(model.get_element_by_path("/pkg/DestinationUriDefSet").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model
Sourcepub fn create_ecuc_module_configuration_values(
&self,
name: &str,
definition: &EcucModuleDef,
) -> Result<EcucModuleConfigurationValues, AutosarAbstractionError>
pub fn create_ecuc_module_configuration_values( &self, name: &str, definition: &EcucModuleDef, ) -> Result<EcucModuleConfigurationValues, AutosarAbstractionError>
create a new EcucModuleConfigurationValues in the package
§Example
let package = ArPackage::get_or_create(&model, "/pkg")?;
let module_config = package.create_ecuc_module_configuration_values("ModuleConfig", &module_definition)?;
assert!(model.get_element_by_path("/pkg/ModuleConfig").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model
Sourcepub fn create_ecuc_module_def(
&self,
name: &str,
) -> Result<EcucModuleDef, AutosarAbstractionError>
pub fn create_ecuc_module_def( &self, name: &str, ) -> Result<EcucModuleDef, AutosarAbstractionError>
create a new EcucModuleDef in the package
§Example
let package = ArPackage::get_or_create(&model, "/pkg")?;
let bsw_module = package.create_ecuc_module_def("BswModule")?;
assert!(model.get_element_by_path("/pkg/BswModule").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model
Sourcepub fn create_ecuc_value_collection(
&self,
name: &str,
) -> Result<EcucValueCollection, AutosarAbstractionError>
pub fn create_ecuc_value_collection( &self, name: &str, ) -> Result<EcucValueCollection, AutosarAbstractionError>
create a new EcucValueCollection in the package
§Example
let package = ArPackage::get_or_create(&model, "/pkg")?;
let value_collection = package.create_ecuc_value_collection("ValueCollection")?;
assert!(model.get_element_by_path("/pkg/ValueCollection").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model
Sourcepub fn create_implementation_data_type(
&self,
settings: ImplementationDataTypeSettings,
) -> Result<ImplementationDataType, AutosarAbstractionError>
pub fn create_implementation_data_type( &self, settings: ImplementationDataTypeSettings, ) -> Result<ImplementationDataType, AutosarAbstractionError>
create a new ImplementationDataType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let sw_base_type = package.create_sw_base_type("uint8", 8, BaseTypeEncoding::None, None, None, None)?;
let settings = ImplementationDataTypeSettings::Value {
name: "ImplementationDataType_Value".to_string(),
base_type: sw_base_type,
compu_method: None,
data_constraint: None,
};
let data_type = package.create_implementation_data_type(settings)?;
assert!(model.get_element_by_path("/some/package/ImplementationDataType_Value").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the IMPLEMENTATION-DATA-TYPE element
Sourcepub fn create_mode_switch_interface(
&self,
name: &str,
) -> Result<ModeSwitchInterface, AutosarAbstractionError>
pub fn create_mode_switch_interface( &self, name: &str, ) -> Result<ModeSwitchInterface, AutosarAbstractionError>
create a new ModeSwitchInterface in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let interface = package.create_mode_switch_interface("ModeSwitchInterface")?;
assert!(model.get_element_by_path("/some/package/ModeSwitchInterface").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the MODE-SWITCH-INTERFACE element
Sourcepub fn create_nv_data_interface(
&self,
name: &str,
) -> Result<NvDataInterface, AutosarAbstractionError>
pub fn create_nv_data_interface( &self, name: &str, ) -> Result<NvDataInterface, AutosarAbstractionError>
create a new NvDataInterface in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let interface = package.create_nv_data_interface("NvDataInterface")?;
assert!(model.get_element_by_path("/some/package/NvDataInterface").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the NV-DATA-INTERFACE element
Sourcepub fn create_parameter_interface(
&self,
name: &str,
) -> Result<ParameterInterface, AutosarAbstractionError>
pub fn create_parameter_interface( &self, name: &str, ) -> Result<ParameterInterface, AutosarAbstractionError>
create a new ParameterInterface in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let interface = package.create_parameter_interface("ParameterInterface")?;
assert!(model.get_element_by_path("/some/package/ParameterInterface").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the PARAMETER-INTERFACE element
Sourcepub fn create_sender_receiver_interface(
&self,
name: &str,
) -> Result<SenderReceiverInterface, AutosarAbstractionError>
pub fn create_sender_receiver_interface( &self, name: &str, ) -> Result<SenderReceiverInterface, AutosarAbstractionError>
create a new SenderReceiverInterface in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let interface = package.create_sender_receiver_interface("SenderReceiverInterface")?;
assert!(model.get_element_by_path("/some/package/SenderReceiverInterface").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SENDER-RECEIVER-INTERFACE element
Sourcepub fn create_sensor_actuator_sw_component_type(
&self,
name: &str,
) -> Result<SensorActuatorSwComponentType, AutosarAbstractionError>
pub fn create_sensor_actuator_sw_component_type( &self, name: &str, ) -> Result<SensorActuatorSwComponentType, AutosarAbstractionError>
create a new SensorActuatorSwComponentType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let component = package.create_sensor_actuator_sw_component_type("SensorActuatorSwComponentType")?;
assert!(model.get_element_by_path("/some/package/SensorActuatorSwComponentType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SENSOR-ACTUATOR-SW-COMPONENT-TYPE element
Sourcepub fn create_service_sw_component_type(
&self,
name: &str,
) -> Result<ServiceSwComponentType, AutosarAbstractionError>
pub fn create_service_sw_component_type( &self, name: &str, ) -> Result<ServiceSwComponentType, AutosarAbstractionError>
create a new ServiceSwComponentType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let component = package.create_service_sw_component_type("ServiceSwComponentType")?;
assert!(model.get_element_by_path("/some/package/ServiceSwComponentType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SERVICE-SW-COMPONENT-TYPE element
Sourcepub fn create_someip_sd_client_event_group_timing_config(
&self,
name: &str,
time_to_live: u32,
) -> Result<SomeipSdClientEventGroupTimingConfig, AutosarAbstractionError>
pub fn create_someip_sd_client_event_group_timing_config( &self, name: &str, time_to_live: u32, ) -> Result<SomeipSdClientEventGroupTimingConfig, AutosarAbstractionError>
create a new SomeipSdClientEventGroupTimingConfig in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let client_config = package.create_someip_sd_client_event_group_timing_config("SomeipSdClientEventGroupTimingConfig", 10)?;
assert!(model.get_element_by_path("/some/package/SomeipSdClientEventGroupTimingConfig").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SOMEIP-SD-CLIENT-EVENT-GROUP-TIMING-CONFIG element
Sourcepub fn create_someip_sd_client_service_instance_config(
&self,
name: &str,
) -> Result<SomeipSdClientServiceInstanceConfig, AutosarAbstractionError>
pub fn create_someip_sd_client_service_instance_config( &self, name: &str, ) -> Result<SomeipSdClientServiceInstanceConfig, AutosarAbstractionError>
create a new SomeipSdClientServiceInstanceConfig in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let service_instance = package.create_someip_sd_client_service_instance_config("SomeipSdClientServiceInstanceConfig")?;
assert!(model.get_element_by_path("/some/package/SomeipSdClientServiceInstanceConfig").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SOMEIP-SD-CLIENT-SERVICE-INSTANCE-CONFIG element
Sourcepub fn create_someip_sd_server_event_group_timing_config(
&self,
name: &str,
request_response_delay: &RequestResponseDelay,
) -> Result<SomeipSdServerEventGroupTimingConfig, AutosarAbstractionError>
pub fn create_someip_sd_server_event_group_timing_config( &self, name: &str, request_response_delay: &RequestResponseDelay, ) -> Result<SomeipSdServerEventGroupTimingConfig, AutosarAbstractionError>
create a new SomeipSdServerEventGroupTimingConfig in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let request_response_delay = RequestResponseDelay {
min_value: 0.1,
max_value: 0.2,
};
let timing_config = package.create_someip_sd_server_event_group_timing_config("SomeipSdServerEventGroupTimingConfig", &request_response_delay)?;
assert!(model.get_element_by_path("/some/package/SomeipSdServerEventGroupTimingConfig").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SOMEIP-SD-SERVER-EVENT-GROUP-TIMING-CONFIG element
Sourcepub fn create_someip_sd_server_service_instance_config(
&self,
name: &str,
ttl: u32,
) -> Result<SomeipSdServerServiceInstanceConfig, AutosarAbstractionError>
pub fn create_someip_sd_server_service_instance_config( &self, name: &str, ttl: u32, ) -> Result<SomeipSdServerServiceInstanceConfig, AutosarAbstractionError>
create a new SomeipSdServerServiceInstanceConfig in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let service_instance = package.create_someip_sd_server_service_instance_config("SomeipSdServerServiceInstanceConfig", 10)?;
assert!(model.get_element_by_path("/some/package/SomeipSdServerServiceInstanceConfig").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SOMEIP-SD-SERVER-SERVICE-INSTANCE-CONFIG element
Sourcepub fn create_sw_base_type(
&self,
name: &str,
bit_length: u32,
base_type_encoding: BaseTypeEncoding,
byte_order: Option<ByteOrder>,
mem_alignment: Option<u32>,
native_declaration: Option<&str>,
) -> Result<SwBaseType, AutosarAbstractionError>
pub fn create_sw_base_type( &self, name: &str, bit_length: u32, base_type_encoding: BaseTypeEncoding, byte_order: Option<ByteOrder>, mem_alignment: Option<u32>, native_declaration: Option<&str>, ) -> Result<SwBaseType, AutosarAbstractionError>
create a new SwBaseType in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let base_type = package.create_sw_base_type("MyBaseType", 8, BaseTypeEncoding::None, None, None, None)?;
assert!(model.get_element_by_path("/some/package/MyBaseType").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SW-BASE-TYPE element
Sourcepub fn create_system(
&self,
name: &str,
category: SystemCategory,
) -> Result<System, AutosarAbstractionError>
pub fn create_system( &self, name: &str, category: SystemCategory, ) -> Result<System, AutosarAbstractionError>
create a new System in the package
Note that an Autosar model should ony contain one SYSTEM. This is not checked here.
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let system = package.create_system("System", SystemCategory::SystemExtract)?;
assert!(model.get_element_by_path("/some/package/System").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SYSTEM element
Sourcepub fn create_system_signal(
&self,
name: &str,
) -> Result<SystemSignal, AutosarAbstractionError>
pub fn create_system_signal( &self, name: &str, ) -> Result<SystemSignal, AutosarAbstractionError>
create a new SystemSignal in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let signal = package.create_system_signal("MySignal")?;
assert!(model.get_element_by_path("/some/package/MySignal").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SYSTEM-SIGNAL element
Sourcepub fn create_system_signal_group(
&self,
name: &str,
) -> Result<SystemSignalGroup, AutosarAbstractionError>
pub fn create_system_signal_group( &self, name: &str, ) -> Result<SystemSignalGroup, AutosarAbstractionError>
create a new SystemSignalGroup in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let signal_group = package.create_system_signal_group("MySignalGroup")?;
assert!(model.get_element_by_path("/some/package/MySignalGroup").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the SYSTEM-SIGNAL-GROUP element
Sourcepub fn create_trigger_interface(
&self,
name: &str,
) -> Result<TriggerInterface, AutosarAbstractionError>
pub fn create_trigger_interface( &self, name: &str, ) -> Result<TriggerInterface, AutosarAbstractionError>
create a new TriggerInterface in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let interface = package.create_trigger_interface("TriggerInterface")?;
assert!(model.get_element_by_path("/some/package/TriggerInterface").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the TRIGGER-INTERFACE element
Sourcepub fn create_unit(
&self,
name: &str,
display_name: Option<&str>,
) -> Result<Unit, AutosarAbstractionError>
pub fn create_unit( &self, name: &str, display_name: Option<&str>, ) -> Result<Unit, AutosarAbstractionError>
create a new Unit in the package
§Example
let package = ArPackage::get_or_create(&model, "/some/package")?;
let unit = package.create_unit("Unit", Some("UnitDisplayName"))?;
assert!(model.get_element_by_path("/some/package/Unit").is_some());§Errors
AutosarAbstractionError::ModelErrorAn error occurred in the Autosar model while trying to create the UNIT element
Trait Implementations§
Source§impl AbstractionElement for ArPackage
impl AbstractionElement for ArPackage
impl Eq for ArPackage
impl StructuralPartialEq for ArPackage
Auto Trait Implementations§
impl Freeze for ArPackage
impl !RefUnwindSafe for ArPackage
impl Send for ArPackage
impl Sync for ArPackage
impl Unpin for ArPackage
impl !UnwindSafe for ArPackage
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.