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: 2967 $ $Date: 2012-05-12 10:21:56 +0400 (Sat, 12 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_Parameters is
54
55   -------------------
56   -- Enter_Element --
57   -------------------
58
59   overriding procedure Enter_Element
60    (Self    : not null access constant UML_Parameter_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_Parameter
67            (AMF.UML.Parameters.UML_Parameter_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_Parameter_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_Parameter
84            (AMF.UML.Parameters.UML_Parameter_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_Parameter_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_Parameter
102            (Visitor,
103             AMF.UML.Parameters.UML_Parameter_Access (Self),
104             Control);
105      end if;
106   end Visit_Element;
107
108   -----------------
109   -- Get_Default --
110   -----------------
111
112   overriding function Get_Default
113    (Self : not null access constant UML_Parameter_Proxy)
114       return AMF.Optional_String is
115   begin
116      declare
117         use type Matreshka.Internals.Strings.Shared_String_Access;
118
119         Aux : constant Matreshka.Internals.Strings.Shared_String_Access
120           := AMF.Internals.Tables.UML_Attributes.Internal_Get_Default (Self.Element);
121
122      begin
123         if Aux = null then
124            return (Is_Empty => True);
125
126         else
127            return (False, League.Strings.Internals.Create (Aux));
128         end if;
129      end;
130   end Get_Default;
131
132   -----------------
133   -- Set_Default --
134   -----------------
135
136   overriding procedure Set_Default
137    (Self : not null access UML_Parameter_Proxy;
138     To   : AMF.Optional_String) is
139   begin
140      if To.Is_Empty then
141         AMF.Internals.Tables.UML_Attributes.Internal_Set_Default
142          (Self.Element, null);
143
144      else
145         AMF.Internals.Tables.UML_Attributes.Internal_Set_Default
146          (Self.Element,
147           League.Strings.Internals.Internal (To.Value));
148      end if;
149   end Set_Default;
150
151   -----------------------
152   -- Get_Default_Value --
153   -----------------------
154
155   overriding function Get_Default_Value
156    (Self : not null access constant UML_Parameter_Proxy)
157       return AMF.UML.Value_Specifications.UML_Value_Specification_Access is
158   begin
159      return
160        AMF.UML.Value_Specifications.UML_Value_Specification_Access
161         (AMF.Internals.Helpers.To_Element
162           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Default_Value
163             (Self.Element)));
164   end Get_Default_Value;
165
166   -----------------------
167   -- Set_Default_Value --
168   -----------------------
169
170   overriding procedure Set_Default_Value
171    (Self : not null access UML_Parameter_Proxy;
172     To   : AMF.UML.Value_Specifications.UML_Value_Specification_Access) is
173   begin
174      AMF.Internals.Tables.UML_Attributes.Internal_Set_Default_Value
175       (Self.Element,
176        AMF.Internals.Helpers.To_Element
177         (AMF.Elements.Element_Access (To)));
178   end Set_Default_Value;
179
180   -------------------
181   -- Get_Direction --
182   -------------------
183
184   overriding function Get_Direction
185    (Self : not null access constant UML_Parameter_Proxy)
186       return AMF.UML.UML_Parameter_Direction_Kind is
187   begin
188      return
189        AMF.Internals.Tables.UML_Attributes.Internal_Get_Direction
190         (Self.Element);
191   end Get_Direction;
192
193   -------------------
194   -- Set_Direction --
195   -------------------
196
197   overriding procedure Set_Direction
198    (Self : not null access UML_Parameter_Proxy;
199     To   : AMF.UML.UML_Parameter_Direction_Kind) is
200   begin
201      AMF.Internals.Tables.UML_Attributes.Internal_Set_Direction
202       (Self.Element, To);
203   end Set_Direction;
204
205   ----------------
206   -- Get_Effect --
207   ----------------
208
209   overriding function Get_Effect
210    (Self : not null access constant UML_Parameter_Proxy)
211       return AMF.UML.Optional_UML_Parameter_Effect_Kind is
212   begin
213      return
214        AMF.Internals.Tables.UML_Attributes.Internal_Get_Effect
215         (Self.Element);
216   end Get_Effect;
217
218   ----------------
219   -- Set_Effect --
220   ----------------
221
222   overriding procedure Set_Effect
223    (Self : not null access UML_Parameter_Proxy;
224     To   : AMF.UML.Optional_UML_Parameter_Effect_Kind) is
225   begin
226      AMF.Internals.Tables.UML_Attributes.Internal_Set_Effect
227       (Self.Element, To);
228   end Set_Effect;
229
230   ----------------------
231   -- Get_Is_Exception --
232   ----------------------
233
234   overriding function Get_Is_Exception
235    (Self : not null access constant UML_Parameter_Proxy)
236       return Boolean is
237   begin
238      return
239        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Exception
240         (Self.Element);
241   end Get_Is_Exception;
242
243   ----------------------
244   -- Set_Is_Exception --
245   ----------------------
246
247   overriding procedure Set_Is_Exception
248    (Self : not null access UML_Parameter_Proxy;
249     To   : Boolean) is
250   begin
251      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Exception
252       (Self.Element, To);
253   end Set_Is_Exception;
254
255   -------------------
256   -- Get_Is_Stream --
257   -------------------
258
259   overriding function Get_Is_Stream
260    (Self : not null access constant UML_Parameter_Proxy)
261       return Boolean is
262   begin
263      return
264        AMF.Internals.Tables.UML_Attributes.Internal_Get_Is_Stream
265         (Self.Element);
266   end Get_Is_Stream;
267
268   -------------------
269   -- Set_Is_Stream --
270   -------------------
271
272   overriding procedure Set_Is_Stream
273    (Self : not null access UML_Parameter_Proxy;
274     To   : Boolean) is
275   begin
276      AMF.Internals.Tables.UML_Attributes.Internal_Set_Is_Stream
277       (Self.Element, To);
278   end Set_Is_Stream;
279
280   -------------------
281   -- Get_Operation --
282   -------------------
283
284   overriding function Get_Operation
285    (Self : not null access constant UML_Parameter_Proxy)
286       return AMF.UML.Operations.UML_Operation_Access is
287   begin
288      return
289        AMF.UML.Operations.UML_Operation_Access
290         (AMF.Internals.Helpers.To_Element
291           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Operation
292             (Self.Element)));
293   end Get_Operation;
294
295   -------------------
296   -- Set_Operation --
297   -------------------
298
299   overriding procedure Set_Operation
300    (Self : not null access UML_Parameter_Proxy;
301     To   : AMF.UML.Operations.UML_Operation_Access) is
302   begin
303      AMF.Internals.Tables.UML_Attributes.Internal_Set_Operation
304       (Self.Element,
305        AMF.Internals.Helpers.To_Element
306         (AMF.Elements.Element_Access (To)));
307   end Set_Operation;
308
309   -----------------------
310   -- Get_Parameter_Set --
311   -----------------------
312
313   overriding function Get_Parameter_Set
314    (Self : not null access constant UML_Parameter_Proxy)
315       return AMF.UML.Parameter_Sets.Collections.Set_Of_UML_Parameter_Set is
316   begin
317      return
318        AMF.UML.Parameter_Sets.Collections.Wrap
319         (AMF.Internals.Element_Collections.Wrap
320           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Parameter_Set
321             (Self.Element)));
322   end Get_Parameter_Set;
323
324   -------------
325   -- Get_End --
326   -------------
327
328   overriding function Get_End
329    (Self : not null access constant UML_Parameter_Proxy)
330       return AMF.UML.Connector_Ends.Collections.Ordered_Set_Of_UML_Connector_End is
331   begin
332      return
333        AMF.UML.Connector_Ends.Collections.Wrap
334         (AMF.Internals.Element_Collections.Wrap
335           (AMF.Internals.Tables.UML_Attributes.Internal_Get_End
336             (Self.Element)));
337   end Get_End;
338
339   ----------------------------
340   -- Get_Template_Parameter --
341   ----------------------------
342
343   overriding function Get_Template_Parameter
344    (Self : not null access constant UML_Parameter_Proxy)
345       return AMF.UML.Connectable_Element_Template_Parameters.UML_Connectable_Element_Template_Parameter_Access is
346   begin
347      return
348        AMF.UML.Connectable_Element_Template_Parameters.UML_Connectable_Element_Template_Parameter_Access
349         (AMF.Internals.Helpers.To_Element
350           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Parameter
351             (Self.Element)));
352   end Get_Template_Parameter;
353
354   ----------------------------
355   -- Set_Template_Parameter --
356   ----------------------------
357
358   overriding procedure Set_Template_Parameter
359    (Self : not null access UML_Parameter_Proxy;
360     To   : AMF.UML.Connectable_Element_Template_Parameters.UML_Connectable_Element_Template_Parameter_Access) is
361   begin
362      AMF.Internals.Tables.UML_Attributes.Internal_Set_Template_Parameter
363       (Self.Element,
364        AMF.Internals.Helpers.To_Element
365         (AMF.Elements.Element_Access (To)));
366   end Set_Template_Parameter;
367
368   --------------
369   -- Get_Type --
370   --------------
371
372   overriding function Get_Type
373    (Self : not null access constant UML_Parameter_Proxy)
374       return AMF.UML.Types.UML_Type_Access is
375   begin
376      return
377        AMF.UML.Types.UML_Type_Access
378         (AMF.Internals.Helpers.To_Element
379           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Type
380             (Self.Element)));
381   end Get_Type;
382
383   --------------
384   -- Set_Type --
385   --------------
386
387   overriding procedure Set_Type
388    (Self : not null access UML_Parameter_Proxy;
389     To   : AMF.UML.Types.UML_Type_Access) is
390   begin
391      AMF.Internals.Tables.UML_Attributes.Internal_Set_Type
392       (Self.Element,
393        AMF.Internals.Helpers.To_Element
394         (AMF.Elements.Element_Access (To)));
395   end Set_Type;
396
397   ---------------------------
398   -- Get_Client_Dependency --
399   ---------------------------
400
401   overriding function Get_Client_Dependency
402    (Self : not null access constant UML_Parameter_Proxy)
403       return AMF.UML.Dependencies.Collections.Set_Of_UML_Dependency is
404   begin
405      return
406        AMF.UML.Dependencies.Collections.Wrap
407         (AMF.Internals.Element_Collections.Wrap
408           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Client_Dependency
409             (Self.Element)));
410   end Get_Client_Dependency;
411
412   -------------------------
413   -- Get_Name_Expression --
414   -------------------------
415
416   overriding function Get_Name_Expression
417    (Self : not null access constant UML_Parameter_Proxy)
418       return AMF.UML.String_Expressions.UML_String_Expression_Access is
419   begin
420      return
421        AMF.UML.String_Expressions.UML_String_Expression_Access
422         (AMF.Internals.Helpers.To_Element
423           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Name_Expression
424             (Self.Element)));
425   end Get_Name_Expression;
426
427   -------------------------
428   -- Set_Name_Expression --
429   -------------------------
430
431   overriding procedure Set_Name_Expression
432    (Self : not null access UML_Parameter_Proxy;
433     To   : AMF.UML.String_Expressions.UML_String_Expression_Access) is
434   begin
435      AMF.Internals.Tables.UML_Attributes.Internal_Set_Name_Expression
436       (Self.Element,
437        AMF.Internals.Helpers.To_Element
438         (AMF.Elements.Element_Access (To)));
439   end Set_Name_Expression;
440
441   -------------------
442   -- Get_Namespace --
443   -------------------
444
445   overriding function Get_Namespace
446    (Self : not null access constant UML_Parameter_Proxy)
447       return AMF.UML.Namespaces.UML_Namespace_Access is
448   begin
449      return
450        AMF.UML.Namespaces.UML_Namespace_Access
451         (AMF.Internals.Helpers.To_Element
452           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Namespace
453             (Self.Element)));
454   end Get_Namespace;
455
456   ------------------------
457   -- Get_Qualified_Name --
458   ------------------------
459
460   overriding function Get_Qualified_Name
461    (Self : not null access constant UML_Parameter_Proxy)
462       return AMF.Optional_String is
463   begin
464      declare
465         use type Matreshka.Internals.Strings.Shared_String_Access;
466
467         Aux : constant Matreshka.Internals.Strings.Shared_String_Access
468           := AMF.Internals.Tables.UML_Attributes.Internal_Get_Qualified_Name (Self.Element);
469
470      begin
471         if Aux = null then
472            return (Is_Empty => True);
473
474         else
475            return (False, League.Strings.Internals.Create (Aux));
476         end if;
477      end;
478   end Get_Qualified_Name;
479
480   -----------------------------------
481   -- Get_Owning_Template_Parameter --
482   -----------------------------------
483
484   overriding function Get_Owning_Template_Parameter
485    (Self : not null access constant UML_Parameter_Proxy)
486       return AMF.UML.Template_Parameters.UML_Template_Parameter_Access is
487   begin
488      return
489        AMF.UML.Template_Parameters.UML_Template_Parameter_Access
490         (AMF.Internals.Helpers.To_Element
491           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Owning_Template_Parameter
492             (Self.Element)));
493   end Get_Owning_Template_Parameter;
494
495   -----------------------------------
496   -- Set_Owning_Template_Parameter --
497   -----------------------------------
498
499   overriding procedure Set_Owning_Template_Parameter
500    (Self : not null access UML_Parameter_Proxy;
501     To   : AMF.UML.Template_Parameters.UML_Template_Parameter_Access) is
502   begin
503      AMF.Internals.Tables.UML_Attributes.Internal_Set_Owning_Template_Parameter
504       (Self.Element,
505        AMF.Internals.Helpers.To_Element
506         (AMF.Elements.Element_Access (To)));
507   end Set_Owning_Template_Parameter;
508
509   ----------------------------
510   -- Get_Template_Parameter --
511   ----------------------------
512
513   overriding function Get_Template_Parameter
514    (Self : not null access constant UML_Parameter_Proxy)
515       return AMF.UML.Template_Parameters.UML_Template_Parameter_Access is
516   begin
517      return
518        AMF.UML.Template_Parameters.UML_Template_Parameter_Access
519         (AMF.Internals.Helpers.To_Element
520           (AMF.Internals.Tables.UML_Attributes.Internal_Get_Template_Parameter
521             (Self.Element)));
522   end Get_Template_Parameter;
523
524   ----------------------------
525   -- Set_Template_Parameter --
526   ----------------------------
527
528   overriding procedure Set_Template_Parameter
529    (Self : not null access UML_Parameter_Proxy;
530     To   : AMF.UML.Template_Parameters.UML_Template_Parameter_Access) is
531   begin
532      AMF.Internals.Tables.UML_Attributes.Internal_Set_Template_Parameter
533       (Self.Element,
534        AMF.Internals.Helpers.To_Element
535         (AMF.Elements.Element_Access (To)));
536   end Set_Template_Parameter;
537
538   -------------
539   -- Default --
540   -------------
541
542   overriding function Default
543    (Self : not null access constant UML_Parameter_Proxy)
544       return AMF.Optional_String is
545   begin
546      --  Generated stub: replace with real body!
547      pragma Compile_Time_Warning (Standard.True, "Default unimplemented");
548      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Default";
549      return Default (Self);
550   end Default;
551
552   ---------------------
553   -- Compatible_With --
554   ---------------------
555
556   overriding function Compatible_With
557    (Self : not null access constant UML_Parameter_Proxy;
558     Other : AMF.UML.Multiplicity_Elements.UML_Multiplicity_Element_Access)
559       return Boolean is
560   begin
561      --  Generated stub: replace with real body!
562      pragma Compile_Time_Warning (Standard.True, "Compatible_With unimplemented");
563      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Compatible_With";
564      return Compatible_With (Self, Other);
565   end Compatible_With;
566
567   --------------------------
568   -- Includes_Cardinality --
569   --------------------------
570
571   overriding function Includes_Cardinality
572    (Self : not null access constant UML_Parameter_Proxy;
573     C : Integer)
574       return Boolean is
575   begin
576      --  Generated stub: replace with real body!
577      pragma Compile_Time_Warning (Standard.True, "Includes_Cardinality unimplemented");
578      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Includes_Cardinality";
579      return Includes_Cardinality (Self, C);
580   end Includes_Cardinality;
581
582   ---------------------------
583   -- Includes_Multiplicity --
584   ---------------------------
585
586   overriding function Includes_Multiplicity
587    (Self : not null access constant UML_Parameter_Proxy;
588     M : AMF.UML.Multiplicity_Elements.UML_Multiplicity_Element_Access)
589       return Boolean is
590   begin
591      --  Generated stub: replace with real body!
592      pragma Compile_Time_Warning (Standard.True, "Includes_Multiplicity unimplemented");
593      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Includes_Multiplicity";
594      return Includes_Multiplicity (Self, M);
595   end Includes_Multiplicity;
596
597   ---------
598   -- Iss --
599   ---------
600
601   overriding function Iss
602    (Self : not null access constant UML_Parameter_Proxy;
603     Lowerbound : Integer;
604     Upperbound : Integer)
605       return Boolean is
606   begin
607      --  Generated stub: replace with real body!
608      pragma Compile_Time_Warning (Standard.True, "Iss unimplemented");
609      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Iss";
610      return Iss (Self, Lowerbound, Upperbound);
611   end Iss;
612
613   ----------
614   -- Ends --
615   ----------
616
617   overriding function Ends
618    (Self : not null access constant UML_Parameter_Proxy)
619       return AMF.UML.Connector_Ends.Collections.Set_Of_UML_Connector_End is
620   begin
621      --  Generated stub: replace with real body!
622      pragma Compile_Time_Warning (Standard.True, "Ends unimplemented");
623      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Ends";
624      return Ends (Self);
625   end Ends;
626
627   -------------------------
628   -- All_Owning_Packages --
629   -------------------------
630
631   overriding function All_Owning_Packages
632    (Self : not null access constant UML_Parameter_Proxy)
633       return AMF.UML.Packages.Collections.Set_Of_UML_Package is
634   begin
635      --  Generated stub: replace with real body!
636      pragma Compile_Time_Warning (Standard.True, "All_Owning_Packages unimplemented");
637      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.All_Owning_Packages";
638      return All_Owning_Packages (Self);
639   end All_Owning_Packages;
640
641   -----------------------------
642   -- Is_Distinguishable_From --
643   -----------------------------
644
645   overriding function Is_Distinguishable_From
646    (Self : not null access constant UML_Parameter_Proxy;
647     N : AMF.UML.Named_Elements.UML_Named_Element_Access;
648     Ns : AMF.UML.Namespaces.UML_Namespace_Access)
649       return Boolean is
650   begin
651      --  Generated stub: replace with real body!
652      pragma Compile_Time_Warning (Standard.True, "Is_Distinguishable_From unimplemented");
653      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Is_Distinguishable_From";
654      return Is_Distinguishable_From (Self, N, Ns);
655   end Is_Distinguishable_From;
656
657   ---------------
658   -- Namespace --
659   ---------------
660
661   overriding function Namespace
662    (Self : not null access constant UML_Parameter_Proxy)
663       return AMF.UML.Namespaces.UML_Namespace_Access is
664   begin
665      --  Generated stub: replace with real body!
666      pragma Compile_Time_Warning (Standard.True, "Namespace unimplemented");
667      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Namespace";
668      return Namespace (Self);
669   end Namespace;
670
671   ------------------------
672   -- Is_Compatible_With --
673   ------------------------
674
675   overriding function Is_Compatible_With
676    (Self : not null access constant UML_Parameter_Proxy;
677     P : AMF.UML.Parameterable_Elements.UML_Parameterable_Element_Access)
678       return Boolean is
679   begin
680      --  Generated stub: replace with real body!
681      pragma Compile_Time_Warning (Standard.True, "Is_Compatible_With unimplemented");
682      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Is_Compatible_With";
683      return Is_Compatible_With (Self, P);
684   end Is_Compatible_With;
685
686   ---------------------------
687   -- Is_Template_Parameter --
688   ---------------------------
689
690   overriding function Is_Template_Parameter
691    (Self : not null access constant UML_Parameter_Proxy)
692       return Boolean is
693   begin
694      --  Generated stub: replace with real body!
695      pragma Compile_Time_Warning (Standard.True, "Is_Template_Parameter unimplemented");
696      raise Program_Error with "Unimplemented procedure UML_Parameter_Proxy.Is_Template_Parameter";
697      return Is_Template_Parameter (Self);
698   end Is_Template_Parameter;
699
700end AMF.Internals.UML_Parameters;
701