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