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