1------------------------------------------------------------------------------ 2-- -- 3-- Matreshka Project -- 4-- -- 5-- Ada Modeling Framework -- 6-- -- 7-- Runtime Library Component -- 8-- -- 9------------------------------------------------------------------------------ 10-- -- 11-- Copyright © 2011-2012, Vadim Godunko <vgodunko@gmail.com> -- 12-- All rights reserved. -- 13-- -- 14-- Redistribution and use in source and binary forms, with or without -- 15-- modification, are permitted provided that the following conditions -- 16-- are met: -- 17-- -- 18-- * Redistributions of source code must retain the above copyright -- 19-- notice, this list of conditions and the following disclaimer. -- 20-- -- 21-- * Redistributions in binary form must reproduce the above copyright -- 22-- notice, this list of conditions and the following disclaimer in the -- 23-- documentation and/or other materials provided with the distribution. -- 24-- -- 25-- * Neither the name of the Vadim Godunko, IE nor the names of its -- 26-- contributors may be used to endorse or promote products derived from -- 27-- this software without specific prior written permission. -- 28-- -- 29-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -- 30-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -- 31-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -- 32-- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -- 33-- HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -- 34-- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -- 35-- TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -- 36-- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -- 37-- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -- 38-- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -- 39-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- 40-- -- 41------------------------------------------------------------------------------ 42-- $Revision: 2714 $ $Date: 2012-03-24 10:29:08 +0400 (Sat, 24 Mar 2012) $ 43------------------------------------------------------------------------------ 44-- This file is generated, don't edit it. 45------------------------------------------------------------------------------ 46-- A behavioral feature is a feature of a classifier that specifies an aspect 47-- of the behavior of its instances. 48-- 49-- A behavioral feature owns zero or more parameter sets. 50-- 51-- A behavioral feature is implemented (realized) by a behavior. A behavioral 52-- feature specifies that a classifier will respond to a designated request 53-- by invoking its implementing method. 54------------------------------------------------------------------------------ 55limited with AMF.UML.Behaviors.Collections; 56with AMF.UML.Features; 57limited with AMF.UML.Named_Elements; 58with AMF.UML.Namespaces; 59limited with AMF.UML.Parameter_Sets.Collections; 60limited with AMF.UML.Parameters.Collections; 61limited with AMF.UML.Types.Collections; 62 63package AMF.UML.Behavioral_Features is 64 65 pragma Preelaborate; 66 67 type UML_Behavioral_Feature is limited interface 68 and AMF.UML.Features.UML_Feature 69 and AMF.UML.Namespaces.UML_Namespace; 70 71 type UML_Behavioral_Feature_Access is 72 access all UML_Behavioral_Feature'Class; 73 for UML_Behavioral_Feature_Access'Storage_Size use 0; 74 75 not overriding function Get_Concurrency 76 (Self : not null access constant UML_Behavioral_Feature) 77 return AMF.UML.UML_Call_Concurrency_Kind is abstract; 78 -- Getter of BehavioralFeature::concurrency. 79 -- 80 -- Specifies the semantics of concurrent calls to the same passive 81 -- instance (i.e., an instance originating from a class with isActive 82 -- being false). Active instances control access to their own behavioral 83 -- features. 84 85 not overriding procedure Set_Concurrency 86 (Self : not null access UML_Behavioral_Feature; 87 To : AMF.UML.UML_Call_Concurrency_Kind) is abstract; 88 -- Setter of BehavioralFeature::concurrency. 89 -- 90 -- Specifies the semantics of concurrent calls to the same passive 91 -- instance (i.e., an instance originating from a class with isActive 92 -- being false). Active instances control access to their own behavioral 93 -- features. 94 95 not overriding function Get_Is_Abstract 96 (Self : not null access constant UML_Behavioral_Feature) 97 return Boolean is abstract; 98 -- Getter of BehavioralFeature::isAbstract. 99 -- 100 -- If true, then the behavioral feature does not have an implementation, 101 -- and one must be supplied by a more specific element. If false, the 102 -- behavioral feature must have an implementation in the classifier or one 103 -- must be inherited from a more general element. 104 105 not overriding procedure Set_Is_Abstract 106 (Self : not null access UML_Behavioral_Feature; 107 To : Boolean) is abstract; 108 -- Setter of BehavioralFeature::isAbstract. 109 -- 110 -- If true, then the behavioral feature does not have an implementation, 111 -- and one must be supplied by a more specific element. If false, the 112 -- behavioral feature must have an implementation in the classifier or one 113 -- must be inherited from a more general element. 114 115 not overriding function Get_Method 116 (Self : not null access constant UML_Behavioral_Feature) 117 return AMF.UML.Behaviors.Collections.Set_Of_UML_Behavior is abstract; 118 -- Getter of BehavioralFeature::method. 119 -- 120 -- A behavioral description that implements the behavioral feature. There 121 -- may be at most one behavior for a particular pairing of a classifier 122 -- (as owner of the behavior) and a behavioral feature (as specification 123 -- of the behavior). 124 125 not overriding function Get_Owned_Parameter 126 (Self : not null access constant UML_Behavioral_Feature) 127 return AMF.UML.Parameters.Collections.Ordered_Set_Of_UML_Parameter is abstract; 128 -- Getter of BehavioralFeature::ownedParameter. 129 -- 130 -- Specifies the ordered set of formal parameters of this 131 -- BehavioralFeature. 132 133 not overriding function Get_Owned_Parameter_Set 134 (Self : not null access constant UML_Behavioral_Feature) 135 return AMF.UML.Parameter_Sets.Collections.Set_Of_UML_Parameter_Set is abstract; 136 -- Getter of BehavioralFeature::ownedParameterSet. 137 -- 138 -- The ParameterSets owned by this BehavioralFeature. 139 140 not overriding function Get_Raised_Exception 141 (Self : not null access constant UML_Behavioral_Feature) 142 return AMF.UML.Types.Collections.Set_Of_UML_Type is abstract; 143 -- Getter of BehavioralFeature::raisedException. 144 -- 145 -- References the Types representing exceptions that may be raised during 146 -- an invocation of this feature. 147 148 overriding function Is_Distinguishable_From 149 (Self : not null access constant UML_Behavioral_Feature; 150 N : AMF.UML.Named_Elements.UML_Named_Element_Access; 151 Ns : AMF.UML.Namespaces.UML_Namespace_Access) 152 return Boolean is abstract; 153 -- Operation BehavioralFeature::isDistinguishableFrom. 154 -- 155 -- The query isDistinguishableFrom() determines whether two 156 -- BehavioralFeatures may coexist in the same Namespace. It specifies that 157 -- they have to have different signatures. 158 159end AMF.UML.Behavioral_Features; 160