В данном подразделе определяются функции ARM-модели, предназначенные для PAS-спецификации.
4.4.1 Функция at_most_one_system_function_assigned
EXPRESS-описание:
*)
FUNCTION at_most_one_system_function_assigned (a_system_view: system_view): LOGICAL;
LOCAL
no_of_system_functions: INTEGER:= 0;
END_LOCAL;
IF SIZEOF(a_system_view.system) > 0 THEN
REPEAT i:= 1 TO SIZEOF(a_system_view.system);
IF a_system_view.system[i].role = system_function THEN
no_of_system_functions:= no_of_system_functions + 1;
END_IF;
END_REPEAT;
END_IF;
RETURN (no_of_system_functions <= 1);
END_FUNCTION;
(*
4.4.2 Функция correct_binding
EXPRESS-описание:
*)
FUNCTION correct_binding (binding: io_port_binding): BOOLEAN;
LOCAL
function_interface: function_instance;
END_LOCAL;
IF (`SYSTEM_ENGINERING_AND_DESIGN.FUNCTION_INSTANCE' IN TYPEOF(binding.actual_port.port_of)) THEN
RETURN (FALSE);
END_IF;