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: 2937 $ $Date: 2012-05-01 21:07:27 +0400 (Tue, 01 May 2012) $
43------------------------------------------------------------------------------
44with AMF.Elements;
45with AMF.Internals.Element_Collections;
46with AMF.Internals.Helpers;
47with AMF.Internals.Tables.UML_Attributes;
48with AMF.Visitors.UML_Iterators;
49with AMF.Visitors.UML_Visitors;
50with League.Strings.Internals;
51with Matreshka.Internals.Strings;
52
53package body AMF.Internals.UML_State_Machines is
54
55   -------------------
56   -- Enter_Element --
57   -------------------
58
59   overriding procedure Enter_Element
60    (Self    : not null access constant UML_State_Machine_Proxy;
61     Visitor : in out AMF.Visitors.Abstract_Visitor'Class;
62     Control : in out AMF.Visitors.Traverse_Control) is
63   begin
64      if Visitor in AMF.Visitors.UML_Visitors.UML_Visitor'Class then
65         AMF.Visitors.UML_Visitors.UML_Visitor'Class
66          (Visitor).Enter_State_Machine
67            (AMF.UML.State_Machines.UML_State_Machine_Access (Self),
68           Control);
69      end if;
70   end Enter_Element;
71
72   -------------------
73   -- Leave_Element --
74   -------------------
75
76   overriding procedure Leave_Element
77    (Self    : not null access constant UML_State_Machine_Proxy;
78     Visitor : in out AMF.Visitors.Abstract_Visitor'Class;
79     Control : in out AMF.Visitors.Traverse_Control) is
80   begin
81      if Visitor in AMF.Visitors.UML_Visitors.UML_Visitor'Class then
82         AMF.Visitors.UML_Visitors.UML_Visitor'Class
83          (Visitor).Leave_State_Machine
84            (AMF.UML.State_Machines.UML_State_Machine_Access (Self),
85           Control);
86      end if;
87   end Leave_Element;
88
89   -------------------
90   -- Visit_Element --
91   -------------------
92
93   overriding procedure Visit_Element
94    (Self     : not null access constant UML_State_Machine_Proxy;
95     Iterator : in out AMF.Visitors.Abstract_Iterator'Class;
96     Visitor  : in out AMF.Visitors.Abstract_Visitor'Class;
97     Control  : in out AMF.Visitors.Traverse_Control) is
98   begin
99      if Iterator in AMF.Visitors.UML_Iterators.UML_Iterator'Class then
100         AMF.Visitors.UML_Iterators.UML_Iterator'Class
101          (Iterator).Visit_State_Machine
102            (Visitor,
103             AMF.UML.State_Machines.UML_State_Machine_Access (Self),
104             Control);
105      end if;
106   end Visit_Element;
107
108   --------------------------
109   -- Get_Connection_Point --
110   --------------------------
111
112   overriding function Get_Connection_Point
113    (Self : not null access constant UML_State_Machine_Proxy)
114       return AMF.UML.Pseudostates.Collections.Set_Of_UML_Pseudostate is
115   begin
116      return
117        AMF.UML.Pseudostates.Collections.Wrap
118         (AMF.Internals.Element_Collections.Wrap
119           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Connection_Point
120             (Self.Element)));
121   end Get_Connection_Point;
122
123   --------------------------------
124   -- Get_Extended_State_Machine --
125   --------------------------------
126
127   overriding function Get_Extended_State_Machine
128    (Self : not null access constant UML_State_Machine_Proxy)
129       return AMF.UML.State_Machines.Collections.Set_Of_UML_State_Machine is
130   begin
131      return
132        AMF.UML.State_Machines.Collections.Wrap
133         (AMF.Internals.Element_Collections.Wrap
134           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Extended_State_Machine
135             (Self.Element)));
136   end Get_Extended_State_Machine;
137
138   ----------------
139   -- Get_Region --
140   ----------------
141
142   overriding function Get_Region
143    (Self : not null access constant UML_State_Machine_Proxy)
144       return AMF.UML.Regions.Collections.Set_Of_UML_Region is
145   begin
146      return
147        AMF.UML.Regions.Collections.Wrap
148         (AMF.Internals.Element_Collections.Wrap
149           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Region
150             (Self.Element)));
151   end Get_Region;
152
153   --------------------------
154   -- Get_Submachine_State --
155   --------------------------
156
157   overriding function Get_Submachine_State
158    (Self : not null access constant UML_State_Machine_Proxy)
159       return AMF.UML.States.Collections.Set_Of_UML_State is
160   begin
161      return
162        AMF.UML.States.Collections.Wrap
163         (AMF.Internals.Element_Collections.Wrap
164           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Submachine_State
165             (Self.Element)));
166   end Get_Submachine_State;
167
168   -----------------
169   -- Get_Context --
170   -----------------
171
172   overriding function Get_Context
173    (Self : not null access constant UML_State_Machine_Proxy)
174       return AMF.UML.Behaviored_Classifiers.UML_Behaviored_Classifier_Access is
175   begin
176      return
177        AMF.UML.Behaviored_Classifiers.UML_Behaviored_Classifier_Access
178         (AMF.Internals.Helpers.To_Element
179           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Context
180             (Self.Element)));
181   end Get_Context;
182
183   ----------------------
184   -- Get_Is_Reentrant --
185   ----------------------
186
187   overriding function Get_Is_Reentrant
188    (Self : not null access constant UML_State_Machine_Proxy)
189       return Boolean is
190   begin
191      return
192        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Reentrant
193         (Self.Element);
194   end Get_Is_Reentrant;
195
196   ----------------------
197   -- Set_Is_Reentrant --
198   ----------------------
199
200   overriding procedure Set_Is_Reentrant
201    (Self : not null access UML_State_Machine_Proxy;
202     To   : Boolean) is
203   begin
204      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Reentrant
205       (Self.Element, To);
206   end Set_Is_Reentrant;
207
208   -------------------------
209   -- Get_Owned_Parameter --
210   -------------------------
211
212   overriding function Get_Owned_Parameter
213    (Self : not null access constant UML_State_Machine_Proxy)
214       return AMF.UML.Parameters.Collections.Ordered_Set_Of_UML_Parameter is
215   begin
216      return
217        AMF.UML.Parameters.Collections.Wrap
218         (AMF.Internals.Element_Collections.Wrap
219           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Parameter
220             (Self.Element)));
221   end Get_Owned_Parameter;
222
223   -----------------------------
224   -- Get_Owned_Parameter_Set --
225   -----------------------------
226
227   overriding function Get_Owned_Parameter_Set
228    (Self : not null access constant UML_State_Machine_Proxy)
229       return AMF.UML.Parameter_Sets.Collections.Set_Of_UML_Parameter_Set is
230   begin
231      return
232        AMF.UML.Parameter_Sets.Collections.Wrap
233         (AMF.Internals.Element_Collections.Wrap
234           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Parameter_Set
235             (Self.Element)));
236   end Get_Owned_Parameter_Set;
237
238   -----------------------
239   -- Get_Postcondition --
240   -----------------------
241
242   overriding function Get_Postcondition
243    (Self : not null access constant UML_State_Machine_Proxy)
244       return AMF.UML.Constraints.Collections.Set_Of_UML_Constraint is
245   begin
246      return
247        AMF.UML.Constraints.Collections.Wrap
248         (AMF.Internals.Element_Collections.Wrap
249           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Postcondition
250             (Self.Element)));
251   end Get_Postcondition;
252
253   ----------------------
254   -- Get_Precondition --
255   ----------------------
256
257   overriding function Get_Precondition
258    (Self : not null access constant UML_State_Machine_Proxy)
259       return AMF.UML.Constraints.Collections.Set_Of_UML_Constraint is
260   begin
261      return
262        AMF.UML.Constraints.Collections.Wrap
263         (AMF.Internals.Element_Collections.Wrap
264           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Precondition
265             (Self.Element)));
266   end Get_Precondition;
267
268   ----------------------------
269   -- Get_Redefined_Behavior --
270   ----------------------------
271
272   overriding function Get_Redefined_Behavior
273    (Self : not null access constant UML_State_Machine_Proxy)
274       return AMF.UML.Behaviors.Collections.Set_Of_UML_Behavior is
275   begin
276      return
277        AMF.UML.Behaviors.Collections.Wrap
278         (AMF.Internals.Element_Collections.Wrap
279           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Redefined_Behavior
280             (Self.Element)));
281   end Get_Redefined_Behavior;
282
283   -----------------------
284   -- Get_Specification --
285   -----------------------
286
287   overriding function Get_Specification
288    (Self : not null access constant UML_State_Machine_Proxy)
289       return AMF.UML.Behavioral_Features.UML_Behavioral_Feature_Access is
290   begin
291      return
292        AMF.UML.Behavioral_Features.UML_Behavioral_Feature_Access
293         (AMF.Internals.Helpers.To_Element
294           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Specification
295             (Self.Element)));
296   end Get_Specification;
297
298   -----------------------
299   -- Set_Specification --
300   -----------------------
301
302   overriding procedure Set_Specification
303    (Self : not null access UML_State_Machine_Proxy;
304     To   : AMF.UML.Behavioral_Features.UML_Behavioral_Feature_Access) is
305   begin
306      AMF.Internals.Tables.UML_Attributes.Internal_Set_Specification
307       (Self.Element,
308        AMF.Internals.Helpers.To_Element
309         (AMF.Elements.Element_Access (To)));
310   end Set_Specification;
311
312   -------------------
313   -- Get_Extension --
314   -------------------
315
316   overriding function Get_Extension
317    (Self : not null access constant UML_State_Machine_Proxy)
318       return AMF.UML.Extensions.Collections.Set_Of_UML_Extension is
319   begin
320      return
321        AMF.UML.Extensions.Collections.Wrap
322         (AMF.Internals.Element_Collections.Wrap
323           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Extension
324             (Self.Element)));
325   end Get_Extension;
326
327   ---------------------
328   -- Get_Is_Abstract --
329   ---------------------
330
331   overriding function Get_Is_Abstract
332    (Self : not null access constant UML_State_Machine_Proxy)
333       return Boolean is
334   begin
335      return
336        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Abstract
337         (Self.Element);
338   end Get_Is_Abstract;
339
340   -------------------
341   -- Get_Is_Active --
342   -------------------
343
344   overriding function Get_Is_Active
345    (Self : not null access constant UML_State_Machine_Proxy)
346       return Boolean is
347   begin
348      return
349        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Active
350         (Self.Element);
351   end Get_Is_Active;
352
353   -------------------
354   -- Set_Is_Active --
355   -------------------
356
357   overriding procedure Set_Is_Active
358    (Self : not null access UML_State_Machine_Proxy;
359     To   : Boolean) is
360   begin
361      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Active
362       (Self.Element, To);
363   end Set_Is_Active;
364
365   ---------------------------
366   -- Get_Nested_Classifier --
367   ---------------------------
368
369   overriding function Get_Nested_Classifier
370    (Self : not null access constant UML_State_Machine_Proxy)
371       return AMF.UML.Classifiers.Collections.Ordered_Set_Of_UML_Classifier is
372   begin
373      return
374        AMF.UML.Classifiers.Collections.Wrap
375         (AMF.Internals.Element_Collections.Wrap
376           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Nested_Classifier
377             (Self.Element)));
378   end Get_Nested_Classifier;
379
380   -------------------------
381   -- Get_Owned_Attribute --
382   -------------------------
383
384   overriding function Get_Owned_Attribute
385    (Self : not null access constant UML_State_Machine_Proxy)
386       return AMF.UML.Properties.Collections.Ordered_Set_Of_UML_Property is
387   begin
388      return
389        AMF.UML.Properties.Collections.Wrap
390         (AMF.Internals.Element_Collections.Wrap
391           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Attribute
392             (Self.Element)));
393   end Get_Owned_Attribute;
394
395   -------------------------
396   -- Get_Owned_Operation --
397   -------------------------
398
399   overriding function Get_Owned_Operation
400    (Self : not null access constant UML_State_Machine_Proxy)
401       return AMF.UML.Operations.Collections.Ordered_Set_Of_UML_Operation is
402   begin
403      return
404        AMF.UML.Operations.Collections.Wrap
405         (AMF.Internals.Element_Collections.Wrap
406           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Operation
407             (Self.Element)));
408   end Get_Owned_Operation;
409
410   -------------------------
411   -- Get_Owned_Reception --
412   -------------------------
413
414   overriding function Get_Owned_Reception
415    (Self : not null access constant UML_State_Machine_Proxy)
416       return AMF.UML.Receptions.Collections.Set_Of_UML_Reception is
417   begin
418      return
419        AMF.UML.Receptions.Collections.Wrap
420         (AMF.Internals.Element_Collections.Wrap
421           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Reception
422             (Self.Element)));
423   end Get_Owned_Reception;
424
425   ---------------------
426   -- Get_Super_Class --
427   ---------------------
428
429   overriding function Get_Super_Class
430    (Self : not null access constant UML_State_Machine_Proxy)
431       return AMF.UML.Classes.Collections.Set_Of_UML_Class is
432   begin
433      return
434        AMF.UML.Classes.Collections.Wrap
435         (AMF.Internals.Element_Collections.Wrap
436           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Super_Class
437             (Self.Element)));
438   end Get_Super_Class;
439
440   -----------------------------
441   -- Get_Classifier_Behavior --
442   -----------------------------
443
444   overriding function Get_Classifier_Behavior
445    (Self : not null access constant UML_State_Machine_Proxy)
446       return AMF.UML.Behaviors.UML_Behavior_Access is
447   begin
448      return
449        AMF.UML.Behaviors.UML_Behavior_Access
450         (AMF.Internals.Helpers.To_Element
451           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Classifier_Behavior
452             (Self.Element)));
453   end Get_Classifier_Behavior;
454
455   -----------------------------
456   -- Set_Classifier_Behavior --
457   -----------------------------
458
459   overriding procedure Set_Classifier_Behavior
460    (Self : not null access UML_State_Machine_Proxy;
461     To   : AMF.UML.Behaviors.UML_Behavior_Access) is
462   begin
463      AMF.Internals.Tables.UML_Attributes.Internal_Set_Classifier_Behavior
464       (Self.Element,
465        AMF.Internals.Helpers.To_Element
466         (AMF.Elements.Element_Access (To)));
467   end Set_Classifier_Behavior;
468
469   -------------------------------
470   -- Get_Interface_Realization --
471   -------------------------------
472
473   overriding function Get_Interface_Realization
474    (Self : not null access constant UML_State_Machine_Proxy)
475       return AMF.UML.Interface_Realizations.Collections.Set_Of_UML_Interface_Realization is
476   begin
477      return
478        AMF.UML.Interface_Realizations.Collections.Wrap
479         (AMF.Internals.Element_Collections.Wrap
480           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Interface_Realization
481             (Self.Element)));
482   end Get_Interface_Realization;
483
484   ------------------------
485   -- Get_Owned_Behavior --
486   ------------------------
487
488   overriding function Get_Owned_Behavior
489    (Self : not null access constant UML_State_Machine_Proxy)
490       return AMF.UML.Behaviors.Collections.Set_Of_UML_Behavior is
491   begin
492      return
493        AMF.UML.Behaviors.Collections.Wrap
494         (AMF.Internals.Element_Collections.Wrap
495           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Behavior
496             (Self.Element)));
497   end Get_Owned_Behavior;
498
499   -------------------
500   -- Get_Attribute --
501   -------------------
502
503   overriding function Get_Attribute
504    (Self : not null access constant UML_State_Machine_Proxy)
505       return AMF.UML.Properties.Collections.Set_Of_UML_Property is
506   begin
507      return
508        AMF.UML.Properties.Collections.Wrap
509         (AMF.Internals.Element_Collections.Wrap
510           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Attribute
511             (Self.Element)));
512   end Get_Attribute;
513
514   ---------------------------
515   -- Get_Collaboration_Use --
516   ---------------------------
517
518   overriding function Get_Collaboration_Use
519    (Self : not null access constant UML_State_Machine_Proxy)
520       return AMF.UML.Collaboration_Uses.Collections.Set_Of_UML_Collaboration_Use is
521   begin
522      return
523        AMF.UML.Collaboration_Uses.Collections.Wrap
524         (AMF.Internals.Element_Collections.Wrap
525           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Collaboration_Use
526             (Self.Element)));
527   end Get_Collaboration_Use;
528
529   -----------------
530   -- Get_Feature --
531   -----------------
532
533   overriding function Get_Feature
534    (Self : not null access constant UML_State_Machine_Proxy)
535       return AMF.UML.Features.Collections.Set_Of_UML_Feature is
536   begin
537      return
538        AMF.UML.Features.Collections.Wrap
539         (AMF.Internals.Element_Collections.Wrap
540           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Feature
541             (Self.Element)));
542   end Get_Feature;
543
544   -----------------
545   -- Get_General --
546   -----------------
547
548   overriding function Get_General
549    (Self : not null access constant UML_State_Machine_Proxy)
550       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
551   begin
552      return
553        AMF.UML.Classifiers.Collections.Wrap
554         (AMF.Internals.Element_Collections.Wrap
555           (AMF.Internals.Tables.UML_Attributes.Internal_Get_General
556             (Self.Element)));
557   end Get_General;
558
559   ------------------------
560   -- Get_Generalization --
561   ------------------------
562
563   overriding function Get_Generalization
564    (Self : not null access constant UML_State_Machine_Proxy)
565       return AMF.UML.Generalizations.Collections.Set_Of_UML_Generalization is
566   begin
567      return
568        AMF.UML.Generalizations.Collections.Wrap
569         (AMF.Internals.Element_Collections.Wrap
570           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Generalization
571             (Self.Element)));
572   end Get_Generalization;
573
574   --------------------------
575   -- Get_Inherited_Member --
576   --------------------------
577
578   overriding function Get_Inherited_Member
579    (Self : not null access constant UML_State_Machine_Proxy)
580       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
581   begin
582      return
583        AMF.UML.Named_Elements.Collections.Wrap
584         (AMF.Internals.Element_Collections.Wrap
585           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Inherited_Member
586             (Self.Element)));
587   end Get_Inherited_Member;
588
589   ---------------------------------
590   -- Get_Is_Final_Specialization --
591   ---------------------------------
592
593   overriding function Get_Is_Final_Specialization
594    (Self : not null access constant UML_State_Machine_Proxy)
595       return Boolean is
596   begin
597      return
598        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Final_Specialization
599         (Self.Element);
600   end Get_Is_Final_Specialization;
601
602   ---------------------------------
603   -- Set_Is_Final_Specialization --
604   ---------------------------------
605
606   overriding procedure Set_Is_Final_Specialization
607    (Self : not null access UML_State_Machine_Proxy;
608     To   : Boolean) is
609   begin
610      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Final_Specialization
611       (Self.Element, To);
612   end Set_Is_Final_Specialization;
613
614   ----------------------------------
615   -- Get_Owned_Template_Signature --
616   ----------------------------------
617
618   overriding function Get_Owned_Template_Signature
619    (Self : not null access constant UML_State_Machine_Proxy)
620       return AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access is
621   begin
622      return
623        AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access
624         (AMF.Internals.Helpers.To_Element
625           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Template_Signature
626             (Self.Element)));
627   end Get_Owned_Template_Signature;
628
629   ----------------------------------
630   -- Set_Owned_Template_Signature --
631   ----------------------------------
632
633   overriding procedure Set_Owned_Template_Signature
634    (Self : not null access UML_State_Machine_Proxy;
635     To   : AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access) is
636   begin
637      AMF.Internals.Tables.UML_Attributes.Internal_Set_Owned_Template_Signature
638       (Self.Element,
639        AMF.Internals.Helpers.To_Element
640         (AMF.Elements.Element_Access (To)));
641   end Set_Owned_Template_Signature;
642
643   ------------------------
644   -- Get_Owned_Use_Case --
645   ------------------------
646
647   overriding function Get_Owned_Use_Case
648    (Self : not null access constant UML_State_Machine_Proxy)
649       return AMF.UML.Use_Cases.Collections.Set_Of_UML_Use_Case is
650   begin
651      return
652        AMF.UML.Use_Cases.Collections.Wrap
653         (AMF.Internals.Element_Collections.Wrap
654           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Use_Case
655             (Self.Element)));
656   end Get_Owned_Use_Case;
657
658   --------------------------
659   -- Get_Powertype_Extent --
660   --------------------------
661
662   overriding function Get_Powertype_Extent
663    (Self : not null access constant UML_State_Machine_Proxy)
664       return AMF.UML.Generalization_Sets.Collections.Set_Of_UML_Generalization_Set is
665   begin
666      return
667        AMF.UML.Generalization_Sets.Collections.Wrap
668         (AMF.Internals.Element_Collections.Wrap
669           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Powertype_Extent
670             (Self.Element)));
671   end Get_Powertype_Extent;
672
673   ------------------------------
674   -- Get_Redefined_Classifier --
675   ------------------------------
676
677   overriding function Get_Redefined_Classifier
678    (Self : not null access constant UML_State_Machine_Proxy)
679       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
680   begin
681      return
682        AMF.UML.Classifiers.Collections.Wrap
683         (AMF.Internals.Element_Collections.Wrap
684           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Redefined_Classifier
685             (Self.Element)));
686   end Get_Redefined_Classifier;
687
688   ------------------------
689   -- Get_Representation --
690   ------------------------
691
692   overriding function Get_Representation
693    (Self : not null access constant UML_State_Machine_Proxy)
694       return AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access is
695   begin
696      return
697        AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access
698         (AMF.Internals.Helpers.To_Element
699           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Representation
700             (Self.Element)));
701   end Get_Representation;
702
703   ------------------------
704   -- Set_Representation --
705   ------------------------
706
707   overriding procedure Set_Representation
708    (Self : not null access UML_State_Machine_Proxy;
709     To   : AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access) is
710   begin
711      AMF.Internals.Tables.UML_Attributes.Internal_Set_Representation
712       (Self.Element,
713        AMF.Internals.Helpers.To_Element
714         (AMF.Elements.Element_Access (To)));
715   end Set_Representation;
716
717   ----------------------
718   -- Get_Substitution --
719   ----------------------
720
721   overriding function Get_Substitution
722    (Self : not null access constant UML_State_Machine_Proxy)
723       return AMF.UML.Substitutions.Collections.Set_Of_UML_Substitution is
724   begin
725      return
726        AMF.UML.Substitutions.Collections.Wrap
727         (AMF.Internals.Element_Collections.Wrap
728           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Substitution
729             (Self.Element)));
730   end Get_Substitution;
731
732   ----------------------------
733   -- Get_Template_Parameter --
734   ----------------------------
735
736   overriding function Get_Template_Parameter
737    (Self : not null access constant UML_State_Machine_Proxy)
738       return AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access is
739   begin
740      return
741        AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access
742         (AMF.Internals.Helpers.To_Element
743           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Parameter
744             (Self.Element)));
745   end Get_Template_Parameter;
746
747   ----------------------------
748   -- Set_Template_Parameter --
749   ----------------------------
750
751   overriding procedure Set_Template_Parameter
752    (Self : not null access UML_State_Machine_Proxy;
753     To   : AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access) is
754   begin
755      AMF.Internals.Tables.UML_Attributes.Internal_Set_Template_Parameter
756       (Self.Element,
757        AMF.Internals.Helpers.To_Element
758         (AMF.Elements.Element_Access (To)));
759   end Set_Template_Parameter;
760
761   ------------------
762   -- Get_Use_Case --
763   ------------------
764
765   overriding function Get_Use_Case
766    (Self : not null access constant UML_State_Machine_Proxy)
767       return AMF.UML.Use_Cases.Collections.Set_Of_UML_Use_Case is
768   begin
769      return
770        AMF.UML.Use_Cases.Collections.Wrap
771         (AMF.Internals.Element_Collections.Wrap
772           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Use_Case
773             (Self.Element)));
774   end Get_Use_Case;
775
776   ------------------------
777   -- Get_Element_Import --
778   ------------------------
779
780   overriding function Get_Element_Import
781    (Self : not null access constant UML_State_Machine_Proxy)
782       return AMF.UML.Element_Imports.Collections.Set_Of_UML_Element_Import is
783   begin
784      return
785        AMF.UML.Element_Imports.Collections.Wrap
786         (AMF.Internals.Element_Collections.Wrap
787           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Element_Import
788             (Self.Element)));
789   end Get_Element_Import;
790
791   -------------------------
792   -- Get_Imported_Member --
793   -------------------------
794
795   overriding function Get_Imported_Member
796    (Self : not null access constant UML_State_Machine_Proxy)
797       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
798   begin
799      return
800        AMF.UML.Packageable_Elements.Collections.Wrap
801         (AMF.Internals.Element_Collections.Wrap
802           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Imported_Member
803             (Self.Element)));
804   end Get_Imported_Member;
805
806   ----------------
807   -- Get_Member --
808   ----------------
809
810   overriding function Get_Member
811    (Self : not null access constant UML_State_Machine_Proxy)
812       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
813   begin
814      return
815        AMF.UML.Named_Elements.Collections.Wrap
816         (AMF.Internals.Element_Collections.Wrap
817           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Member
818             (Self.Element)));
819   end Get_Member;
820
821   ----------------------
822   -- Get_Owned_Member --
823   ----------------------
824
825   overriding function Get_Owned_Member
826    (Self : not null access constant UML_State_Machine_Proxy)
827       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
828   begin
829      return
830        AMF.UML.Named_Elements.Collections.Wrap
831         (AMF.Internals.Element_Collections.Wrap
832           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Member
833             (Self.Element)));
834   end Get_Owned_Member;
835
836   --------------------
837   -- Get_Owned_Rule --
838   --------------------
839
840   overriding function Get_Owned_Rule
841    (Self : not null access constant UML_State_Machine_Proxy)
842       return AMF.UML.Constraints.Collections.Set_Of_UML_Constraint is
843   begin
844      return
845        AMF.UML.Constraints.Collections.Wrap
846         (AMF.Internals.Element_Collections.Wrap
847           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Rule
848             (Self.Element)));
849   end Get_Owned_Rule;
850
851   ------------------------
852   -- Get_Package_Import --
853   ------------------------
854
855   overriding function Get_Package_Import
856    (Self : not null access constant UML_State_Machine_Proxy)
857       return AMF.UML.Package_Imports.Collections.Set_Of_UML_Package_Import is
858   begin
859      return
860        AMF.UML.Package_Imports.Collections.Wrap
861         (AMF.Internals.Element_Collections.Wrap
862           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Package_Import
863             (Self.Element)));
864   end Get_Package_Import;
865
866   ---------------------------
867   -- Get_Client_Dependency --
868   ---------------------------
869
870   overriding function Get_Client_Dependency
871    (Self : not null access constant UML_State_Machine_Proxy)
872       return AMF.UML.Dependencies.Collections.Set_Of_UML_Dependency is
873   begin
874      return
875        AMF.UML.Dependencies.Collections.Wrap
876         (AMF.Internals.Element_Collections.Wrap
877           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Client_Dependency
878             (Self.Element)));
879   end Get_Client_Dependency;
880
881   -------------------------
882   -- Get_Name_Expression --
883   -------------------------
884
885   overriding function Get_Name_Expression
886    (Self : not null access constant UML_State_Machine_Proxy)
887       return AMF.UML.String_Expressions.UML_String_Expression_Access is
888   begin
889      return
890        AMF.UML.String_Expressions.UML_String_Expression_Access
891         (AMF.Internals.Helpers.To_Element
892           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Name_Expression
893             (Self.Element)));
894   end Get_Name_Expression;
895
896   -------------------------
897   -- Set_Name_Expression --
898   -------------------------
899
900   overriding procedure Set_Name_Expression
901    (Self : not null access UML_State_Machine_Proxy;
902     To   : AMF.UML.String_Expressions.UML_String_Expression_Access) is
903   begin
904      AMF.Internals.Tables.UML_Attributes.Internal_Set_Name_Expression
905       (Self.Element,
906        AMF.Internals.Helpers.To_Element
907         (AMF.Elements.Element_Access (To)));
908   end Set_Name_Expression;
909
910   -------------------
911   -- Get_Namespace --
912   -------------------
913
914   overriding function Get_Namespace
915    (Self : not null access constant UML_State_Machine_Proxy)
916       return AMF.UML.Namespaces.UML_Namespace_Access is
917   begin
918      return
919        AMF.UML.Namespaces.UML_Namespace_Access
920         (AMF.Internals.Helpers.To_Element
921           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Namespace
922             (Self.Element)));
923   end Get_Namespace;
924
925   ------------------------
926   -- Get_Qualified_Name --
927   ------------------------
928
929   overriding function Get_Qualified_Name
930    (Self : not null access constant UML_State_Machine_Proxy)
931       return AMF.Optional_String is
932   begin
933      declare
934         use type Matreshka.Internals.Strings.Shared_String_Access;
935
936         Aux : constant Matreshka.Internals.Strings.Shared_String_Access
937           := AMF.Internals.Tables.UML_Attributes.Internal_Get_Qualified_Name (Self.Element);
938
939      begin
940         if Aux = null then
941            return (Is_Empty => True);
942
943         else
944            return (False, League.Strings.Internals.Create (Aux));
945         end if;
946      end;
947   end Get_Qualified_Name;
948
949   -----------------
950   -- Get_Package --
951   -----------------
952
953   overriding function Get_Package
954    (Self : not null access constant UML_State_Machine_Proxy)
955       return AMF.UML.Packages.UML_Package_Access is
956   begin
957      return
958        AMF.UML.Packages.UML_Package_Access
959         (AMF.Internals.Helpers.To_Element
960           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Package
961             (Self.Element)));
962   end Get_Package;
963
964   -----------------
965   -- Set_Package --
966   -----------------
967
968   overriding procedure Set_Package
969    (Self : not null access UML_State_Machine_Proxy;
970     To   : AMF.UML.Packages.UML_Package_Access) is
971   begin
972      AMF.Internals.Tables.UML_Attributes.Internal_Set_Package
973       (Self.Element,
974        AMF.Internals.Helpers.To_Element
975         (AMF.Elements.Element_Access (To)));
976   end Set_Package;
977
978   -----------------------------------
979   -- Get_Owning_Template_Parameter --
980   -----------------------------------
981
982   overriding function Get_Owning_Template_Parameter
983    (Self : not null access constant UML_State_Machine_Proxy)
984       return AMF.UML.Template_Parameters.UML_Template_Parameter_Access is
985   begin
986      return
987        AMF.UML.Template_Parameters.UML_Template_Parameter_Access
988         (AMF.Internals.Helpers.To_Element
989           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owning_Template_Parameter
990             (Self.Element)));
991   end Get_Owning_Template_Parameter;
992
993   -----------------------------------
994   -- Set_Owning_Template_Parameter --
995   -----------------------------------
996
997   overriding procedure Set_Owning_Template_Parameter
998    (Self : not null access UML_State_Machine_Proxy;
999     To   : AMF.UML.Template_Parameters.UML_Template_Parameter_Access) is
1000   begin
1001      AMF.Internals.Tables.UML_Attributes.Internal_Set_Owning_Template_Parameter
1002       (Self.Element,
1003        AMF.Internals.Helpers.To_Element
1004         (AMF.Elements.Element_Access (To)));
1005   end Set_Owning_Template_Parameter;
1006
1007   ----------------------------
1008   -- Get_Template_Parameter --
1009   ----------------------------
1010
1011   overriding function Get_Template_Parameter
1012    (Self : not null access constant UML_State_Machine_Proxy)
1013       return AMF.UML.Template_Parameters.UML_Template_Parameter_Access is
1014   begin
1015      return
1016        AMF.UML.Template_Parameters.UML_Template_Parameter_Access
1017         (AMF.Internals.Helpers.To_Element
1018           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Parameter
1019             (Self.Element)));
1020   end Get_Template_Parameter;
1021
1022   ----------------------------
1023   -- Set_Template_Parameter --
1024   ----------------------------
1025
1026   overriding procedure Set_Template_Parameter
1027    (Self : not null access UML_State_Machine_Proxy;
1028     To   : AMF.UML.Template_Parameters.UML_Template_Parameter_Access) is
1029   begin
1030      AMF.Internals.Tables.UML_Attributes.Internal_Set_Template_Parameter
1031       (Self.Element,
1032        AMF.Internals.Helpers.To_Element
1033         (AMF.Elements.Element_Access (To)));
1034   end Set_Template_Parameter;
1035
1036   ----------------------------------
1037   -- Get_Owned_Template_Signature --
1038   ----------------------------------
1039
1040   overriding function Get_Owned_Template_Signature
1041    (Self : not null access constant UML_State_Machine_Proxy)
1042       return AMF.UML.Template_Signatures.UML_Template_Signature_Access is
1043   begin
1044      return
1045        AMF.UML.Template_Signatures.UML_Template_Signature_Access
1046         (AMF.Internals.Helpers.To_Element
1047           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Template_Signature
1048             (Self.Element)));
1049   end Get_Owned_Template_Signature;
1050
1051   ----------------------------------
1052   -- Set_Owned_Template_Signature --
1053   ----------------------------------
1054
1055   overriding procedure Set_Owned_Template_Signature
1056    (Self : not null access UML_State_Machine_Proxy;
1057     To   : AMF.UML.Template_Signatures.UML_Template_Signature_Access) is
1058   begin
1059      AMF.Internals.Tables.UML_Attributes.Internal_Set_Owned_Template_Signature
1060       (Self.Element,
1061        AMF.Internals.Helpers.To_Element
1062         (AMF.Elements.Element_Access (To)));
1063   end Set_Owned_Template_Signature;
1064
1065   --------------------------
1066   -- Get_Template_Binding --
1067   --------------------------
1068
1069   overriding function Get_Template_Binding
1070    (Self : not null access constant UML_State_Machine_Proxy)
1071       return AMF.UML.Template_Bindings.Collections.Set_Of_UML_Template_Binding is
1072   begin
1073      return
1074        AMF.UML.Template_Bindings.Collections.Wrap
1075         (AMF.Internals.Element_Collections.Wrap
1076           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Binding
1077             (Self.Element)));
1078   end Get_Template_Binding;
1079
1080   -----------------
1081   -- Get_Is_Leaf --
1082   -----------------
1083
1084   overriding function Get_Is_Leaf
1085    (Self : not null access constant UML_State_Machine_Proxy)
1086       return Boolean is
1087   begin
1088      return
1089        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Leaf
1090         (Self.Element);
1091   end Get_Is_Leaf;
1092
1093   -----------------
1094   -- Set_Is_Leaf --
1095   -----------------
1096
1097   overriding procedure Set_Is_Leaf
1098    (Self : not null access UML_State_Machine_Proxy;
1099     To   : Boolean) is
1100   begin
1101      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Leaf
1102       (Self.Element, To);
1103   end Set_Is_Leaf;
1104
1105   ---------------------------
1106   -- Get_Redefined_Element --
1107   ---------------------------
1108
1109   overriding function Get_Redefined_Element
1110    (Self : not null access constant UML_State_Machine_Proxy)
1111       return AMF.UML.Redefinable_Elements.Collections.Set_Of_UML_Redefinable_Element is
1112   begin
1113      return
1114        AMF.UML.Redefinable_Elements.Collections.Wrap
1115         (AMF.Internals.Element_Collections.Wrap
1116           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Redefined_Element
1117             (Self.Element)));
1118   end Get_Redefined_Element;
1119
1120   ------------------------------
1121   -- Get_Redefinition_Context --
1122   ------------------------------
1123
1124   overriding function Get_Redefinition_Context
1125    (Self : not null access constant UML_State_Machine_Proxy)
1126       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
1127   begin
1128      return
1129        AMF.UML.Classifiers.Collections.Wrap
1130         (AMF.Internals.Element_Collections.Wrap
1131           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Redefinition_Context
1132             (Self.Element)));
1133   end Get_Redefinition_Context;
1134
1135   --------------------
1136   -- Get_Owned_Port --
1137   --------------------
1138
1139   overriding function Get_Owned_Port
1140    (Self : not null access constant UML_State_Machine_Proxy)
1141       return AMF.UML.Ports.Collections.Set_Of_UML_Port is
1142   begin
1143      return
1144        AMF.UML.Ports.Collections.Wrap
1145         (AMF.Internals.Element_Collections.Wrap
1146           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Port
1147             (Self.Element)));
1148   end Get_Owned_Port;
1149
1150   -------------------------
1151   -- Get_Owned_Connector --
1152   -------------------------
1153
1154   overriding function Get_Owned_Connector
1155    (Self : not null access constant UML_State_Machine_Proxy)
1156       return AMF.UML.Connectors.Collections.Set_Of_UML_Connector is
1157   begin
1158      return
1159        AMF.UML.Connectors.Collections.Wrap
1160         (AMF.Internals.Element_Collections.Wrap
1161           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Connector
1162             (Self.Element)));
1163   end Get_Owned_Connector;
1164
1165   --------------
1166   -- Get_Part --
1167   --------------
1168
1169   overriding function Get_Part
1170    (Self : not null access constant UML_State_Machine_Proxy)
1171       return AMF.UML.Properties.Collections.Set_Of_UML_Property is
1172   begin
1173      return
1174        AMF.UML.Properties.Collections.Wrap
1175         (AMF.Internals.Element_Collections.Wrap
1176           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Part
1177             (Self.Element)));
1178   end Get_Part;
1179
1180   --------------
1181   -- Get_Role --
1182   --------------
1183
1184   overriding function Get_Role
1185    (Self : not null access constant UML_State_Machine_Proxy)
1186       return AMF.UML.Connectable_Elements.Collections.Set_Of_UML_Connectable_Element is
1187   begin
1188      return
1189        AMF.UML.Connectable_Elements.Collections.Wrap
1190         (AMF.Internals.Element_Collections.Wrap
1191           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Role
1192             (Self.Element)));
1193   end Get_Role;
1194
1195   ---------
1196   -- LCA --
1197   ---------
1198
1199   overriding function LCA
1200    (Self : not null access constant UML_State_Machine_Proxy;
1201     S1 : AMF.UML.States.UML_State_Access;
1202     S2 : AMF.UML.States.UML_State_Access)
1203       return AMF.UML.Namespaces.UML_Namespace_Access is
1204   begin
1205      --  Generated stub: replace with real body!
1206      pragma Compile_Time_Warning (Standard.True, "LCA unimplemented");
1207      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.LCA";
1208      return LCA (Self, S1, S2);
1209   end LCA;
1210
1211   --------------
1212   -- Ancestor --
1213   --------------
1214
1215   overriding function Ancestor
1216    (Self : not null access constant UML_State_Machine_Proxy;
1217     S1 : AMF.UML.States.UML_State_Access;
1218     S2 : AMF.UML.States.UML_State_Access)
1219       return Boolean is
1220   begin
1221      --  Generated stub: replace with real body!
1222      pragma Compile_Time_Warning (Standard.True, "Ancestor unimplemented");
1223      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Ancestor";
1224      return Ancestor (Self, S1, S2);
1225   end Ancestor;
1226
1227   ------------------------
1228   -- Is_Consistent_With --
1229   ------------------------
1230
1231   overriding function Is_Consistent_With
1232    (Self : not null access constant UML_State_Machine_Proxy;
1233     Redefinee : AMF.UML.Redefinable_Elements.UML_Redefinable_Element_Access)
1234       return Boolean is
1235   begin
1236      --  Generated stub: replace with real body!
1237      pragma Compile_Time_Warning (Standard.True, "Is_Consistent_With unimplemented");
1238      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Is_Consistent_With";
1239      return Is_Consistent_With (Self, Redefinee);
1240   end Is_Consistent_With;
1241
1242   -----------------------------------
1243   -- Is_Redefinition_Context_Valid --
1244   -----------------------------------
1245
1246   overriding function Is_Redefinition_Context_Valid
1247    (Self : not null access constant UML_State_Machine_Proxy;
1248     Redefined : AMF.UML.State_Machines.UML_State_Machine_Access)
1249       return Boolean is
1250   begin
1251      --  Generated stub: replace with real body!
1252      pragma Compile_Time_Warning (Standard.True, "Is_Redefinition_Context_Valid unimplemented");
1253      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Is_Redefinition_Context_Valid";
1254      return Is_Redefinition_Context_Valid (Self, Redefined);
1255   end Is_Redefinition_Context_Valid;
1256
1257   -------------
1258   -- Context --
1259   -------------
1260
1261   overriding function Context
1262    (Self : not null access constant UML_State_Machine_Proxy)
1263       return AMF.UML.Behaviored_Classifiers.UML_Behaviored_Classifier_Access is
1264   begin
1265      --  Generated stub: replace with real body!
1266      pragma Compile_Time_Warning (Standard.True, "Context unimplemented");
1267      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Context";
1268      return Context (Self);
1269   end Context;
1270
1271   ---------------
1272   -- Extension --
1273   ---------------
1274
1275   overriding function Extension
1276    (Self : not null access constant UML_State_Machine_Proxy)
1277       return AMF.UML.Extensions.Collections.Set_Of_UML_Extension is
1278   begin
1279      --  Generated stub: replace with real body!
1280      pragma Compile_Time_Warning (Standard.True, "Extension unimplemented");
1281      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Extension";
1282      return Extension (Self);
1283   end Extension;
1284
1285   -------------
1286   -- Inherit --
1287   -------------
1288
1289   overriding function Inherit
1290    (Self : not null access constant UML_State_Machine_Proxy;
1291     Inhs : AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element)
1292       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1293   begin
1294      --  Generated stub: replace with real body!
1295      pragma Compile_Time_Warning (Standard.True, "Inherit unimplemented");
1296      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Inherit";
1297      return Inherit (Self, Inhs);
1298   end Inherit;
1299
1300   -----------------
1301   -- Super_Class --
1302   -----------------
1303
1304   overriding function Super_Class
1305    (Self : not null access constant UML_State_Machine_Proxy)
1306       return AMF.UML.Classes.Collections.Set_Of_UML_Class is
1307   begin
1308      --  Generated stub: replace with real body!
1309      pragma Compile_Time_Warning (Standard.True, "Super_Class unimplemented");
1310      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Super_Class";
1311      return Super_Class (Self);
1312   end Super_Class;
1313
1314   ------------------
1315   -- All_Features --
1316   ------------------
1317
1318   overriding function All_Features
1319    (Self : not null access constant UML_State_Machine_Proxy)
1320       return AMF.UML.Features.Collections.Set_Of_UML_Feature is
1321   begin
1322      --  Generated stub: replace with real body!
1323      pragma Compile_Time_Warning (Standard.True, "All_Features unimplemented");
1324      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.All_Features";
1325      return All_Features (Self);
1326   end All_Features;
1327
1328   -----------------
1329   -- Conforms_To --
1330   -----------------
1331
1332   overriding function Conforms_To
1333    (Self : not null access constant UML_State_Machine_Proxy;
1334     Other : AMF.UML.Classifiers.UML_Classifier_Access)
1335       return Boolean is
1336   begin
1337      --  Generated stub: replace with real body!
1338      pragma Compile_Time_Warning (Standard.True, "Conforms_To unimplemented");
1339      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Conforms_To";
1340      return Conforms_To (Self, Other);
1341   end Conforms_To;
1342
1343   -------------
1344   -- General --
1345   -------------
1346
1347   overriding function General
1348    (Self : not null access constant UML_State_Machine_Proxy)
1349       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
1350   begin
1351      --  Generated stub: replace with real body!
1352      pragma Compile_Time_Warning (Standard.True, "General unimplemented");
1353      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.General";
1354      return General (Self);
1355   end General;
1356
1357   -----------------------
1358   -- Has_Visibility_Of --
1359   -----------------------
1360
1361   overriding function Has_Visibility_Of
1362    (Self : not null access constant UML_State_Machine_Proxy;
1363     N : AMF.UML.Named_Elements.UML_Named_Element_Access)
1364       return Boolean is
1365   begin
1366      --  Generated stub: replace with real body!
1367      pragma Compile_Time_Warning (Standard.True, "Has_Visibility_Of unimplemented");
1368      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Has_Visibility_Of";
1369      return Has_Visibility_Of (Self, N);
1370   end Has_Visibility_Of;
1371
1372   -------------------------
1373   -- Inheritable_Members --
1374   -------------------------
1375
1376   overriding function Inheritable_Members
1377    (Self : not null access constant UML_State_Machine_Proxy;
1378     C : AMF.UML.Classifiers.UML_Classifier_Access)
1379       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1380   begin
1381      --  Generated stub: replace with real body!
1382      pragma Compile_Time_Warning (Standard.True, "Inheritable_Members unimplemented");
1383      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Inheritable_Members";
1384      return Inheritable_Members (Self, C);
1385   end Inheritable_Members;
1386
1387   ----------------------
1388   -- Inherited_Member --
1389   ----------------------
1390
1391   overriding function Inherited_Member
1392    (Self : not null access constant UML_State_Machine_Proxy)
1393       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1394   begin
1395      --  Generated stub: replace with real body!
1396      pragma Compile_Time_Warning (Standard.True, "Inherited_Member unimplemented");
1397      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Inherited_Member";
1398      return Inherited_Member (Self);
1399   end Inherited_Member;
1400
1401   -----------------
1402   -- Is_Template --
1403   -----------------
1404
1405   overriding function Is_Template
1406    (Self : not null access constant UML_State_Machine_Proxy)
1407       return Boolean is
1408   begin
1409      --  Generated stub: replace with real body!
1410      pragma Compile_Time_Warning (Standard.True, "Is_Template unimplemented");
1411      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Is_Template";
1412      return Is_Template (Self);
1413   end Is_Template;
1414
1415   -------------------------
1416   -- May_Specialize_Type --
1417   -------------------------
1418
1419   overriding function May_Specialize_Type
1420    (Self : not null access constant UML_State_Machine_Proxy;
1421     C : AMF.UML.Classifiers.UML_Classifier_Access)
1422       return Boolean is
1423   begin
1424      --  Generated stub: replace with real body!
1425      pragma Compile_Time_Warning (Standard.True, "May_Specialize_Type unimplemented");
1426      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.May_Specialize_Type";
1427      return May_Specialize_Type (Self, C);
1428   end May_Specialize_Type;
1429
1430   ------------------------
1431   -- Exclude_Collisions --
1432   ------------------------
1433
1434   overriding function Exclude_Collisions
1435    (Self : not null access constant UML_State_Machine_Proxy;
1436     Imps : AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element)
1437       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
1438   begin
1439      --  Generated stub: replace with real body!
1440      pragma Compile_Time_Warning (Standard.True, "Exclude_Collisions unimplemented");
1441      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Exclude_Collisions";
1442      return Exclude_Collisions (Self, Imps);
1443   end Exclude_Collisions;
1444
1445   -------------------------
1446   -- Get_Names_Of_Member --
1447   -------------------------
1448
1449   overriding function Get_Names_Of_Member
1450    (Self : not null access constant UML_State_Machine_Proxy;
1451     Element : AMF.UML.Named_Elements.UML_Named_Element_Access)
1452       return AMF.String_Collections.Set_Of_String is
1453   begin
1454      --  Generated stub: replace with real body!
1455      pragma Compile_Time_Warning (Standard.True, "Get_Names_Of_Member unimplemented");
1456      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Get_Names_Of_Member";
1457      return Get_Names_Of_Member (Self, Element);
1458   end Get_Names_Of_Member;
1459
1460   --------------------
1461   -- Import_Members --
1462   --------------------
1463
1464   overriding function Import_Members
1465    (Self : not null access constant UML_State_Machine_Proxy;
1466     Imps : AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element)
1467       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
1468   begin
1469      --  Generated stub: replace with real body!
1470      pragma Compile_Time_Warning (Standard.True, "Import_Members unimplemented");
1471      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Import_Members";
1472      return Import_Members (Self, Imps);
1473   end Import_Members;
1474
1475   ---------------------
1476   -- Imported_Member --
1477   ---------------------
1478
1479   overriding function Imported_Member
1480    (Self : not null access constant UML_State_Machine_Proxy)
1481       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
1482   begin
1483      --  Generated stub: replace with real body!
1484      pragma Compile_Time_Warning (Standard.True, "Imported_Member unimplemented");
1485      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Imported_Member";
1486      return Imported_Member (Self);
1487   end Imported_Member;
1488
1489   ---------------------------------
1490   -- Members_Are_Distinguishable --
1491   ---------------------------------
1492
1493   overriding function Members_Are_Distinguishable
1494    (Self : not null access constant UML_State_Machine_Proxy)
1495       return Boolean is
1496   begin
1497      --  Generated stub: replace with real body!
1498      pragma Compile_Time_Warning (Standard.True, "Members_Are_Distinguishable unimplemented");
1499      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Members_Are_Distinguishable";
1500      return Members_Are_Distinguishable (Self);
1501   end Members_Are_Distinguishable;
1502
1503   ------------------
1504   -- Owned_Member --
1505   ------------------
1506
1507   overriding function Owned_Member
1508    (Self : not null access constant UML_State_Machine_Proxy)
1509       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1510   begin
1511      --  Generated stub: replace with real body!
1512      pragma Compile_Time_Warning (Standard.True, "Owned_Member unimplemented");
1513      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Owned_Member";
1514      return Owned_Member (Self);
1515   end Owned_Member;
1516
1517   -------------------------
1518   -- All_Owning_Packages --
1519   -------------------------
1520
1521   overriding function All_Owning_Packages
1522    (Self : not null access constant UML_State_Machine_Proxy)
1523       return AMF.UML.Packages.Collections.Set_Of_UML_Package is
1524   begin
1525      --  Generated stub: replace with real body!
1526      pragma Compile_Time_Warning (Standard.True, "All_Owning_Packages unimplemented");
1527      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.All_Owning_Packages";
1528      return All_Owning_Packages (Self);
1529   end All_Owning_Packages;
1530
1531   -----------------------------
1532   -- Is_Distinguishable_From --
1533   -----------------------------
1534
1535   overriding function Is_Distinguishable_From
1536    (Self : not null access constant UML_State_Machine_Proxy;
1537     N : AMF.UML.Named_Elements.UML_Named_Element_Access;
1538     Ns : AMF.UML.Namespaces.UML_Namespace_Access)
1539       return Boolean is
1540   begin
1541      --  Generated stub: replace with real body!
1542      pragma Compile_Time_Warning (Standard.True, "Is_Distinguishable_From unimplemented");
1543      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Is_Distinguishable_From";
1544      return Is_Distinguishable_From (Self, N, Ns);
1545   end Is_Distinguishable_From;
1546
1547   ---------------
1548   -- Namespace --
1549   ---------------
1550
1551   overriding function Namespace
1552    (Self : not null access constant UML_State_Machine_Proxy)
1553       return AMF.UML.Namespaces.UML_Namespace_Access is
1554   begin
1555      --  Generated stub: replace with real body!
1556      pragma Compile_Time_Warning (Standard.True, "Namespace unimplemented");
1557      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Namespace";
1558      return Namespace (Self);
1559   end Namespace;
1560
1561   -----------------
1562   -- Conforms_To --
1563   -----------------
1564
1565   overriding function Conforms_To
1566    (Self : not null access constant UML_State_Machine_Proxy;
1567     Other : AMF.UML.Types.UML_Type_Access)
1568       return Boolean is
1569   begin
1570      --  Generated stub: replace with real body!
1571      pragma Compile_Time_Warning (Standard.True, "Conforms_To unimplemented");
1572      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Conforms_To";
1573      return Conforms_To (Self, Other);
1574   end Conforms_To;
1575
1576   ------------------------
1577   -- Is_Compatible_With --
1578   ------------------------
1579
1580   overriding function Is_Compatible_With
1581    (Self : not null access constant UML_State_Machine_Proxy;
1582     P : AMF.UML.Parameterable_Elements.UML_Parameterable_Element_Access)
1583       return Boolean is
1584   begin
1585      --  Generated stub: replace with real body!
1586      pragma Compile_Time_Warning (Standard.True, "Is_Compatible_With unimplemented");
1587      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Is_Compatible_With";
1588      return Is_Compatible_With (Self, P);
1589   end Is_Compatible_With;
1590
1591   ---------------------------
1592   -- Is_Template_Parameter --
1593   ---------------------------
1594
1595   overriding function Is_Template_Parameter
1596    (Self : not null access constant UML_State_Machine_Proxy)
1597       return Boolean is
1598   begin
1599      --  Generated stub: replace with real body!
1600      pragma Compile_Time_Warning (Standard.True, "Is_Template_Parameter unimplemented");
1601      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Is_Template_Parameter";
1602      return Is_Template_Parameter (Self);
1603   end Is_Template_Parameter;
1604
1605   ----------------------------
1606   -- Parameterable_Elements --
1607   ----------------------------
1608
1609   overriding function Parameterable_Elements
1610    (Self : not null access constant UML_State_Machine_Proxy)
1611       return AMF.UML.Parameterable_Elements.Collections.Set_Of_UML_Parameterable_Element is
1612   begin
1613      --  Generated stub: replace with real body!
1614      pragma Compile_Time_Warning (Standard.True, "Parameterable_Elements unimplemented");
1615      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Parameterable_Elements";
1616      return Parameterable_Elements (Self);
1617   end Parameterable_Elements;
1618
1619   -----------------------------------
1620   -- Is_Redefinition_Context_Valid --
1621   -----------------------------------
1622
1623   overriding function Is_Redefinition_Context_Valid
1624    (Self : not null access constant UML_State_Machine_Proxy;
1625     Redefined : AMF.UML.Redefinable_Elements.UML_Redefinable_Element_Access)
1626       return Boolean is
1627   begin
1628      --  Generated stub: replace with real body!
1629      pragma Compile_Time_Warning (Standard.True, "Is_Redefinition_Context_Valid unimplemented");
1630      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Is_Redefinition_Context_Valid";
1631      return Is_Redefinition_Context_Valid (Self, Redefined);
1632   end Is_Redefinition_Context_Valid;
1633
1634   ----------------
1635   -- Owned_Port --
1636   ----------------
1637
1638   overriding function Owned_Port
1639    (Self : not null access constant UML_State_Machine_Proxy)
1640       return AMF.UML.Ports.Collections.Set_Of_UML_Port is
1641   begin
1642      --  Generated stub: replace with real body!
1643      pragma Compile_Time_Warning (Standard.True, "Owned_Port unimplemented");
1644      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Owned_Port";
1645      return Owned_Port (Self);
1646   end Owned_Port;
1647
1648   ----------
1649   -- Part --
1650   ----------
1651
1652   overriding function Part
1653    (Self : not null access constant UML_State_Machine_Proxy)
1654       return AMF.UML.Properties.Collections.Set_Of_UML_Property is
1655   begin
1656      --  Generated stub: replace with real body!
1657      pragma Compile_Time_Warning (Standard.True, "Part unimplemented");
1658      raise Program_Error with "Unimplemented procedure UML_State_Machine_Proxy.Part";
1659      return Part (Self);
1660   end Part;
1661
1662end AMF.Internals.UML_State_Machines;
1663