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: 2911 $ $Date: 2012-04-26 11:20:01 +0400 (Thu, 26 Apr 2012) $ 43------------------------------------------------------------------------------ 44-- Containment iterator for elements of UML metamodel. It should be used with 45-- metamodel independent containment iterator (and others metamodel specific 46-- containment iterators when necessary) to construct concrete usabe iterator. 47------------------------------------------------------------------------------ 48with AMF.UML.Abstractions; 49with AMF.UML.Accept_Call_Actions; 50with AMF.UML.Accept_Event_Actions; 51with AMF.UML.Action_Execution_Specifications; 52with AMF.UML.Action_Input_Pins; 53with AMF.UML.Activities; 54with AMF.UML.Activity_Final_Nodes; 55with AMF.UML.Activity_Parameter_Nodes; 56with AMF.UML.Activity_Partitions; 57with AMF.UML.Actors; 58with AMF.UML.Add_Structural_Feature_Value_Actions; 59with AMF.UML.Add_Variable_Value_Actions; 60with AMF.UML.Any_Receive_Events; 61with AMF.UML.Artifacts; 62with AMF.UML.Associations; 63with AMF.UML.Association_Classes; 64with AMF.UML.Behavior_Execution_Specifications; 65with AMF.UML.Broadcast_Signal_Actions; 66with AMF.UML.Call_Behavior_Actions; 67with AMF.UML.Call_Events; 68with AMF.UML.Call_Operation_Actions; 69with AMF.UML.Central_Buffer_Nodes; 70with AMF.UML.Change_Events; 71with AMF.UML.Classes; 72with AMF.UML.Classifier_Template_Parameters; 73with AMF.UML.Clauses; 74with AMF.UML.Clear_Association_Actions; 75with AMF.UML.Clear_Structural_Feature_Actions; 76with AMF.UML.Clear_Variable_Actions; 77with AMF.UML.Collaborations; 78with AMF.UML.Collaboration_Uses; 79with AMF.UML.Combined_Fragments; 80with AMF.UML.Comments; 81with AMF.UML.Communication_Paths; 82with AMF.UML.Components; 83with AMF.UML.Component_Realizations; 84with AMF.UML.Conditional_Nodes; 85with AMF.UML.Connectable_Element_Template_Parameters; 86with AMF.UML.Connection_Point_References; 87with AMF.UML.Connectors; 88with AMF.UML.Connector_Ends; 89with AMF.UML.Consider_Ignore_Fragments; 90with AMF.UML.Constraints; 91with AMF.UML.Continuations; 92with AMF.UML.Control_Flows; 93with AMF.UML.Create_Link_Actions; 94with AMF.UML.Create_Link_Object_Actions; 95with AMF.UML.Create_Object_Actions; 96with AMF.UML.Data_Store_Nodes; 97with AMF.UML.Data_Types; 98with AMF.UML.Decision_Nodes; 99with AMF.UML.Dependencies; 100with AMF.UML.Deployments; 101with AMF.UML.Deployment_Specifications; 102with AMF.UML.Destroy_Link_Actions; 103with AMF.UML.Destroy_Object_Actions; 104with AMF.UML.Destruction_Occurrence_Specifications; 105with AMF.UML.Devices; 106with AMF.UML.Durations; 107with AMF.UML.Duration_Constraints; 108with AMF.UML.Duration_Intervals; 109with AMF.UML.Duration_Observations; 110with AMF.UML.Element_Imports; 111with AMF.UML.Enumerations; 112with AMF.UML.Enumeration_Literals; 113with AMF.UML.Exception_Handlers; 114with AMF.UML.Execution_Environments; 115with AMF.UML.Execution_Occurrence_Specifications; 116with AMF.UML.Expansion_Nodes; 117with AMF.UML.Expansion_Regions; 118with AMF.UML.Expressions; 119with AMF.UML.Extends; 120with AMF.UML.Extensions; 121with AMF.UML.Extension_Ends; 122with AMF.UML.Extension_Points; 123with AMF.UML.Final_States; 124with AMF.UML.Flow_Final_Nodes; 125with AMF.UML.Fork_Nodes; 126with AMF.UML.Function_Behaviors; 127with AMF.UML.Gates; 128with AMF.UML.General_Orderings; 129with AMF.UML.Generalizations; 130with AMF.UML.Generalization_Sets; 131with AMF.UML.Images; 132with AMF.UML.Includes; 133with AMF.UML.Information_Flows; 134with AMF.UML.Information_Items; 135with AMF.UML.Initial_Nodes; 136with AMF.UML.Input_Pins; 137with AMF.UML.Instance_Specifications; 138with AMF.UML.Instance_Values; 139with AMF.UML.Interactions; 140with AMF.UML.Interaction_Constraints; 141with AMF.UML.Interaction_Operands; 142with AMF.UML.Interaction_Uses; 143with AMF.UML.Interfaces; 144with AMF.UML.Interface_Realizations; 145with AMF.UML.Interruptible_Activity_Regions; 146with AMF.UML.Intervals; 147with AMF.UML.Interval_Constraints; 148with AMF.UML.Join_Nodes; 149with AMF.UML.Lifelines; 150with AMF.UML.Link_End_Creation_Datas; 151with AMF.UML.Link_End_Datas; 152with AMF.UML.Link_End_Destruction_Datas; 153with AMF.UML.Literal_Booleans; 154with AMF.UML.Literal_Integers; 155with AMF.UML.Literal_Nulls; 156with AMF.UML.Literal_Reals; 157with AMF.UML.Literal_Strings; 158with AMF.UML.Literal_Unlimited_Naturals; 159with AMF.UML.Loop_Nodes; 160with AMF.UML.Manifestations; 161with AMF.UML.Merge_Nodes; 162with AMF.UML.Messages; 163with AMF.UML.Message_Occurrence_Specifications; 164with AMF.UML.Models; 165with AMF.UML.Nodes; 166with AMF.UML.Object_Flows; 167with AMF.UML.Occurrence_Specifications; 168with AMF.UML.Opaque_Actions; 169with AMF.UML.Opaque_Behaviors; 170with AMF.UML.Opaque_Expressions; 171with AMF.UML.Operations; 172with AMF.UML.Operation_Template_Parameters; 173with AMF.UML.Output_Pins; 174with AMF.UML.Packages; 175with AMF.UML.Package_Imports; 176with AMF.UML.Package_Merges; 177with AMF.UML.Parameters; 178with AMF.UML.Parameter_Sets; 179with AMF.UML.Part_Decompositions; 180with AMF.UML.Ports; 181with AMF.UML.Primitive_Types; 182with AMF.UML.Profiles; 183with AMF.UML.Profile_Applications; 184with AMF.UML.Properties; 185with AMF.UML.Protocol_Conformances; 186with AMF.UML.Protocol_State_Machines; 187with AMF.UML.Protocol_Transitions; 188with AMF.UML.Pseudostates; 189with AMF.UML.Qualifier_Values; 190with AMF.UML.Raise_Exception_Actions; 191with AMF.UML.Read_Extent_Actions; 192with AMF.UML.Read_Is_Classified_Object_Actions; 193with AMF.UML.Read_Link_Actions; 194with AMF.UML.Read_Link_Object_End_Actions; 195with AMF.UML.Read_Link_Object_End_Qualifier_Actions; 196with AMF.UML.Read_Self_Actions; 197with AMF.UML.Read_Structural_Feature_Actions; 198with AMF.UML.Read_Variable_Actions; 199with AMF.UML.Realizations; 200with AMF.UML.Receptions; 201with AMF.UML.Reclassify_Object_Actions; 202with AMF.UML.Redefinable_Template_Signatures; 203with AMF.UML.Reduce_Actions; 204with AMF.UML.Regions; 205with AMF.UML.Remove_Structural_Feature_Value_Actions; 206with AMF.UML.Remove_Variable_Value_Actions; 207with AMF.UML.Reply_Actions; 208with AMF.UML.Send_Object_Actions; 209with AMF.UML.Send_Signal_Actions; 210with AMF.UML.Sequence_Nodes; 211with AMF.UML.Signals; 212with AMF.UML.Signal_Events; 213with AMF.UML.Slots; 214with AMF.UML.Start_Classifier_Behavior_Actions; 215with AMF.UML.Start_Object_Behavior_Actions; 216with AMF.UML.States; 217with AMF.UML.State_Invariants; 218with AMF.UML.State_Machines; 219with AMF.UML.Stereotypes; 220with AMF.UML.String_Expressions; 221with AMF.UML.Structured_Activity_Nodes; 222with AMF.UML.Substitutions; 223with AMF.UML.Template_Bindings; 224with AMF.UML.Template_Parameters; 225with AMF.UML.Template_Parameter_Substitutions; 226with AMF.UML.Template_Signatures; 227with AMF.UML.Test_Identity_Actions; 228with AMF.UML.Time_Constraints; 229with AMF.UML.Time_Events; 230with AMF.UML.Time_Expressions; 231with AMF.UML.Time_Intervals; 232with AMF.UML.Time_Observations; 233with AMF.UML.Transitions; 234with AMF.UML.Triggers; 235with AMF.UML.Unmarshall_Actions; 236with AMF.UML.Usages; 237with AMF.UML.Use_Cases; 238with AMF.UML.Value_Pins; 239with AMF.UML.Value_Specification_Actions; 240with AMF.UML.Variables; 241with AMF.Visitors.UML_Iterators; 242 243generic 244 type Base_Iterator is abstract tagged limited private; 245 246package AMF.Visitors.Generic_UML_Containment is 247 248 type UML_Containment_Iterator is 249 limited new Base_Iterator 250 and AMF.Visitors.UML_Iterators.UML_Iterator 251 with private; 252 253 overriding procedure Visit_Abstraction 254 (Self : in out UML_Containment_Iterator; 255 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 256 Element : not null AMF.UML.Abstractions.UML_Abstraction_Access; 257 Control : in out Traverse_Control); 258 259 overriding procedure Visit_Accept_Call_Action 260 (Self : in out UML_Containment_Iterator; 261 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 262 Element : not null AMF.UML.Accept_Call_Actions.UML_Accept_Call_Action_Access; 263 Control : in out Traverse_Control); 264 265 overriding procedure Visit_Accept_Event_Action 266 (Self : in out UML_Containment_Iterator; 267 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 268 Element : not null AMF.UML.Accept_Event_Actions.UML_Accept_Event_Action_Access; 269 Control : in out Traverse_Control); 270 271 overriding procedure Visit_Action_Execution_Specification 272 (Self : in out UML_Containment_Iterator; 273 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 274 Element : not null AMF.UML.Action_Execution_Specifications.UML_Action_Execution_Specification_Access; 275 Control : in out Traverse_Control); 276 277 overriding procedure Visit_Action_Input_Pin 278 (Self : in out UML_Containment_Iterator; 279 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 280 Element : not null AMF.UML.Action_Input_Pins.UML_Action_Input_Pin_Access; 281 Control : in out Traverse_Control); 282 283 overriding procedure Visit_Activity 284 (Self : in out UML_Containment_Iterator; 285 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 286 Element : not null AMF.UML.Activities.UML_Activity_Access; 287 Control : in out Traverse_Control); 288 289 overriding procedure Visit_Activity_Final_Node 290 (Self : in out UML_Containment_Iterator; 291 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 292 Element : not null AMF.UML.Activity_Final_Nodes.UML_Activity_Final_Node_Access; 293 Control : in out Traverse_Control); 294 295 overriding procedure Visit_Activity_Parameter_Node 296 (Self : in out UML_Containment_Iterator; 297 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 298 Element : not null AMF.UML.Activity_Parameter_Nodes.UML_Activity_Parameter_Node_Access; 299 Control : in out Traverse_Control); 300 301 overriding procedure Visit_Activity_Partition 302 (Self : in out UML_Containment_Iterator; 303 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 304 Element : not null AMF.UML.Activity_Partitions.UML_Activity_Partition_Access; 305 Control : in out Traverse_Control); 306 307 overriding procedure Visit_Actor 308 (Self : in out UML_Containment_Iterator; 309 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 310 Element : not null AMF.UML.Actors.UML_Actor_Access; 311 Control : in out Traverse_Control); 312 313 overriding procedure Visit_Add_Structural_Feature_Value_Action 314 (Self : in out UML_Containment_Iterator; 315 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 316 Element : not null AMF.UML.Add_Structural_Feature_Value_Actions.UML_Add_Structural_Feature_Value_Action_Access; 317 Control : in out Traverse_Control); 318 319 overriding procedure Visit_Add_Variable_Value_Action 320 (Self : in out UML_Containment_Iterator; 321 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 322 Element : not null AMF.UML.Add_Variable_Value_Actions.UML_Add_Variable_Value_Action_Access; 323 Control : in out Traverse_Control); 324 325 overriding procedure Visit_Any_Receive_Event 326 (Self : in out UML_Containment_Iterator; 327 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 328 Element : not null AMF.UML.Any_Receive_Events.UML_Any_Receive_Event_Access; 329 Control : in out Traverse_Control); 330 331 overriding procedure Visit_Artifact 332 (Self : in out UML_Containment_Iterator; 333 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 334 Element : not null AMF.UML.Artifacts.UML_Artifact_Access; 335 Control : in out Traverse_Control); 336 337 overriding procedure Visit_Association 338 (Self : in out UML_Containment_Iterator; 339 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 340 Element : not null AMF.UML.Associations.UML_Association_Access; 341 Control : in out Traverse_Control); 342 343 overriding procedure Visit_Association_Class 344 (Self : in out UML_Containment_Iterator; 345 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 346 Element : not null AMF.UML.Association_Classes.UML_Association_Class_Access; 347 Control : in out Traverse_Control); 348 349 overriding procedure Visit_Behavior_Execution_Specification 350 (Self : in out UML_Containment_Iterator; 351 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 352 Element : not null AMF.UML.Behavior_Execution_Specifications.UML_Behavior_Execution_Specification_Access; 353 Control : in out Traverse_Control); 354 355 overriding procedure Visit_Broadcast_Signal_Action 356 (Self : in out UML_Containment_Iterator; 357 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 358 Element : not null AMF.UML.Broadcast_Signal_Actions.UML_Broadcast_Signal_Action_Access; 359 Control : in out Traverse_Control); 360 361 overriding procedure Visit_Call_Behavior_Action 362 (Self : in out UML_Containment_Iterator; 363 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 364 Element : not null AMF.UML.Call_Behavior_Actions.UML_Call_Behavior_Action_Access; 365 Control : in out Traverse_Control); 366 367 overriding procedure Visit_Call_Event 368 (Self : in out UML_Containment_Iterator; 369 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 370 Element : not null AMF.UML.Call_Events.UML_Call_Event_Access; 371 Control : in out Traverse_Control); 372 373 overriding procedure Visit_Call_Operation_Action 374 (Self : in out UML_Containment_Iterator; 375 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 376 Element : not null AMF.UML.Call_Operation_Actions.UML_Call_Operation_Action_Access; 377 Control : in out Traverse_Control); 378 379 overriding procedure Visit_Central_Buffer_Node 380 (Self : in out UML_Containment_Iterator; 381 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 382 Element : not null AMF.UML.Central_Buffer_Nodes.UML_Central_Buffer_Node_Access; 383 Control : in out Traverse_Control); 384 385 overriding procedure Visit_Change_Event 386 (Self : in out UML_Containment_Iterator; 387 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 388 Element : not null AMF.UML.Change_Events.UML_Change_Event_Access; 389 Control : in out Traverse_Control); 390 391 overriding procedure Visit_Class 392 (Self : in out UML_Containment_Iterator; 393 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 394 Element : not null AMF.UML.Classes.UML_Class_Access; 395 Control : in out Traverse_Control); 396 397 overriding procedure Visit_Classifier_Template_Parameter 398 (Self : in out UML_Containment_Iterator; 399 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 400 Element : not null AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access; 401 Control : in out Traverse_Control); 402 403 overriding procedure Visit_Clause 404 (Self : in out UML_Containment_Iterator; 405 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 406 Element : not null AMF.UML.Clauses.UML_Clause_Access; 407 Control : in out Traverse_Control); 408 409 overriding procedure Visit_Clear_Association_Action 410 (Self : in out UML_Containment_Iterator; 411 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 412 Element : not null AMF.UML.Clear_Association_Actions.UML_Clear_Association_Action_Access; 413 Control : in out Traverse_Control); 414 415 overriding procedure Visit_Clear_Structural_Feature_Action 416 (Self : in out UML_Containment_Iterator; 417 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 418 Element : not null AMF.UML.Clear_Structural_Feature_Actions.UML_Clear_Structural_Feature_Action_Access; 419 Control : in out Traverse_Control); 420 421 overriding procedure Visit_Clear_Variable_Action 422 (Self : in out UML_Containment_Iterator; 423 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 424 Element : not null AMF.UML.Clear_Variable_Actions.UML_Clear_Variable_Action_Access; 425 Control : in out Traverse_Control); 426 427 overriding procedure Visit_Collaboration 428 (Self : in out UML_Containment_Iterator; 429 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 430 Element : not null AMF.UML.Collaborations.UML_Collaboration_Access; 431 Control : in out Traverse_Control); 432 433 overriding procedure Visit_Collaboration_Use 434 (Self : in out UML_Containment_Iterator; 435 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 436 Element : not null AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access; 437 Control : in out Traverse_Control); 438 439 overriding procedure Visit_Combined_Fragment 440 (Self : in out UML_Containment_Iterator; 441 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 442 Element : not null AMF.UML.Combined_Fragments.UML_Combined_Fragment_Access; 443 Control : in out Traverse_Control); 444 445 overriding procedure Visit_Comment 446 (Self : in out UML_Containment_Iterator; 447 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 448 Element : not null AMF.UML.Comments.UML_Comment_Access; 449 Control : in out Traverse_Control); 450 451 overriding procedure Visit_Communication_Path 452 (Self : in out UML_Containment_Iterator; 453 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 454 Element : not null AMF.UML.Communication_Paths.UML_Communication_Path_Access; 455 Control : in out Traverse_Control); 456 457 overriding procedure Visit_Component 458 (Self : in out UML_Containment_Iterator; 459 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 460 Element : not null AMF.UML.Components.UML_Component_Access; 461 Control : in out Traverse_Control); 462 463 overriding procedure Visit_Component_Realization 464 (Self : in out UML_Containment_Iterator; 465 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 466 Element : not null AMF.UML.Component_Realizations.UML_Component_Realization_Access; 467 Control : in out Traverse_Control); 468 469 overriding procedure Visit_Conditional_Node 470 (Self : in out UML_Containment_Iterator; 471 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 472 Element : not null AMF.UML.Conditional_Nodes.UML_Conditional_Node_Access; 473 Control : in out Traverse_Control); 474 475 overriding procedure Visit_Connectable_Element_Template_Parameter 476 (Self : in out UML_Containment_Iterator; 477 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 478 Element : not null AMF.UML.Connectable_Element_Template_Parameters.UML_Connectable_Element_Template_Parameter_Access; 479 Control : in out Traverse_Control); 480 481 overriding procedure Visit_Connection_Point_Reference 482 (Self : in out UML_Containment_Iterator; 483 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 484 Element : not null AMF.UML.Connection_Point_References.UML_Connection_Point_Reference_Access; 485 Control : in out Traverse_Control); 486 487 overriding procedure Visit_Connector 488 (Self : in out UML_Containment_Iterator; 489 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 490 Element : not null AMF.UML.Connectors.UML_Connector_Access; 491 Control : in out Traverse_Control); 492 493 overriding procedure Visit_Connector_End 494 (Self : in out UML_Containment_Iterator; 495 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 496 Element : not null AMF.UML.Connector_Ends.UML_Connector_End_Access; 497 Control : in out Traverse_Control); 498 499 overriding procedure Visit_Consider_Ignore_Fragment 500 (Self : in out UML_Containment_Iterator; 501 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 502 Element : not null AMF.UML.Consider_Ignore_Fragments.UML_Consider_Ignore_Fragment_Access; 503 Control : in out Traverse_Control); 504 505 overriding procedure Visit_Constraint 506 (Self : in out UML_Containment_Iterator; 507 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 508 Element : not null AMF.UML.Constraints.UML_Constraint_Access; 509 Control : in out Traverse_Control); 510 511 overriding procedure Visit_Continuation 512 (Self : in out UML_Containment_Iterator; 513 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 514 Element : not null AMF.UML.Continuations.UML_Continuation_Access; 515 Control : in out Traverse_Control); 516 517 overriding procedure Visit_Control_Flow 518 (Self : in out UML_Containment_Iterator; 519 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 520 Element : not null AMF.UML.Control_Flows.UML_Control_Flow_Access; 521 Control : in out Traverse_Control); 522 523 overriding procedure Visit_Create_Link_Action 524 (Self : in out UML_Containment_Iterator; 525 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 526 Element : not null AMF.UML.Create_Link_Actions.UML_Create_Link_Action_Access; 527 Control : in out Traverse_Control); 528 529 overriding procedure Visit_Create_Link_Object_Action 530 (Self : in out UML_Containment_Iterator; 531 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 532 Element : not null AMF.UML.Create_Link_Object_Actions.UML_Create_Link_Object_Action_Access; 533 Control : in out Traverse_Control); 534 535 overriding procedure Visit_Create_Object_Action 536 (Self : in out UML_Containment_Iterator; 537 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 538 Element : not null AMF.UML.Create_Object_Actions.UML_Create_Object_Action_Access; 539 Control : in out Traverse_Control); 540 541 overriding procedure Visit_Data_Store_Node 542 (Self : in out UML_Containment_Iterator; 543 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 544 Element : not null AMF.UML.Data_Store_Nodes.UML_Data_Store_Node_Access; 545 Control : in out Traverse_Control); 546 547 overriding procedure Visit_Data_Type 548 (Self : in out UML_Containment_Iterator; 549 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 550 Element : not null AMF.UML.Data_Types.UML_Data_Type_Access; 551 Control : in out Traverse_Control); 552 553 overriding procedure Visit_Decision_Node 554 (Self : in out UML_Containment_Iterator; 555 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 556 Element : not null AMF.UML.Decision_Nodes.UML_Decision_Node_Access; 557 Control : in out Traverse_Control); 558 559 overriding procedure Visit_Dependency 560 (Self : in out UML_Containment_Iterator; 561 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 562 Element : not null AMF.UML.Dependencies.UML_Dependency_Access; 563 Control : in out Traverse_Control); 564 565 overriding procedure Visit_Deployment 566 (Self : in out UML_Containment_Iterator; 567 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 568 Element : not null AMF.UML.Deployments.UML_Deployment_Access; 569 Control : in out Traverse_Control); 570 571 overriding procedure Visit_Deployment_Specification 572 (Self : in out UML_Containment_Iterator; 573 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 574 Element : not null AMF.UML.Deployment_Specifications.UML_Deployment_Specification_Access; 575 Control : in out Traverse_Control); 576 577 overriding procedure Visit_Destroy_Link_Action 578 (Self : in out UML_Containment_Iterator; 579 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 580 Element : not null AMF.UML.Destroy_Link_Actions.UML_Destroy_Link_Action_Access; 581 Control : in out Traverse_Control); 582 583 overriding procedure Visit_Destroy_Object_Action 584 (Self : in out UML_Containment_Iterator; 585 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 586 Element : not null AMF.UML.Destroy_Object_Actions.UML_Destroy_Object_Action_Access; 587 Control : in out Traverse_Control); 588 589 overriding procedure Visit_Destruction_Occurrence_Specification 590 (Self : in out UML_Containment_Iterator; 591 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 592 Element : not null AMF.UML.Destruction_Occurrence_Specifications.UML_Destruction_Occurrence_Specification_Access; 593 Control : in out Traverse_Control); 594 595 overriding procedure Visit_Device 596 (Self : in out UML_Containment_Iterator; 597 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 598 Element : not null AMF.UML.Devices.UML_Device_Access; 599 Control : in out Traverse_Control); 600 601 overriding procedure Visit_Duration 602 (Self : in out UML_Containment_Iterator; 603 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 604 Element : not null AMF.UML.Durations.UML_Duration_Access; 605 Control : in out Traverse_Control); 606 607 overriding procedure Visit_Duration_Constraint 608 (Self : in out UML_Containment_Iterator; 609 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 610 Element : not null AMF.UML.Duration_Constraints.UML_Duration_Constraint_Access; 611 Control : in out Traverse_Control); 612 613 overriding procedure Visit_Duration_Interval 614 (Self : in out UML_Containment_Iterator; 615 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 616 Element : not null AMF.UML.Duration_Intervals.UML_Duration_Interval_Access; 617 Control : in out Traverse_Control); 618 619 overriding procedure Visit_Duration_Observation 620 (Self : in out UML_Containment_Iterator; 621 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 622 Element : not null AMF.UML.Duration_Observations.UML_Duration_Observation_Access; 623 Control : in out Traverse_Control); 624 625 overriding procedure Visit_Element_Import 626 (Self : in out UML_Containment_Iterator; 627 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 628 Element : not null AMF.UML.Element_Imports.UML_Element_Import_Access; 629 Control : in out Traverse_Control); 630 631 overriding procedure Visit_Enumeration 632 (Self : in out UML_Containment_Iterator; 633 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 634 Element : not null AMF.UML.Enumerations.UML_Enumeration_Access; 635 Control : in out Traverse_Control); 636 637 overriding procedure Visit_Enumeration_Literal 638 (Self : in out UML_Containment_Iterator; 639 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 640 Element : not null AMF.UML.Enumeration_Literals.UML_Enumeration_Literal_Access; 641 Control : in out Traverse_Control); 642 643 overriding procedure Visit_Exception_Handler 644 (Self : in out UML_Containment_Iterator; 645 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 646 Element : not null AMF.UML.Exception_Handlers.UML_Exception_Handler_Access; 647 Control : in out Traverse_Control); 648 649 overriding procedure Visit_Execution_Environment 650 (Self : in out UML_Containment_Iterator; 651 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 652 Element : not null AMF.UML.Execution_Environments.UML_Execution_Environment_Access; 653 Control : in out Traverse_Control); 654 655 overriding procedure Visit_Execution_Occurrence_Specification 656 (Self : in out UML_Containment_Iterator; 657 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 658 Element : not null AMF.UML.Execution_Occurrence_Specifications.UML_Execution_Occurrence_Specification_Access; 659 Control : in out Traverse_Control); 660 661 overriding procedure Visit_Expansion_Node 662 (Self : in out UML_Containment_Iterator; 663 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 664 Element : not null AMF.UML.Expansion_Nodes.UML_Expansion_Node_Access; 665 Control : in out Traverse_Control); 666 667 overriding procedure Visit_Expansion_Region 668 (Self : in out UML_Containment_Iterator; 669 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 670 Element : not null AMF.UML.Expansion_Regions.UML_Expansion_Region_Access; 671 Control : in out Traverse_Control); 672 673 overriding procedure Visit_Expression 674 (Self : in out UML_Containment_Iterator; 675 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 676 Element : not null AMF.UML.Expressions.UML_Expression_Access; 677 Control : in out Traverse_Control); 678 679 overriding procedure Visit_Extend 680 (Self : in out UML_Containment_Iterator; 681 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 682 Element : not null AMF.UML.Extends.UML_Extend_Access; 683 Control : in out Traverse_Control); 684 685 overriding procedure Visit_Extension 686 (Self : in out UML_Containment_Iterator; 687 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 688 Element : not null AMF.UML.Extensions.UML_Extension_Access; 689 Control : in out Traverse_Control); 690 691 overriding procedure Visit_Extension_End 692 (Self : in out UML_Containment_Iterator; 693 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 694 Element : not null AMF.UML.Extension_Ends.UML_Extension_End_Access; 695 Control : in out Traverse_Control); 696 697 overriding procedure Visit_Extension_Point 698 (Self : in out UML_Containment_Iterator; 699 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 700 Element : not null AMF.UML.Extension_Points.UML_Extension_Point_Access; 701 Control : in out Traverse_Control); 702 703 overriding procedure Visit_Final_State 704 (Self : in out UML_Containment_Iterator; 705 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 706 Element : not null AMF.UML.Final_States.UML_Final_State_Access; 707 Control : in out Traverse_Control); 708 709 overriding procedure Visit_Flow_Final_Node 710 (Self : in out UML_Containment_Iterator; 711 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 712 Element : not null AMF.UML.Flow_Final_Nodes.UML_Flow_Final_Node_Access; 713 Control : in out Traverse_Control); 714 715 overriding procedure Visit_Fork_Node 716 (Self : in out UML_Containment_Iterator; 717 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 718 Element : not null AMF.UML.Fork_Nodes.UML_Fork_Node_Access; 719 Control : in out Traverse_Control); 720 721 overriding procedure Visit_Function_Behavior 722 (Self : in out UML_Containment_Iterator; 723 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 724 Element : not null AMF.UML.Function_Behaviors.UML_Function_Behavior_Access; 725 Control : in out Traverse_Control); 726 727 overriding procedure Visit_Gate 728 (Self : in out UML_Containment_Iterator; 729 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 730 Element : not null AMF.UML.Gates.UML_Gate_Access; 731 Control : in out Traverse_Control); 732 733 overriding procedure Visit_General_Ordering 734 (Self : in out UML_Containment_Iterator; 735 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 736 Element : not null AMF.UML.General_Orderings.UML_General_Ordering_Access; 737 Control : in out Traverse_Control); 738 739 overriding procedure Visit_Generalization 740 (Self : in out UML_Containment_Iterator; 741 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 742 Element : not null AMF.UML.Generalizations.UML_Generalization_Access; 743 Control : in out Traverse_Control); 744 745 overriding procedure Visit_Generalization_Set 746 (Self : in out UML_Containment_Iterator; 747 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 748 Element : not null AMF.UML.Generalization_Sets.UML_Generalization_Set_Access; 749 Control : in out Traverse_Control); 750 751 overriding procedure Visit_Image 752 (Self : in out UML_Containment_Iterator; 753 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 754 Element : not null AMF.UML.Images.UML_Image_Access; 755 Control : in out Traverse_Control); 756 757 overriding procedure Visit_Include 758 (Self : in out UML_Containment_Iterator; 759 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 760 Element : not null AMF.UML.Includes.UML_Include_Access; 761 Control : in out Traverse_Control); 762 763 overriding procedure Visit_Information_Flow 764 (Self : in out UML_Containment_Iterator; 765 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 766 Element : not null AMF.UML.Information_Flows.UML_Information_Flow_Access; 767 Control : in out Traverse_Control); 768 769 overriding procedure Visit_Information_Item 770 (Self : in out UML_Containment_Iterator; 771 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 772 Element : not null AMF.UML.Information_Items.UML_Information_Item_Access; 773 Control : in out Traverse_Control); 774 775 overriding procedure Visit_Initial_Node 776 (Self : in out UML_Containment_Iterator; 777 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 778 Element : not null AMF.UML.Initial_Nodes.UML_Initial_Node_Access; 779 Control : in out Traverse_Control); 780 781 overriding procedure Visit_Input_Pin 782 (Self : in out UML_Containment_Iterator; 783 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 784 Element : not null AMF.UML.Input_Pins.UML_Input_Pin_Access; 785 Control : in out Traverse_Control); 786 787 overriding procedure Visit_Instance_Specification 788 (Self : in out UML_Containment_Iterator; 789 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 790 Element : not null AMF.UML.Instance_Specifications.UML_Instance_Specification_Access; 791 Control : in out Traverse_Control); 792 793 overriding procedure Visit_Instance_Value 794 (Self : in out UML_Containment_Iterator; 795 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 796 Element : not null AMF.UML.Instance_Values.UML_Instance_Value_Access; 797 Control : in out Traverse_Control); 798 799 overriding procedure Visit_Interaction 800 (Self : in out UML_Containment_Iterator; 801 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 802 Element : not null AMF.UML.Interactions.UML_Interaction_Access; 803 Control : in out Traverse_Control); 804 805 overriding procedure Visit_Interaction_Constraint 806 (Self : in out UML_Containment_Iterator; 807 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 808 Element : not null AMF.UML.Interaction_Constraints.UML_Interaction_Constraint_Access; 809 Control : in out Traverse_Control); 810 811 overriding procedure Visit_Interaction_Operand 812 (Self : in out UML_Containment_Iterator; 813 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 814 Element : not null AMF.UML.Interaction_Operands.UML_Interaction_Operand_Access; 815 Control : in out Traverse_Control); 816 817 overriding procedure Visit_Interaction_Use 818 (Self : in out UML_Containment_Iterator; 819 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 820 Element : not null AMF.UML.Interaction_Uses.UML_Interaction_Use_Access; 821 Control : in out Traverse_Control); 822 823 overriding procedure Visit_Interface 824 (Self : in out UML_Containment_Iterator; 825 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 826 Element : not null AMF.UML.Interfaces.UML_Interface_Access; 827 Control : in out Traverse_Control); 828 829 overriding procedure Visit_Interface_Realization 830 (Self : in out UML_Containment_Iterator; 831 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 832 Element : not null AMF.UML.Interface_Realizations.UML_Interface_Realization_Access; 833 Control : in out Traverse_Control); 834 835 overriding procedure Visit_Interruptible_Activity_Region 836 (Self : in out UML_Containment_Iterator; 837 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 838 Element : not null AMF.UML.Interruptible_Activity_Regions.UML_Interruptible_Activity_Region_Access; 839 Control : in out Traverse_Control); 840 841 overriding procedure Visit_Interval 842 (Self : in out UML_Containment_Iterator; 843 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 844 Element : not null AMF.UML.Intervals.UML_Interval_Access; 845 Control : in out Traverse_Control); 846 847 overriding procedure Visit_Interval_Constraint 848 (Self : in out UML_Containment_Iterator; 849 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 850 Element : not null AMF.UML.Interval_Constraints.UML_Interval_Constraint_Access; 851 Control : in out Traverse_Control); 852 853 overriding procedure Visit_Join_Node 854 (Self : in out UML_Containment_Iterator; 855 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 856 Element : not null AMF.UML.Join_Nodes.UML_Join_Node_Access; 857 Control : in out Traverse_Control); 858 859 overriding procedure Visit_Lifeline 860 (Self : in out UML_Containment_Iterator; 861 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 862 Element : not null AMF.UML.Lifelines.UML_Lifeline_Access; 863 Control : in out Traverse_Control); 864 865 overriding procedure Visit_Link_End_Creation_Data 866 (Self : in out UML_Containment_Iterator; 867 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 868 Element : not null AMF.UML.Link_End_Creation_Datas.UML_Link_End_Creation_Data_Access; 869 Control : in out Traverse_Control); 870 871 overriding procedure Visit_Link_End_Data 872 (Self : in out UML_Containment_Iterator; 873 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 874 Element : not null AMF.UML.Link_End_Datas.UML_Link_End_Data_Access; 875 Control : in out Traverse_Control); 876 877 overriding procedure Visit_Link_End_Destruction_Data 878 (Self : in out UML_Containment_Iterator; 879 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 880 Element : not null AMF.UML.Link_End_Destruction_Datas.UML_Link_End_Destruction_Data_Access; 881 Control : in out Traverse_Control); 882 883 overriding procedure Visit_Literal_Boolean 884 (Self : in out UML_Containment_Iterator; 885 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 886 Element : not null AMF.UML.Literal_Booleans.UML_Literal_Boolean_Access; 887 Control : in out Traverse_Control); 888 889 overriding procedure Visit_Literal_Integer 890 (Self : in out UML_Containment_Iterator; 891 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 892 Element : not null AMF.UML.Literal_Integers.UML_Literal_Integer_Access; 893 Control : in out Traverse_Control); 894 895 overriding procedure Visit_Literal_Null 896 (Self : in out UML_Containment_Iterator; 897 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 898 Element : not null AMF.UML.Literal_Nulls.UML_Literal_Null_Access; 899 Control : in out Traverse_Control); 900 901 overriding procedure Visit_Literal_Real 902 (Self : in out UML_Containment_Iterator; 903 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 904 Element : not null AMF.UML.Literal_Reals.UML_Literal_Real_Access; 905 Control : in out Traverse_Control); 906 907 overriding procedure Visit_Literal_String 908 (Self : in out UML_Containment_Iterator; 909 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 910 Element : not null AMF.UML.Literal_Strings.UML_Literal_String_Access; 911 Control : in out Traverse_Control); 912 913 overriding procedure Visit_Literal_Unlimited_Natural 914 (Self : in out UML_Containment_Iterator; 915 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 916 Element : not null AMF.UML.Literal_Unlimited_Naturals.UML_Literal_Unlimited_Natural_Access; 917 Control : in out Traverse_Control); 918 919 overriding procedure Visit_Loop_Node 920 (Self : in out UML_Containment_Iterator; 921 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 922 Element : not null AMF.UML.Loop_Nodes.UML_Loop_Node_Access; 923 Control : in out Traverse_Control); 924 925 overriding procedure Visit_Manifestation 926 (Self : in out UML_Containment_Iterator; 927 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 928 Element : not null AMF.UML.Manifestations.UML_Manifestation_Access; 929 Control : in out Traverse_Control); 930 931 overriding procedure Visit_Merge_Node 932 (Self : in out UML_Containment_Iterator; 933 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 934 Element : not null AMF.UML.Merge_Nodes.UML_Merge_Node_Access; 935 Control : in out Traverse_Control); 936 937 overriding procedure Visit_Message 938 (Self : in out UML_Containment_Iterator; 939 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 940 Element : not null AMF.UML.Messages.UML_Message_Access; 941 Control : in out Traverse_Control); 942 943 overriding procedure Visit_Message_Occurrence_Specification 944 (Self : in out UML_Containment_Iterator; 945 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 946 Element : not null AMF.UML.Message_Occurrence_Specifications.UML_Message_Occurrence_Specification_Access; 947 Control : in out Traverse_Control); 948 949 overriding procedure Visit_Model 950 (Self : in out UML_Containment_Iterator; 951 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 952 Element : not null AMF.UML.Models.UML_Model_Access; 953 Control : in out Traverse_Control); 954 955 overriding procedure Visit_Node 956 (Self : in out UML_Containment_Iterator; 957 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 958 Element : not null AMF.UML.Nodes.UML_Node_Access; 959 Control : in out Traverse_Control); 960 961 overriding procedure Visit_Object_Flow 962 (Self : in out UML_Containment_Iterator; 963 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 964 Element : not null AMF.UML.Object_Flows.UML_Object_Flow_Access; 965 Control : in out Traverse_Control); 966 967 overriding procedure Visit_Occurrence_Specification 968 (Self : in out UML_Containment_Iterator; 969 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 970 Element : not null AMF.UML.Occurrence_Specifications.UML_Occurrence_Specification_Access; 971 Control : in out Traverse_Control); 972 973 overriding procedure Visit_Opaque_Action 974 (Self : in out UML_Containment_Iterator; 975 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 976 Element : not null AMF.UML.Opaque_Actions.UML_Opaque_Action_Access; 977 Control : in out Traverse_Control); 978 979 overriding procedure Visit_Opaque_Behavior 980 (Self : in out UML_Containment_Iterator; 981 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 982 Element : not null AMF.UML.Opaque_Behaviors.UML_Opaque_Behavior_Access; 983 Control : in out Traverse_Control); 984 985 overriding procedure Visit_Opaque_Expression 986 (Self : in out UML_Containment_Iterator; 987 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 988 Element : not null AMF.UML.Opaque_Expressions.UML_Opaque_Expression_Access; 989 Control : in out Traverse_Control); 990 991 overriding procedure Visit_Operation 992 (Self : in out UML_Containment_Iterator; 993 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 994 Element : not null AMF.UML.Operations.UML_Operation_Access; 995 Control : in out Traverse_Control); 996 997 overriding procedure Visit_Operation_Template_Parameter 998 (Self : in out UML_Containment_Iterator; 999 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1000 Element : not null AMF.UML.Operation_Template_Parameters.UML_Operation_Template_Parameter_Access; 1001 Control : in out Traverse_Control); 1002 1003 overriding procedure Visit_Output_Pin 1004 (Self : in out UML_Containment_Iterator; 1005 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1006 Element : not null AMF.UML.Output_Pins.UML_Output_Pin_Access; 1007 Control : in out Traverse_Control); 1008 1009 overriding procedure Visit_Package 1010 (Self : in out UML_Containment_Iterator; 1011 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1012 Element : not null AMF.UML.Packages.UML_Package_Access; 1013 Control : in out Traverse_Control); 1014 1015 overriding procedure Visit_Package_Import 1016 (Self : in out UML_Containment_Iterator; 1017 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1018 Element : not null AMF.UML.Package_Imports.UML_Package_Import_Access; 1019 Control : in out Traverse_Control); 1020 1021 overriding procedure Visit_Package_Merge 1022 (Self : in out UML_Containment_Iterator; 1023 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1024 Element : not null AMF.UML.Package_Merges.UML_Package_Merge_Access; 1025 Control : in out Traverse_Control); 1026 1027 overriding procedure Visit_Parameter 1028 (Self : in out UML_Containment_Iterator; 1029 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1030 Element : not null AMF.UML.Parameters.UML_Parameter_Access; 1031 Control : in out Traverse_Control); 1032 1033 overriding procedure Visit_Parameter_Set 1034 (Self : in out UML_Containment_Iterator; 1035 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1036 Element : not null AMF.UML.Parameter_Sets.UML_Parameter_Set_Access; 1037 Control : in out Traverse_Control); 1038 1039 overriding procedure Visit_Part_Decomposition 1040 (Self : in out UML_Containment_Iterator; 1041 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1042 Element : not null AMF.UML.Part_Decompositions.UML_Part_Decomposition_Access; 1043 Control : in out Traverse_Control); 1044 1045 overriding procedure Visit_Port 1046 (Self : in out UML_Containment_Iterator; 1047 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1048 Element : not null AMF.UML.Ports.UML_Port_Access; 1049 Control : in out Traverse_Control); 1050 1051 overriding procedure Visit_Primitive_Type 1052 (Self : in out UML_Containment_Iterator; 1053 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1054 Element : not null AMF.UML.Primitive_Types.UML_Primitive_Type_Access; 1055 Control : in out Traverse_Control); 1056 1057 overriding procedure Visit_Profile 1058 (Self : in out UML_Containment_Iterator; 1059 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1060 Element : not null AMF.UML.Profiles.UML_Profile_Access; 1061 Control : in out Traverse_Control); 1062 1063 overriding procedure Visit_Profile_Application 1064 (Self : in out UML_Containment_Iterator; 1065 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1066 Element : not null AMF.UML.Profile_Applications.UML_Profile_Application_Access; 1067 Control : in out Traverse_Control); 1068 1069 overriding procedure Visit_Property 1070 (Self : in out UML_Containment_Iterator; 1071 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1072 Element : not null AMF.UML.Properties.UML_Property_Access; 1073 Control : in out Traverse_Control); 1074 1075 overriding procedure Visit_Protocol_Conformance 1076 (Self : in out UML_Containment_Iterator; 1077 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1078 Element : not null AMF.UML.Protocol_Conformances.UML_Protocol_Conformance_Access; 1079 Control : in out Traverse_Control); 1080 1081 overriding procedure Visit_Protocol_State_Machine 1082 (Self : in out UML_Containment_Iterator; 1083 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1084 Element : not null AMF.UML.Protocol_State_Machines.UML_Protocol_State_Machine_Access; 1085 Control : in out Traverse_Control); 1086 1087 overriding procedure Visit_Protocol_Transition 1088 (Self : in out UML_Containment_Iterator; 1089 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1090 Element : not null AMF.UML.Protocol_Transitions.UML_Protocol_Transition_Access; 1091 Control : in out Traverse_Control); 1092 1093 overriding procedure Visit_Pseudostate 1094 (Self : in out UML_Containment_Iterator; 1095 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1096 Element : not null AMF.UML.Pseudostates.UML_Pseudostate_Access; 1097 Control : in out Traverse_Control); 1098 1099 overriding procedure Visit_Qualifier_Value 1100 (Self : in out UML_Containment_Iterator; 1101 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1102 Element : not null AMF.UML.Qualifier_Values.UML_Qualifier_Value_Access; 1103 Control : in out Traverse_Control); 1104 1105 overriding procedure Visit_Raise_Exception_Action 1106 (Self : in out UML_Containment_Iterator; 1107 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1108 Element : not null AMF.UML.Raise_Exception_Actions.UML_Raise_Exception_Action_Access; 1109 Control : in out Traverse_Control); 1110 1111 overriding procedure Visit_Read_Extent_Action 1112 (Self : in out UML_Containment_Iterator; 1113 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1114 Element : not null AMF.UML.Read_Extent_Actions.UML_Read_Extent_Action_Access; 1115 Control : in out Traverse_Control); 1116 1117 overriding procedure Visit_Read_Is_Classified_Object_Action 1118 (Self : in out UML_Containment_Iterator; 1119 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1120 Element : not null AMF.UML.Read_Is_Classified_Object_Actions.UML_Read_Is_Classified_Object_Action_Access; 1121 Control : in out Traverse_Control); 1122 1123 overriding procedure Visit_Read_Link_Action 1124 (Self : in out UML_Containment_Iterator; 1125 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1126 Element : not null AMF.UML.Read_Link_Actions.UML_Read_Link_Action_Access; 1127 Control : in out Traverse_Control); 1128 1129 overriding procedure Visit_Read_Link_Object_End_Action 1130 (Self : in out UML_Containment_Iterator; 1131 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1132 Element : not null AMF.UML.Read_Link_Object_End_Actions.UML_Read_Link_Object_End_Action_Access; 1133 Control : in out Traverse_Control); 1134 1135 overriding procedure Visit_Read_Link_Object_End_Qualifier_Action 1136 (Self : in out UML_Containment_Iterator; 1137 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1138 Element : not null AMF.UML.Read_Link_Object_End_Qualifier_Actions.UML_Read_Link_Object_End_Qualifier_Action_Access; 1139 Control : in out Traverse_Control); 1140 1141 overriding procedure Visit_Read_Self_Action 1142 (Self : in out UML_Containment_Iterator; 1143 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1144 Element : not null AMF.UML.Read_Self_Actions.UML_Read_Self_Action_Access; 1145 Control : in out Traverse_Control); 1146 1147 overriding procedure Visit_Read_Structural_Feature_Action 1148 (Self : in out UML_Containment_Iterator; 1149 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1150 Element : not null AMF.UML.Read_Structural_Feature_Actions.UML_Read_Structural_Feature_Action_Access; 1151 Control : in out Traverse_Control); 1152 1153 overriding procedure Visit_Read_Variable_Action 1154 (Self : in out UML_Containment_Iterator; 1155 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1156 Element : not null AMF.UML.Read_Variable_Actions.UML_Read_Variable_Action_Access; 1157 Control : in out Traverse_Control); 1158 1159 overriding procedure Visit_Realization 1160 (Self : in out UML_Containment_Iterator; 1161 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1162 Element : not null AMF.UML.Realizations.UML_Realization_Access; 1163 Control : in out Traverse_Control); 1164 1165 overriding procedure Visit_Reception 1166 (Self : in out UML_Containment_Iterator; 1167 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1168 Element : not null AMF.UML.Receptions.UML_Reception_Access; 1169 Control : in out Traverse_Control); 1170 1171 overriding procedure Visit_Reclassify_Object_Action 1172 (Self : in out UML_Containment_Iterator; 1173 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1174 Element : not null AMF.UML.Reclassify_Object_Actions.UML_Reclassify_Object_Action_Access; 1175 Control : in out Traverse_Control); 1176 1177 overriding procedure Visit_Redefinable_Template_Signature 1178 (Self : in out UML_Containment_Iterator; 1179 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1180 Element : not null AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access; 1181 Control : in out Traverse_Control); 1182 1183 overriding procedure Visit_Reduce_Action 1184 (Self : in out UML_Containment_Iterator; 1185 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1186 Element : not null AMF.UML.Reduce_Actions.UML_Reduce_Action_Access; 1187 Control : in out Traverse_Control); 1188 1189 overriding procedure Visit_Region 1190 (Self : in out UML_Containment_Iterator; 1191 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1192 Element : not null AMF.UML.Regions.UML_Region_Access; 1193 Control : in out Traverse_Control); 1194 1195 overriding procedure Visit_Remove_Structural_Feature_Value_Action 1196 (Self : in out UML_Containment_Iterator; 1197 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1198 Element : not null AMF.UML.Remove_Structural_Feature_Value_Actions.UML_Remove_Structural_Feature_Value_Action_Access; 1199 Control : in out Traverse_Control); 1200 1201 overriding procedure Visit_Remove_Variable_Value_Action 1202 (Self : in out UML_Containment_Iterator; 1203 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1204 Element : not null AMF.UML.Remove_Variable_Value_Actions.UML_Remove_Variable_Value_Action_Access; 1205 Control : in out Traverse_Control); 1206 1207 overriding procedure Visit_Reply_Action 1208 (Self : in out UML_Containment_Iterator; 1209 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1210 Element : not null AMF.UML.Reply_Actions.UML_Reply_Action_Access; 1211 Control : in out Traverse_Control); 1212 1213 overriding procedure Visit_Send_Object_Action 1214 (Self : in out UML_Containment_Iterator; 1215 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1216 Element : not null AMF.UML.Send_Object_Actions.UML_Send_Object_Action_Access; 1217 Control : in out Traverse_Control); 1218 1219 overriding procedure Visit_Send_Signal_Action 1220 (Self : in out UML_Containment_Iterator; 1221 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1222 Element : not null AMF.UML.Send_Signal_Actions.UML_Send_Signal_Action_Access; 1223 Control : in out Traverse_Control); 1224 1225 overriding procedure Visit_Sequence_Node 1226 (Self : in out UML_Containment_Iterator; 1227 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1228 Element : not null AMF.UML.Sequence_Nodes.UML_Sequence_Node_Access; 1229 Control : in out Traverse_Control); 1230 1231 overriding procedure Visit_Signal 1232 (Self : in out UML_Containment_Iterator; 1233 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1234 Element : not null AMF.UML.Signals.UML_Signal_Access; 1235 Control : in out Traverse_Control); 1236 1237 overriding procedure Visit_Signal_Event 1238 (Self : in out UML_Containment_Iterator; 1239 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1240 Element : not null AMF.UML.Signal_Events.UML_Signal_Event_Access; 1241 Control : in out Traverse_Control); 1242 1243 overriding procedure Visit_Slot 1244 (Self : in out UML_Containment_Iterator; 1245 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1246 Element : not null AMF.UML.Slots.UML_Slot_Access; 1247 Control : in out Traverse_Control); 1248 1249 overriding procedure Visit_Start_Classifier_Behavior_Action 1250 (Self : in out UML_Containment_Iterator; 1251 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1252 Element : not null AMF.UML.Start_Classifier_Behavior_Actions.UML_Start_Classifier_Behavior_Action_Access; 1253 Control : in out Traverse_Control); 1254 1255 overriding procedure Visit_Start_Object_Behavior_Action 1256 (Self : in out UML_Containment_Iterator; 1257 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1258 Element : not null AMF.UML.Start_Object_Behavior_Actions.UML_Start_Object_Behavior_Action_Access; 1259 Control : in out Traverse_Control); 1260 1261 overriding procedure Visit_State 1262 (Self : in out UML_Containment_Iterator; 1263 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1264 Element : not null AMF.UML.States.UML_State_Access; 1265 Control : in out Traverse_Control); 1266 1267 overriding procedure Visit_State_Invariant 1268 (Self : in out UML_Containment_Iterator; 1269 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1270 Element : not null AMF.UML.State_Invariants.UML_State_Invariant_Access; 1271 Control : in out Traverse_Control); 1272 1273 overriding procedure Visit_State_Machine 1274 (Self : in out UML_Containment_Iterator; 1275 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1276 Element : not null AMF.UML.State_Machines.UML_State_Machine_Access; 1277 Control : in out Traverse_Control); 1278 1279 overriding procedure Visit_Stereotype 1280 (Self : in out UML_Containment_Iterator; 1281 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1282 Element : not null AMF.UML.Stereotypes.UML_Stereotype_Access; 1283 Control : in out Traverse_Control); 1284 1285 overriding procedure Visit_String_Expression 1286 (Self : in out UML_Containment_Iterator; 1287 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1288 Element : not null AMF.UML.String_Expressions.UML_String_Expression_Access; 1289 Control : in out Traverse_Control); 1290 1291 overriding procedure Visit_Structured_Activity_Node 1292 (Self : in out UML_Containment_Iterator; 1293 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1294 Element : not null AMF.UML.Structured_Activity_Nodes.UML_Structured_Activity_Node_Access; 1295 Control : in out Traverse_Control); 1296 1297 overriding procedure Visit_Substitution 1298 (Self : in out UML_Containment_Iterator; 1299 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1300 Element : not null AMF.UML.Substitutions.UML_Substitution_Access; 1301 Control : in out Traverse_Control); 1302 1303 overriding procedure Visit_Template_Binding 1304 (Self : in out UML_Containment_Iterator; 1305 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1306 Element : not null AMF.UML.Template_Bindings.UML_Template_Binding_Access; 1307 Control : in out Traverse_Control); 1308 1309 overriding procedure Visit_Template_Parameter 1310 (Self : in out UML_Containment_Iterator; 1311 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1312 Element : not null AMF.UML.Template_Parameters.UML_Template_Parameter_Access; 1313 Control : in out Traverse_Control); 1314 1315 overriding procedure Visit_Template_Parameter_Substitution 1316 (Self : in out UML_Containment_Iterator; 1317 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1318 Element : not null AMF.UML.Template_Parameter_Substitutions.UML_Template_Parameter_Substitution_Access; 1319 Control : in out Traverse_Control); 1320 1321 overriding procedure Visit_Template_Signature 1322 (Self : in out UML_Containment_Iterator; 1323 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1324 Element : not null AMF.UML.Template_Signatures.UML_Template_Signature_Access; 1325 Control : in out Traverse_Control); 1326 1327 overriding procedure Visit_Test_Identity_Action 1328 (Self : in out UML_Containment_Iterator; 1329 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1330 Element : not null AMF.UML.Test_Identity_Actions.UML_Test_Identity_Action_Access; 1331 Control : in out Traverse_Control); 1332 1333 overriding procedure Visit_Time_Constraint 1334 (Self : in out UML_Containment_Iterator; 1335 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1336 Element : not null AMF.UML.Time_Constraints.UML_Time_Constraint_Access; 1337 Control : in out Traverse_Control); 1338 1339 overriding procedure Visit_Time_Event 1340 (Self : in out UML_Containment_Iterator; 1341 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1342 Element : not null AMF.UML.Time_Events.UML_Time_Event_Access; 1343 Control : in out Traverse_Control); 1344 1345 overriding procedure Visit_Time_Expression 1346 (Self : in out UML_Containment_Iterator; 1347 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1348 Element : not null AMF.UML.Time_Expressions.UML_Time_Expression_Access; 1349 Control : in out Traverse_Control); 1350 1351 overriding procedure Visit_Time_Interval 1352 (Self : in out UML_Containment_Iterator; 1353 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1354 Element : not null AMF.UML.Time_Intervals.UML_Time_Interval_Access; 1355 Control : in out Traverse_Control); 1356 1357 overriding procedure Visit_Time_Observation 1358 (Self : in out UML_Containment_Iterator; 1359 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1360 Element : not null AMF.UML.Time_Observations.UML_Time_Observation_Access; 1361 Control : in out Traverse_Control); 1362 1363 overriding procedure Visit_Transition 1364 (Self : in out UML_Containment_Iterator; 1365 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1366 Element : not null AMF.UML.Transitions.UML_Transition_Access; 1367 Control : in out Traverse_Control); 1368 1369 overriding procedure Visit_Trigger 1370 (Self : in out UML_Containment_Iterator; 1371 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1372 Element : not null AMF.UML.Triggers.UML_Trigger_Access; 1373 Control : in out Traverse_Control); 1374 1375 overriding procedure Visit_Unmarshall_Action 1376 (Self : in out UML_Containment_Iterator; 1377 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1378 Element : not null AMF.UML.Unmarshall_Actions.UML_Unmarshall_Action_Access; 1379 Control : in out Traverse_Control); 1380 1381 overriding procedure Visit_Usage 1382 (Self : in out UML_Containment_Iterator; 1383 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1384 Element : not null AMF.UML.Usages.UML_Usage_Access; 1385 Control : in out Traverse_Control); 1386 1387 overriding procedure Visit_Use_Case 1388 (Self : in out UML_Containment_Iterator; 1389 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1390 Element : not null AMF.UML.Use_Cases.UML_Use_Case_Access; 1391 Control : in out Traverse_Control); 1392 1393 overriding procedure Visit_Value_Pin 1394 (Self : in out UML_Containment_Iterator; 1395 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1396 Element : not null AMF.UML.Value_Pins.UML_Value_Pin_Access; 1397 Control : in out Traverse_Control); 1398 1399 overriding procedure Visit_Value_Specification_Action 1400 (Self : in out UML_Containment_Iterator; 1401 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1402 Element : not null AMF.UML.Value_Specification_Actions.UML_Value_Specification_Action_Access; 1403 Control : in out Traverse_Control); 1404 1405 overriding procedure Visit_Variable 1406 (Self : in out UML_Containment_Iterator; 1407 Visitor : in out AMF.Visitors.Abstract_Visitor'Class; 1408 Element : not null AMF.UML.Variables.UML_Variable_Access; 1409 Control : in out Traverse_Control); 1410 1411private 1412 1413 type UML_Containment_Iterator is 1414 limited new Base_Iterator 1415 and AMF.Visitors.UML_Iterators.UML_Iterator 1416 with null record; 1417 1418end AMF.Visitors.Generic_UML_Containment; 1419