Генерация программного кода - часть 8
begin
--##begin Dissociate%38099E7D0190.statements preserve=no
pragma Assert (This /= null):
for I in This.The_Course.The_CourseOffering'Range loop
if This.The_Course.The_CourseOffering (I) = This then
This.The_Course.The_CourseOffering (I) :=null;
This.The_Course ;=null;
exit:
end if;
end loop;
--##end Dissociat%38099E7D0190.statements
end Dissociate;
procedure Dissociate (This : in Array_Of_Handle) is
--##begin Dissociate%(M)38099E7D0190.declarations preserve=yes
--##end Dissociate%(M)38099E7D0190.declarations
begin
--##begin Dissociate%(M)38099E7D0190.statements preserve=no
for I in This'Range loop
if This (I) /= null then
Dissociate (This (I));
end if;
end loop;
--##end Dissociate%(M)38099E7D0190.statements
end Dissociate;
--##begin module.additionalDeclarations preserve=yes
--##end module.additionalDec!arations
begin
--##begin module.statements preserve=no
null;
--##end module.statements
end CourseOffering;
Отметим, что в теле есть стандартные методы, которые не задавались в модели, — например, методы constructor, destructor и get/set. Их автоматическая генерация была задана настройкой среды — свойствами генерации. Система обеспечивает настройку параметров генерации для уровней класса, роли, свойства (атрибута) и проекта в целом. Более подробную информацию о свойствах генерации кода можно получить из help-файла.