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_Extensions is
54
55   -------------------
56   -- Enter_Element --
57   -------------------
58
59   overriding procedure Enter_Element
60    (Self    : not null access constant UML_Extension_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_Extension
67            (AMF.UML.Extensions.UML_Extension_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_Extension_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_Extension
84            (AMF.UML.Extensions.UML_Extension_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_Extension_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_Extension
102            (Visitor,
103             AMF.UML.Extensions.UML_Extension_Access (Self),
104             Control);
105      end if;
106   end Visit_Element;
107
108   ---------------------
109   -- Get_Is_Required --
110   ---------------------
111
112   overriding function Get_Is_Required
113    (Self : not null access constant UML_Extension_Proxy)
114       return Boolean is
115   begin
116      return
117        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Required
118         (Self.Element);
119   end Get_Is_Required;
120
121   -------------------
122   -- Get_Metaclass --
123   -------------------
124
125   overriding function Get_Metaclass
126    (Self : not null access constant UML_Extension_Proxy)
127       return AMF.UML.Classes.UML_Class_Access is
128   begin
129      return
130        AMF.UML.Classes.UML_Class_Access
131         (AMF.Internals.Helpers.To_Element
132           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Metaclass
133             (Self.Element)));
134   end Get_Metaclass;
135
136   -------------------
137   -- Get_Owned_End --
138   -------------------
139
140   overriding function Get_Owned_End
141    (Self : not null access constant UML_Extension_Proxy)
142       return AMF.UML.Extension_Ends.UML_Extension_End_Access
143   is
144      Aux : constant AMF.UML.Properties.Collections.Ordered_Set_Of_UML_Property
145        := Self.Get_Owned_End;
146
147   begin
148      if Aux.Is_Empty then
149         return null;
150
151      else
152         return
153           AMF.UML.Extension_Ends.UML_Extension_End_Access (Aux.Element (1));
154      end if;
155   end Get_Owned_End;
156
157   -------------------
158   -- Set_Owned_End --
159   -------------------
160
161   overriding procedure Set_Owned_End
162    (Self : not null access UML_Extension_Proxy;
163     To   : AMF.UML.Extension_Ends.UML_Extension_End_Access) is
164   begin
165      raise Program_Error;
166   end Set_Owned_End;
167
168   ------------------
169   -- Get_End_Type --
170   ------------------
171
172   overriding function Get_End_Type
173    (Self : not null access constant UML_Extension_Proxy)
174       return AMF.UML.Types.Collections.Ordered_Set_Of_UML_Type is
175   begin
176      return
177        AMF.UML.Types.Collections.Wrap
178         (AMF.Internals.Element_Collections.Wrap
179           (AMF.Internals.Tables.UML_Attributes.Internal_Get_End_Type
180             (Self.Element)));
181   end Get_End_Type;
182
183   --------------------
184   -- Get_Is_Derived --
185   --------------------
186
187   overriding function Get_Is_Derived
188    (Self : not null access constant UML_Extension_Proxy)
189       return Boolean is
190   begin
191      return
192        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Derived
193         (Self.Element);
194   end Get_Is_Derived;
195
196   --------------------
197   -- Set_Is_Derived --
198   --------------------
199
200   overriding procedure Set_Is_Derived
201    (Self : not null access UML_Extension_Proxy;
202     To   : Boolean) is
203   begin
204      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Derived
205       (Self.Element, To);
206   end Set_Is_Derived;
207
208   --------------------
209   -- Get_Member_End --
210   --------------------
211
212   overriding function Get_Member_End
213    (Self : not null access constant UML_Extension_Proxy)
214       return AMF.UML.Properties.Collections.Ordered_Set_Of_UML_Property is
215   begin
216      return
217        AMF.UML.Properties.Collections.Wrap
218         (AMF.Internals.Element_Collections.Wrap
219           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Member_End
220             (Self.Element)));
221   end Get_Member_End;
222
223   -----------------------------
224   -- Get_Navigable_Owned_End --
225   -----------------------------
226
227   overriding function Get_Navigable_Owned_End
228    (Self : not null access constant UML_Extension_Proxy)
229       return AMF.UML.Properties.Collections.Set_Of_UML_Property is
230   begin
231      return
232        AMF.UML.Properties.Collections.Wrap
233         (AMF.Internals.Element_Collections.Wrap
234           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Navigable_Owned_End
235             (Self.Element)));
236   end Get_Navigable_Owned_End;
237
238   -------------------
239   -- Get_Owned_End --
240   -------------------
241
242   overriding function Get_Owned_End
243    (Self : not null access constant UML_Extension_Proxy)
244       return AMF.UML.Properties.Collections.Ordered_Set_Of_UML_Property is
245   begin
246      return
247        AMF.UML.Properties.Collections.Wrap
248         (AMF.Internals.Element_Collections.Wrap
249           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_End
250             (Self.Element)));
251   end Get_Owned_End;
252
253   -------------------------
254   -- Get_Related_Element --
255   -------------------------
256
257   overriding function Get_Related_Element
258    (Self : not null access constant UML_Extension_Proxy)
259       return AMF.UML.Elements.Collections.Set_Of_UML_Element is
260   begin
261      return
262        AMF.UML.Elements.Collections.Wrap
263         (AMF.Internals.Element_Collections.Wrap
264           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Related_Element
265             (Self.Element)));
266   end Get_Related_Element;
267
268   -------------------
269   -- Get_Attribute --
270   -------------------
271
272   overriding function Get_Attribute
273    (Self : not null access constant UML_Extension_Proxy)
274       return AMF.UML.Properties.Collections.Set_Of_UML_Property is
275   begin
276      return
277        AMF.UML.Properties.Collections.Wrap
278         (AMF.Internals.Element_Collections.Wrap
279           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Attribute
280             (Self.Element)));
281   end Get_Attribute;
282
283   ---------------------------
284   -- Get_Collaboration_Use --
285   ---------------------------
286
287   overriding function Get_Collaboration_Use
288    (Self : not null access constant UML_Extension_Proxy)
289       return AMF.UML.Collaboration_Uses.Collections.Set_Of_UML_Collaboration_Use is
290   begin
291      return
292        AMF.UML.Collaboration_Uses.Collections.Wrap
293         (AMF.Internals.Element_Collections.Wrap
294           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Collaboration_Use
295             (Self.Element)));
296   end Get_Collaboration_Use;
297
298   -----------------
299   -- Get_Feature --
300   -----------------
301
302   overriding function Get_Feature
303    (Self : not null access constant UML_Extension_Proxy)
304       return AMF.UML.Features.Collections.Set_Of_UML_Feature is
305   begin
306      return
307        AMF.UML.Features.Collections.Wrap
308         (AMF.Internals.Element_Collections.Wrap
309           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Feature
310             (Self.Element)));
311   end Get_Feature;
312
313   -----------------
314   -- Get_General --
315   -----------------
316
317   overriding function Get_General
318    (Self : not null access constant UML_Extension_Proxy)
319       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
320   begin
321      return
322        AMF.UML.Classifiers.Collections.Wrap
323         (AMF.Internals.Element_Collections.Wrap
324           (AMF.Internals.Tables.UML_Attributes.Internal_Get_General
325             (Self.Element)));
326   end Get_General;
327
328   ------------------------
329   -- Get_Generalization --
330   ------------------------
331
332   overriding function Get_Generalization
333    (Self : not null access constant UML_Extension_Proxy)
334       return AMF.UML.Generalizations.Collections.Set_Of_UML_Generalization is
335   begin
336      return
337        AMF.UML.Generalizations.Collections.Wrap
338         (AMF.Internals.Element_Collections.Wrap
339           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Generalization
340             (Self.Element)));
341   end Get_Generalization;
342
343   --------------------------
344   -- Get_Inherited_Member --
345   --------------------------
346
347   overriding function Get_Inherited_Member
348    (Self : not null access constant UML_Extension_Proxy)
349       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
350   begin
351      return
352        AMF.UML.Named_Elements.Collections.Wrap
353         (AMF.Internals.Element_Collections.Wrap
354           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Inherited_Member
355             (Self.Element)));
356   end Get_Inherited_Member;
357
358   ---------------------
359   -- Get_Is_Abstract --
360   ---------------------
361
362   overriding function Get_Is_Abstract
363    (Self : not null access constant UML_Extension_Proxy)
364       return Boolean is
365   begin
366      return
367        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Abstract
368         (Self.Element);
369   end Get_Is_Abstract;
370
371   ---------------------------------
372   -- Get_Is_Final_Specialization --
373   ---------------------------------
374
375   overriding function Get_Is_Final_Specialization
376    (Self : not null access constant UML_Extension_Proxy)
377       return Boolean is
378   begin
379      return
380        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Final_Specialization
381         (Self.Element);
382   end Get_Is_Final_Specialization;
383
384   ---------------------------------
385   -- Set_Is_Final_Specialization --
386   ---------------------------------
387
388   overriding procedure Set_Is_Final_Specialization
389    (Self : not null access UML_Extension_Proxy;
390     To   : Boolean) is
391   begin
392      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Final_Specialization
393       (Self.Element, To);
394   end Set_Is_Final_Specialization;
395
396   ----------------------------------
397   -- Get_Owned_Template_Signature --
398   ----------------------------------
399
400   overriding function Get_Owned_Template_Signature
401    (Self : not null access constant UML_Extension_Proxy)
402       return AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access is
403   begin
404      return
405        AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access
406         (AMF.Internals.Helpers.To_Element
407           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Template_Signature
408             (Self.Element)));
409   end Get_Owned_Template_Signature;
410
411   ----------------------------------
412   -- Set_Owned_Template_Signature --
413   ----------------------------------
414
415   overriding procedure Set_Owned_Template_Signature
416    (Self : not null access UML_Extension_Proxy;
417     To   : AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access) is
418   begin
419      AMF.Internals.Tables.UML_Attributes.Internal_Set_Owned_Template_Signature
420       (Self.Element,
421        AMF.Internals.Helpers.To_Element
422         (AMF.Elements.Element_Access (To)));
423   end Set_Owned_Template_Signature;
424
425   ------------------------
426   -- Get_Owned_Use_Case --
427   ------------------------
428
429   overriding function Get_Owned_Use_Case
430    (Self : not null access constant UML_Extension_Proxy)
431       return AMF.UML.Use_Cases.Collections.Set_Of_UML_Use_Case is
432   begin
433      return
434        AMF.UML.Use_Cases.Collections.Wrap
435         (AMF.Internals.Element_Collections.Wrap
436           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Use_Case
437             (Self.Element)));
438   end Get_Owned_Use_Case;
439
440   --------------------------
441   -- Get_Powertype_Extent --
442   --------------------------
443
444   overriding function Get_Powertype_Extent
445    (Self : not null access constant UML_Extension_Proxy)
446       return AMF.UML.Generalization_Sets.Collections.Set_Of_UML_Generalization_Set is
447   begin
448      return
449        AMF.UML.Generalization_Sets.Collections.Wrap
450         (AMF.Internals.Element_Collections.Wrap
451           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Powertype_Extent
452             (Self.Element)));
453   end Get_Powertype_Extent;
454
455   ------------------------------
456   -- Get_Redefined_Classifier --
457   ------------------------------
458
459   overriding function Get_Redefined_Classifier
460    (Self : not null access constant UML_Extension_Proxy)
461       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
462   begin
463      return
464        AMF.UML.Classifiers.Collections.Wrap
465         (AMF.Internals.Element_Collections.Wrap
466           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Redefined_Classifier
467             (Self.Element)));
468   end Get_Redefined_Classifier;
469
470   ------------------------
471   -- Get_Representation --
472   ------------------------
473
474   overriding function Get_Representation
475    (Self : not null access constant UML_Extension_Proxy)
476       return AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access is
477   begin
478      return
479        AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access
480         (AMF.Internals.Helpers.To_Element
481           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Representation
482             (Self.Element)));
483   end Get_Representation;
484
485   ------------------------
486   -- Set_Representation --
487   ------------------------
488
489   overriding procedure Set_Representation
490    (Self : not null access UML_Extension_Proxy;
491     To   : AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access) is
492   begin
493      AMF.Internals.Tables.UML_Attributes.Internal_Set_Representation
494       (Self.Element,
495        AMF.Internals.Helpers.To_Element
496         (AMF.Elements.Element_Access (To)));
497   end Set_Representation;
498
499   ----------------------
500   -- Get_Substitution --
501   ----------------------
502
503   overriding function Get_Substitution
504    (Self : not null access constant UML_Extension_Proxy)
505       return AMF.UML.Substitutions.Collections.Set_Of_UML_Substitution is
506   begin
507      return
508        AMF.UML.Substitutions.Collections.Wrap
509         (AMF.Internals.Element_Collections.Wrap
510           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Substitution
511             (Self.Element)));
512   end Get_Substitution;
513
514   ----------------------------
515   -- Get_Template_Parameter --
516   ----------------------------
517
518   overriding function Get_Template_Parameter
519    (Self : not null access constant UML_Extension_Proxy)
520       return AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access is
521   begin
522      return
523        AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access
524         (AMF.Internals.Helpers.To_Element
525           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Parameter
526             (Self.Element)));
527   end Get_Template_Parameter;
528
529   ----------------------------
530   -- Set_Template_Parameter --
531   ----------------------------
532
533   overriding procedure Set_Template_Parameter
534    (Self : not null access UML_Extension_Proxy;
535     To   : AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access) is
536   begin
537      AMF.Internals.Tables.UML_Attributes.Internal_Set_Template_Parameter
538       (Self.Element,
539        AMF.Internals.Helpers.To_Element
540         (AMF.Elements.Element_Access (To)));
541   end Set_Template_Parameter;
542
543   ------------------
544   -- Get_Use_Case --
545   ------------------
546
547   overriding function Get_Use_Case
548    (Self : not null access constant UML_Extension_Proxy)
549       return AMF.UML.Use_Cases.Collections.Set_Of_UML_Use_Case is
550   begin
551      return
552        AMF.UML.Use_Cases.Collections.Wrap
553         (AMF.Internals.Element_Collections.Wrap
554           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Use_Case
555             (Self.Element)));
556   end Get_Use_Case;
557
558   ------------------------
559   -- Get_Element_Import --
560   ------------------------
561
562   overriding function Get_Element_Import
563    (Self : not null access constant UML_Extension_Proxy)
564       return AMF.UML.Element_Imports.Collections.Set_Of_UML_Element_Import is
565   begin
566      return
567        AMF.UML.Element_Imports.Collections.Wrap
568         (AMF.Internals.Element_Collections.Wrap
569           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Element_Import
570             (Self.Element)));
571   end Get_Element_Import;
572
573   -------------------------
574   -- Get_Imported_Member --
575   -------------------------
576
577   overriding function Get_Imported_Member
578    (Self : not null access constant UML_Extension_Proxy)
579       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
580   begin
581      return
582        AMF.UML.Packageable_Elements.Collections.Wrap
583         (AMF.Internals.Element_Collections.Wrap
584           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Imported_Member
585             (Self.Element)));
586   end Get_Imported_Member;
587
588   ----------------
589   -- Get_Member --
590   ----------------
591
592   overriding function Get_Member
593    (Self : not null access constant UML_Extension_Proxy)
594       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
595   begin
596      return
597        AMF.UML.Named_Elements.Collections.Wrap
598         (AMF.Internals.Element_Collections.Wrap
599           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Member
600             (Self.Element)));
601   end Get_Member;
602
603   ----------------------
604   -- Get_Owned_Member --
605   ----------------------
606
607   overriding function Get_Owned_Member
608    (Self : not null access constant UML_Extension_Proxy)
609       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
610   begin
611      return
612        AMF.UML.Named_Elements.Collections.Wrap
613         (AMF.Internals.Element_Collections.Wrap
614           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Member
615             (Self.Element)));
616   end Get_Owned_Member;
617
618   --------------------
619   -- Get_Owned_Rule --
620   --------------------
621
622   overriding function Get_Owned_Rule
623    (Self : not null access constant UML_Extension_Proxy)
624       return AMF.UML.Constraints.Collections.Set_Of_UML_Constraint is
625   begin
626      return
627        AMF.UML.Constraints.Collections.Wrap
628         (AMF.Internals.Element_Collections.Wrap
629           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Rule
630             (Self.Element)));
631   end Get_Owned_Rule;
632
633   ------------------------
634   -- Get_Package_Import --
635   ------------------------
636
637   overriding function Get_Package_Import
638    (Self : not null access constant UML_Extension_Proxy)
639       return AMF.UML.Package_Imports.Collections.Set_Of_UML_Package_Import is
640   begin
641      return
642        AMF.UML.Package_Imports.Collections.Wrap
643         (AMF.Internals.Element_Collections.Wrap
644           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Package_Import
645             (Self.Element)));
646   end Get_Package_Import;
647
648   ---------------------------
649   -- Get_Client_Dependency --
650   ---------------------------
651
652   overriding function Get_Client_Dependency
653    (Self : not null access constant UML_Extension_Proxy)
654       return AMF.UML.Dependencies.Collections.Set_Of_UML_Dependency is
655   begin
656      return
657        AMF.UML.Dependencies.Collections.Wrap
658         (AMF.Internals.Element_Collections.Wrap
659           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Client_Dependency
660             (Self.Element)));
661   end Get_Client_Dependency;
662
663   -------------------------
664   -- Get_Name_Expression --
665   -------------------------
666
667   overriding function Get_Name_Expression
668    (Self : not null access constant UML_Extension_Proxy)
669       return AMF.UML.String_Expressions.UML_String_Expression_Access is
670   begin
671      return
672        AMF.UML.String_Expressions.UML_String_Expression_Access
673         (AMF.Internals.Helpers.To_Element
674           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Name_Expression
675             (Self.Element)));
676   end Get_Name_Expression;
677
678   -------------------------
679   -- Set_Name_Expression --
680   -------------------------
681
682   overriding procedure Set_Name_Expression
683    (Self : not null access UML_Extension_Proxy;
684     To   : AMF.UML.String_Expressions.UML_String_Expression_Access) is
685   begin
686      AMF.Internals.Tables.UML_Attributes.Internal_Set_Name_Expression
687       (Self.Element,
688        AMF.Internals.Helpers.To_Element
689         (AMF.Elements.Element_Access (To)));
690   end Set_Name_Expression;
691
692   -------------------
693   -- Get_Namespace --
694   -------------------
695
696   overriding function Get_Namespace
697    (Self : not null access constant UML_Extension_Proxy)
698       return AMF.UML.Namespaces.UML_Namespace_Access is
699   begin
700      return
701        AMF.UML.Namespaces.UML_Namespace_Access
702         (AMF.Internals.Helpers.To_Element
703           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Namespace
704             (Self.Element)));
705   end Get_Namespace;
706
707   ------------------------
708   -- Get_Qualified_Name --
709   ------------------------
710
711   overriding function Get_Qualified_Name
712    (Self : not null access constant UML_Extension_Proxy)
713       return AMF.Optional_String is
714   begin
715      declare
716         use type Matreshka.Internals.Strings.Shared_String_Access;
717
718         Aux : constant Matreshka.Internals.Strings.Shared_String_Access
719           := AMF.Internals.Tables.UML_Attributes.Internal_Get_Qualified_Name (Self.Element);
720
721      begin
722         if Aux = null then
723            return (Is_Empty => True);
724
725         else
726            return (False, League.Strings.Internals.Create (Aux));
727         end if;
728      end;
729   end Get_Qualified_Name;
730
731   -----------------
732   -- Get_Package --
733   -----------------
734
735   overriding function Get_Package
736    (Self : not null access constant UML_Extension_Proxy)
737       return AMF.UML.Packages.UML_Package_Access is
738   begin
739      return
740        AMF.UML.Packages.UML_Package_Access
741         (AMF.Internals.Helpers.To_Element
742           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Package
743             (Self.Element)));
744   end Get_Package;
745
746   -----------------
747   -- Set_Package --
748   -----------------
749
750   overriding procedure Set_Package
751    (Self : not null access UML_Extension_Proxy;
752     To   : AMF.UML.Packages.UML_Package_Access) is
753   begin
754      AMF.Internals.Tables.UML_Attributes.Internal_Set_Package
755       (Self.Element,
756        AMF.Internals.Helpers.To_Element
757         (AMF.Elements.Element_Access (To)));
758   end Set_Package;
759
760   -----------------------------------
761   -- Get_Owning_Template_Parameter --
762   -----------------------------------
763
764   overriding function Get_Owning_Template_Parameter
765    (Self : not null access constant UML_Extension_Proxy)
766       return AMF.UML.Template_Parameters.UML_Template_Parameter_Access is
767   begin
768      return
769        AMF.UML.Template_Parameters.UML_Template_Parameter_Access
770         (AMF.Internals.Helpers.To_Element
771           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owning_Template_Parameter
772             (Self.Element)));
773   end Get_Owning_Template_Parameter;
774
775   -----------------------------------
776   -- Set_Owning_Template_Parameter --
777   -----------------------------------
778
779   overriding procedure Set_Owning_Template_Parameter
780    (Self : not null access UML_Extension_Proxy;
781     To   : AMF.UML.Template_Parameters.UML_Template_Parameter_Access) is
782   begin
783      AMF.Internals.Tables.UML_Attributes.Internal_Set_Owning_Template_Parameter
784       (Self.Element,
785        AMF.Internals.Helpers.To_Element
786         (AMF.Elements.Element_Access (To)));
787   end Set_Owning_Template_Parameter;
788
789   ----------------------------
790   -- Get_Template_Parameter --
791   ----------------------------
792
793   overriding function Get_Template_Parameter
794    (Self : not null access constant UML_Extension_Proxy)
795       return AMF.UML.Template_Parameters.UML_Template_Parameter_Access is
796   begin
797      return
798        AMF.UML.Template_Parameters.UML_Template_Parameter_Access
799         (AMF.Internals.Helpers.To_Element
800           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Parameter
801             (Self.Element)));
802   end Get_Template_Parameter;
803
804   ----------------------------
805   -- Set_Template_Parameter --
806   ----------------------------
807
808   overriding procedure Set_Template_Parameter
809    (Self : not null access UML_Extension_Proxy;
810     To   : AMF.UML.Template_Parameters.UML_Template_Parameter_Access) is
811   begin
812      AMF.Internals.Tables.UML_Attributes.Internal_Set_Template_Parameter
813       (Self.Element,
814        AMF.Internals.Helpers.To_Element
815         (AMF.Elements.Element_Access (To)));
816   end Set_Template_Parameter;
817
818   ----------------------------------
819   -- Get_Owned_Template_Signature --
820   ----------------------------------
821
822   overriding function Get_Owned_Template_Signature
823    (Self : not null access constant UML_Extension_Proxy)
824       return AMF.UML.Template_Signatures.UML_Template_Signature_Access is
825   begin
826      return
827        AMF.UML.Template_Signatures.UML_Template_Signature_Access
828         (AMF.Internals.Helpers.To_Element
829           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owned_Template_Signature
830             (Self.Element)));
831   end Get_Owned_Template_Signature;
832
833   ----------------------------------
834   -- Set_Owned_Template_Signature --
835   ----------------------------------
836
837   overriding procedure Set_Owned_Template_Signature
838    (Self : not null access UML_Extension_Proxy;
839     To   : AMF.UML.Template_Signatures.UML_Template_Signature_Access) is
840   begin
841      AMF.Internals.Tables.UML_Attributes.Internal_Set_Owned_Template_Signature
842       (Self.Element,
843        AMF.Internals.Helpers.To_Element
844         (AMF.Elements.Element_Access (To)));
845   end Set_Owned_Template_Signature;
846
847   --------------------------
848   -- Get_Template_Binding --
849   --------------------------
850
851   overriding function Get_Template_Binding
852    (Self : not null access constant UML_Extension_Proxy)
853       return AMF.UML.Template_Bindings.Collections.Set_Of_UML_Template_Binding is
854   begin
855      return
856        AMF.UML.Template_Bindings.Collections.Wrap
857         (AMF.Internals.Element_Collections.Wrap
858           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Binding
859             (Self.Element)));
860   end Get_Template_Binding;
861
862   -----------------
863   -- Get_Is_Leaf --
864   -----------------
865
866   overriding function Get_Is_Leaf
867    (Self : not null access constant UML_Extension_Proxy)
868       return Boolean is
869   begin
870      return
871        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Leaf
872         (Self.Element);
873   end Get_Is_Leaf;
874
875   -----------------
876   -- Set_Is_Leaf --
877   -----------------
878
879   overriding procedure Set_Is_Leaf
880    (Self : not null access UML_Extension_Proxy;
881     To   : Boolean) is
882   begin
883      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Leaf
884       (Self.Element, To);
885   end Set_Is_Leaf;
886
887   ---------------------------
888   -- Get_Redefined_Element --
889   ---------------------------
890
891   overriding function Get_Redefined_Element
892    (Self : not null access constant UML_Extension_Proxy)
893       return AMF.UML.Redefinable_Elements.Collections.Set_Of_UML_Redefinable_Element is
894   begin
895      return
896        AMF.UML.Redefinable_Elements.Collections.Wrap
897         (AMF.Internals.Element_Collections.Wrap
898           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Redefined_Element
899             (Self.Element)));
900   end Get_Redefined_Element;
901
902   ------------------------------
903   -- Get_Redefinition_Context --
904   ------------------------------
905
906   overriding function Get_Redefinition_Context
907    (Self : not null access constant UML_Extension_Proxy)
908       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
909   begin
910      return
911        AMF.UML.Classifiers.Collections.Wrap
912         (AMF.Internals.Element_Collections.Wrap
913           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Redefinition_Context
914             (Self.Element)));
915   end Get_Redefinition_Context;
916
917   -----------------
918   -- Is_Required --
919   -----------------
920
921   overriding function Is_Required
922    (Self : not null access constant UML_Extension_Proxy)
923       return Boolean is
924   begin
925      --  Generated stub: replace with real body!
926      pragma Compile_Time_Warning (Standard.True, "Is_Required unimplemented");
927      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Is_Required";
928      return Is_Required (Self);
929   end Is_Required;
930
931   ---------------
932   -- Metaclass --
933   ---------------
934
935   overriding function Metaclass
936    (Self : not null access constant UML_Extension_Proxy)
937       return AMF.UML.Classes.UML_Class_Access is
938   begin
939      --  Generated stub: replace with real body!
940      pragma Compile_Time_Warning (Standard.True, "Metaclass unimplemented");
941      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Metaclass";
942      return Metaclass (Self);
943   end Metaclass;
944
945   -------------------
946   -- Metaclass_End --
947   -------------------
948
949   overriding function Metaclass_End
950    (Self : not null access constant UML_Extension_Proxy)
951       return AMF.UML.Properties.UML_Property_Access is
952   begin
953      --  Generated stub: replace with real body!
954      pragma Compile_Time_Warning (Standard.True, "Metaclass_End unimplemented");
955      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Metaclass_End";
956      return Metaclass_End (Self);
957   end Metaclass_End;
958
959   --------------
960   -- End_Type --
961   --------------
962
963   overriding function End_Type
964    (Self : not null access constant UML_Extension_Proxy)
965       return AMF.UML.Types.Collections.Ordered_Set_Of_UML_Type is
966   begin
967      --  Generated stub: replace with real body!
968      pragma Compile_Time_Warning (Standard.True, "End_Type unimplemented");
969      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.End_Type";
970      return End_Type (Self);
971   end End_Type;
972
973   ------------------
974   -- All_Features --
975   ------------------
976
977   overriding function All_Features
978    (Self : not null access constant UML_Extension_Proxy)
979       return AMF.UML.Features.Collections.Set_Of_UML_Feature is
980   begin
981      --  Generated stub: replace with real body!
982      pragma Compile_Time_Warning (Standard.True, "All_Features unimplemented");
983      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.All_Features";
984      return All_Features (Self);
985   end All_Features;
986
987   -----------------
988   -- Conforms_To --
989   -----------------
990
991   overriding function Conforms_To
992    (Self : not null access constant UML_Extension_Proxy;
993     Other : AMF.UML.Classifiers.UML_Classifier_Access)
994       return Boolean is
995   begin
996      --  Generated stub: replace with real body!
997      pragma Compile_Time_Warning (Standard.True, "Conforms_To unimplemented");
998      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Conforms_To";
999      return Conforms_To (Self, Other);
1000   end Conforms_To;
1001
1002   -------------
1003   -- General --
1004   -------------
1005
1006   overriding function General
1007    (Self : not null access constant UML_Extension_Proxy)
1008       return AMF.UML.Classifiers.Collections.Set_Of_UML_Classifier is
1009   begin
1010      --  Generated stub: replace with real body!
1011      pragma Compile_Time_Warning (Standard.True, "General unimplemented");
1012      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.General";
1013      return General (Self);
1014   end General;
1015
1016   -----------------------
1017   -- Has_Visibility_Of --
1018   -----------------------
1019
1020   overriding function Has_Visibility_Of
1021    (Self : not null access constant UML_Extension_Proxy;
1022     N : AMF.UML.Named_Elements.UML_Named_Element_Access)
1023       return Boolean is
1024   begin
1025      --  Generated stub: replace with real body!
1026      pragma Compile_Time_Warning (Standard.True, "Has_Visibility_Of unimplemented");
1027      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Has_Visibility_Of";
1028      return Has_Visibility_Of (Self, N);
1029   end Has_Visibility_Of;
1030
1031   -------------
1032   -- Inherit --
1033   -------------
1034
1035   overriding function Inherit
1036    (Self : not null access constant UML_Extension_Proxy;
1037     Inhs : AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element)
1038       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1039   begin
1040      --  Generated stub: replace with real body!
1041      pragma Compile_Time_Warning (Standard.True, "Inherit unimplemented");
1042      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Inherit";
1043      return Inherit (Self, Inhs);
1044   end Inherit;
1045
1046   -------------------------
1047   -- Inheritable_Members --
1048   -------------------------
1049
1050   overriding function Inheritable_Members
1051    (Self : not null access constant UML_Extension_Proxy;
1052     C : AMF.UML.Classifiers.UML_Classifier_Access)
1053       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1054   begin
1055      --  Generated stub: replace with real body!
1056      pragma Compile_Time_Warning (Standard.True, "Inheritable_Members unimplemented");
1057      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Inheritable_Members";
1058      return Inheritable_Members (Self, C);
1059   end Inheritable_Members;
1060
1061   ----------------------
1062   -- Inherited_Member --
1063   ----------------------
1064
1065   overriding function Inherited_Member
1066    (Self : not null access constant UML_Extension_Proxy)
1067       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1068   begin
1069      --  Generated stub: replace with real body!
1070      pragma Compile_Time_Warning (Standard.True, "Inherited_Member unimplemented");
1071      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Inherited_Member";
1072      return Inherited_Member (Self);
1073   end Inherited_Member;
1074
1075   -----------------
1076   -- Is_Template --
1077   -----------------
1078
1079   overriding function Is_Template
1080    (Self : not null access constant UML_Extension_Proxy)
1081       return Boolean is
1082   begin
1083      --  Generated stub: replace with real body!
1084      pragma Compile_Time_Warning (Standard.True, "Is_Template unimplemented");
1085      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Is_Template";
1086      return Is_Template (Self);
1087   end Is_Template;
1088
1089   -------------------------
1090   -- May_Specialize_Type --
1091   -------------------------
1092
1093   overriding function May_Specialize_Type
1094    (Self : not null access constant UML_Extension_Proxy;
1095     C : AMF.UML.Classifiers.UML_Classifier_Access)
1096       return Boolean is
1097   begin
1098      --  Generated stub: replace with real body!
1099      pragma Compile_Time_Warning (Standard.True, "May_Specialize_Type unimplemented");
1100      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.May_Specialize_Type";
1101      return May_Specialize_Type (Self, C);
1102   end May_Specialize_Type;
1103
1104   ------------------------
1105   -- Exclude_Collisions --
1106   ------------------------
1107
1108   overriding function Exclude_Collisions
1109    (Self : not null access constant UML_Extension_Proxy;
1110     Imps : AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element)
1111       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
1112   begin
1113      --  Generated stub: replace with real body!
1114      pragma Compile_Time_Warning (Standard.True, "Exclude_Collisions unimplemented");
1115      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Exclude_Collisions";
1116      return Exclude_Collisions (Self, Imps);
1117   end Exclude_Collisions;
1118
1119   -------------------------
1120   -- Get_Names_Of_Member --
1121   -------------------------
1122
1123   overriding function Get_Names_Of_Member
1124    (Self : not null access constant UML_Extension_Proxy;
1125     Element : AMF.UML.Named_Elements.UML_Named_Element_Access)
1126       return AMF.String_Collections.Set_Of_String is
1127   begin
1128      --  Generated stub: replace with real body!
1129      pragma Compile_Time_Warning (Standard.True, "Get_Names_Of_Member unimplemented");
1130      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Get_Names_Of_Member";
1131      return Get_Names_Of_Member (Self, Element);
1132   end Get_Names_Of_Member;
1133
1134   --------------------
1135   -- Import_Members --
1136   --------------------
1137
1138   overriding function Import_Members
1139    (Self : not null access constant UML_Extension_Proxy;
1140     Imps : AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element)
1141       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
1142   begin
1143      --  Generated stub: replace with real body!
1144      pragma Compile_Time_Warning (Standard.True, "Import_Members unimplemented");
1145      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Import_Members";
1146      return Import_Members (Self, Imps);
1147   end Import_Members;
1148
1149   ---------------------
1150   -- Imported_Member --
1151   ---------------------
1152
1153   overriding function Imported_Member
1154    (Self : not null access constant UML_Extension_Proxy)
1155       return AMF.UML.Packageable_Elements.Collections.Set_Of_UML_Packageable_Element is
1156   begin
1157      --  Generated stub: replace with real body!
1158      pragma Compile_Time_Warning (Standard.True, "Imported_Member unimplemented");
1159      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Imported_Member";
1160      return Imported_Member (Self);
1161   end Imported_Member;
1162
1163   ---------------------------------
1164   -- Members_Are_Distinguishable --
1165   ---------------------------------
1166
1167   overriding function Members_Are_Distinguishable
1168    (Self : not null access constant UML_Extension_Proxy)
1169       return Boolean is
1170   begin
1171      --  Generated stub: replace with real body!
1172      pragma Compile_Time_Warning (Standard.True, "Members_Are_Distinguishable unimplemented");
1173      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Members_Are_Distinguishable";
1174      return Members_Are_Distinguishable (Self);
1175   end Members_Are_Distinguishable;
1176
1177   ------------------
1178   -- Owned_Member --
1179   ------------------
1180
1181   overriding function Owned_Member
1182    (Self : not null access constant UML_Extension_Proxy)
1183       return AMF.UML.Named_Elements.Collections.Set_Of_UML_Named_Element is
1184   begin
1185      --  Generated stub: replace with real body!
1186      pragma Compile_Time_Warning (Standard.True, "Owned_Member unimplemented");
1187      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Owned_Member";
1188      return Owned_Member (Self);
1189   end Owned_Member;
1190
1191   -------------------------
1192   -- All_Owning_Packages --
1193   -------------------------
1194
1195   overriding function All_Owning_Packages
1196    (Self : not null access constant UML_Extension_Proxy)
1197       return AMF.UML.Packages.Collections.Set_Of_UML_Package is
1198   begin
1199      --  Generated stub: replace with real body!
1200      pragma Compile_Time_Warning (Standard.True, "All_Owning_Packages unimplemented");
1201      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.All_Owning_Packages";
1202      return All_Owning_Packages (Self);
1203   end All_Owning_Packages;
1204
1205   -----------------------------
1206   -- Is_Distinguishable_From --
1207   -----------------------------
1208
1209   overriding function Is_Distinguishable_From
1210    (Self : not null access constant UML_Extension_Proxy;
1211     N : AMF.UML.Named_Elements.UML_Named_Element_Access;
1212     Ns : AMF.UML.Namespaces.UML_Namespace_Access)
1213       return Boolean is
1214   begin
1215      --  Generated stub: replace with real body!
1216      pragma Compile_Time_Warning (Standard.True, "Is_Distinguishable_From unimplemented");
1217      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Is_Distinguishable_From";
1218      return Is_Distinguishable_From (Self, N, Ns);
1219   end Is_Distinguishable_From;
1220
1221   ---------------
1222   -- Namespace --
1223   ---------------
1224
1225   overriding function Namespace
1226    (Self : not null access constant UML_Extension_Proxy)
1227       return AMF.UML.Namespaces.UML_Namespace_Access is
1228   begin
1229      --  Generated stub: replace with real body!
1230      pragma Compile_Time_Warning (Standard.True, "Namespace unimplemented");
1231      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Namespace";
1232      return Namespace (Self);
1233   end Namespace;
1234
1235   -----------------
1236   -- Conforms_To --
1237   -----------------
1238
1239   overriding function Conforms_To
1240    (Self : not null access constant UML_Extension_Proxy;
1241     Other : AMF.UML.Types.UML_Type_Access)
1242       return Boolean is
1243   begin
1244      --  Generated stub: replace with real body!
1245      pragma Compile_Time_Warning (Standard.True, "Conforms_To unimplemented");
1246      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Conforms_To";
1247      return Conforms_To (Self, Other);
1248   end Conforms_To;
1249
1250   ------------------------
1251   -- Is_Compatible_With --
1252   ------------------------
1253
1254   overriding function Is_Compatible_With
1255    (Self : not null access constant UML_Extension_Proxy;
1256     P : AMF.UML.Parameterable_Elements.UML_Parameterable_Element_Access)
1257       return Boolean is
1258   begin
1259      --  Generated stub: replace with real body!
1260      pragma Compile_Time_Warning (Standard.True, "Is_Compatible_With unimplemented");
1261      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Is_Compatible_With";
1262      return Is_Compatible_With (Self, P);
1263   end Is_Compatible_With;
1264
1265   ---------------------------
1266   -- Is_Template_Parameter --
1267   ---------------------------
1268
1269   overriding function Is_Template_Parameter
1270    (Self : not null access constant UML_Extension_Proxy)
1271       return Boolean is
1272   begin
1273      --  Generated stub: replace with real body!
1274      pragma Compile_Time_Warning (Standard.True, "Is_Template_Parameter unimplemented");
1275      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Is_Template_Parameter";
1276      return Is_Template_Parameter (Self);
1277   end Is_Template_Parameter;
1278
1279   ----------------------------
1280   -- Parameterable_Elements --
1281   ----------------------------
1282
1283   overriding function Parameterable_Elements
1284    (Self : not null access constant UML_Extension_Proxy)
1285       return AMF.UML.Parameterable_Elements.Collections.Set_Of_UML_Parameterable_Element is
1286   begin
1287      --  Generated stub: replace with real body!
1288      pragma Compile_Time_Warning (Standard.True, "Parameterable_Elements unimplemented");
1289      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Parameterable_Elements";
1290      return Parameterable_Elements (Self);
1291   end Parameterable_Elements;
1292
1293   ------------------------
1294   -- Is_Consistent_With --
1295   ------------------------
1296
1297   overriding function Is_Consistent_With
1298    (Self : not null access constant UML_Extension_Proxy;
1299     Redefinee : AMF.UML.Redefinable_Elements.UML_Redefinable_Element_Access)
1300       return Boolean is
1301   begin
1302      --  Generated stub: replace with real body!
1303      pragma Compile_Time_Warning (Standard.True, "Is_Consistent_With unimplemented");
1304      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Is_Consistent_With";
1305      return Is_Consistent_With (Self, Redefinee);
1306   end Is_Consistent_With;
1307
1308   -----------------------------------
1309   -- Is_Redefinition_Context_Valid --
1310   -----------------------------------
1311
1312   overriding function Is_Redefinition_Context_Valid
1313    (Self : not null access constant UML_Extension_Proxy;
1314     Redefined : AMF.UML.Redefinable_Elements.UML_Redefinable_Element_Access)
1315       return Boolean is
1316   begin
1317      --  Generated stub: replace with real body!
1318      pragma Compile_Time_Warning (Standard.True, "Is_Redefinition_Context_Valid unimplemented");
1319      raise Program_Error with "Unimplemented procedure UML_Extension_Proxy.Is_Redefinition_Context_Valid";
1320      return Is_Redefinition_Context_Valid (Self, Redefined);
1321   end Is_Redefinition_Context_Valid;
1322
1323end AMF.Internals.UML_Extensions;
1324