/trunk/matreshka/design/amf2/uml/generated/amf-uml-loop_nodes.ads

http://github.com/landgraf/matreshka · Ada · 159 lines · 45 code · 16 blank · 98 comment · 1 complexity · d727d059ecd88bff5bd4e8fced2ad315 MD5 · raw file

  1. ------------------------------------------------------------------------------
  2. -- --
  3. -- Matreshka Project --
  4. -- --
  5. -- Ada Modeling Framework --
  6. -- --
  7. -- Runtime Library Component --
  8. -- --
  9. ------------------------------------------------------------------------------
  10. -- --
  11. -- Copyright Š 2011, 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$ $Date$
  43. ------------------------------------------------------------------------------
  44. -- This file is generated, don't edit it.
  45. ------------------------------------------------------------------------------
  46. -- A loop node is a structured activity node that represents a loop with
  47. -- setup, test, and body sections.
  48. ------------------------------------------------------------------------------
  49. limited with AMF.UML.Executable_Nodes.Collections;
  50. limited with AMF.UML.Input_Pins.Collections;
  51. limited with AMF.UML.Output_Pins.Collections;
  52. with AMF.UML.Structured_Activity_Nodes;
  53. package AMF.UML.Loop_Nodes is
  54. pragma Preelaborate;
  55. type UML_Loop_Node is limited interface
  56. and AMF.UML.Structured_Activity_Nodes.UML_Structured_Activity_Node;
  57. type UML_Loop_Node_Access is
  58. access all UML_Loop_Node'Class;
  59. for UML_Loop_Node_Access'Storage_Size use 0;
  60. not overriding function Get_Body_Output
  61. (Self : not null access constant UML_Loop_Node)
  62. return AMF.UML.Output_Pins.Collections.Ordered_Set_Of_UML_Output_Pin is abstract;
  63. -- Getter of LoopNode::bodyOutput.
  64. --
  65. -- A list of output pins within the body fragment the values of which are
  66. -- moved to the loop variable pins after completion of execution of the
  67. -- body, before the next iteration of the loop begins or before the loop
  68. -- exits.
  69. not overriding function Get_Body_Part
  70. (Self : not null access constant UML_Loop_Node)
  71. return AMF.UML.Executable_Nodes.Collections.Set_Of_UML_Executable_Node is abstract;
  72. -- Getter of LoopNode::bodyPart.
  73. --
  74. -- The set of nodes and edges that perform the repetitive computations of
  75. -- the loop. The body section is executed as long as the test section
  76. -- produces a true value.
  77. not overriding function Get_Decider
  78. (Self : not null access constant UML_Loop_Node)
  79. return AMF.UML.Output_Pins.UML_Output_Pin_Access is abstract;
  80. -- Getter of LoopNode::decider.
  81. --
  82. -- An output pin within the test fragment the value of which is examined
  83. -- after execution of the test to determine whether to execute the loop
  84. -- body.
  85. not overriding procedure Set_Decider
  86. (Self : not null access UML_Loop_Node;
  87. To : AMF.UML.Output_Pins.UML_Output_Pin_Access) is abstract;
  88. -- Setter of LoopNode::decider.
  89. --
  90. -- An output pin within the test fragment the value of which is examined
  91. -- after execution of the test to determine whether to execute the loop
  92. -- body.
  93. not overriding function Get_Is_Tested_First
  94. (Self : not null access constant UML_Loop_Node)
  95. return Boolean is abstract;
  96. -- Getter of LoopNode::isTestedFirst.
  97. --
  98. -- If true, the test is performed before the first execution of the body.
  99. -- If false, the body is executed once before the test is performed.
  100. not overriding procedure Set_Is_Tested_First
  101. (Self : not null access UML_Loop_Node;
  102. To : Boolean) is abstract;
  103. -- Setter of LoopNode::isTestedFirst.
  104. --
  105. -- If true, the test is performed before the first execution of the body.
  106. -- If false, the body is executed once before the test is performed.
  107. not overriding function Get_Loop_Variable
  108. (Self : not null access constant UML_Loop_Node)
  109. return AMF.UML.Output_Pins.Collections.Ordered_Set_Of_UML_Output_Pin is abstract;
  110. -- Getter of LoopNode::loopVariable.
  111. --
  112. -- A list of output pins that hold the values of the loop variables during
  113. -- an execution of the loop. When the test fails, the values are movied to
  114. -- the result pins of the loop.
  115. not overriding function Get_Loop_Variable_Input
  116. (Self : not null access constant UML_Loop_Node)
  117. return AMF.UML.Input_Pins.Collections.Ordered_Set_Of_UML_Input_Pin is abstract;
  118. -- Getter of LoopNode::loopVariableInput.
  119. --
  120. -- A list of values that are moved into the loop variable pins before the
  121. -- first iteration of the loop.
  122. not overriding function Get_Result
  123. (Self : not null access constant UML_Loop_Node)
  124. return AMF.UML.Output_Pins.Collections.Ordered_Set_Of_UML_Output_Pin is abstract;
  125. -- Getter of LoopNode::result.
  126. --
  127. -- A list of output pins that constitute the data flow output of the
  128. -- entire loop.
  129. not overriding function Get_Setup_Part
  130. (Self : not null access constant UML_Loop_Node)
  131. return AMF.UML.Executable_Nodes.Collections.Set_Of_UML_Executable_Node is abstract;
  132. -- Getter of LoopNode::setupPart.
  133. --
  134. -- The set of nodes and edges that initialize values or perform other
  135. -- setup computations for the loop.
  136. not overriding function Get_Test
  137. (Self : not null access constant UML_Loop_Node)
  138. return AMF.UML.Executable_Nodes.Collections.Set_Of_UML_Executable_Node is abstract;
  139. -- Getter of LoopNode::test.
  140. --
  141. -- The set of nodes, edges, and designated value that compute a Boolean
  142. -- value to determine if another execution of the body will be performed.
  143. end AMF.UML.Loop_Nodes;