aas-core-codegen 0.0.15__tar.gz → 0.0.17__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (630) hide show
  1. aas_core_codegen-0.0.17/AUTHORS +9 -0
  2. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/LICENSE +3 -1
  3. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/PKG-INFO +24 -30
  4. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/README.rst +5 -17
  5. aas_core_codegen-0.0.17/aas_core_codegen/__init__.py +6 -0
  6. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/__main__.py +1 -1
  7. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/common.py +156 -50
  8. aas_core_codegen-0.0.17/aas_core_codegen/cpp/__init__.py +1 -0
  9. aas_core_codegen-0.0.17/aas_core_codegen/cpp/aas_common/__init__.py +6 -0
  10. aas_core_codegen-0.0.17/aas_core_codegen/cpp/aas_common/_generate.py +713 -0
  11. aas_core_codegen-0.0.17/aas_core_codegen/cpp/common.py +681 -0
  12. aas_core_codegen-0.0.17/aas_core_codegen/cpp/constants/__init__.py +6 -0
  13. aas_core_codegen-0.0.17/aas_core_codegen/cpp/constants/_generate.py +568 -0
  14. aas_core_codegen-0.0.17/aas_core_codegen/cpp/description.py +654 -0
  15. aas_core_codegen-0.0.17/aas_core_codegen/cpp/enhancing/__init__.py +4 -0
  16. aas_core_codegen-0.0.17/aas_core_codegen/cpp/enhancing/_generate.py +993 -0
  17. aas_core_codegen-0.0.17/aas_core_codegen/cpp/iteration/__init__.py +6 -0
  18. aas_core_codegen-0.0.17/aas_core_codegen/cpp/iteration/_generate.py +2332 -0
  19. aas_core_codegen-0.0.17/aas_core_codegen/cpp/jsonization/__init__.py +6 -0
  20. aas_core_codegen-0.0.17/aas_core_codegen/cpp/jsonization/_generate.py +2619 -0
  21. aas_core_codegen-0.0.17/aas_core_codegen/cpp/main.py +694 -0
  22. aas_core_codegen-0.0.17/aas_core_codegen/cpp/naming.py +170 -0
  23. aas_core_codegen-0.0.17/aas_core_codegen/cpp/optionaling.py +557 -0
  24. aas_core_codegen-0.0.17/aas_core_codegen/cpp/pattern/__init__.py +6 -0
  25. aas_core_codegen-0.0.17/aas_core_codegen/cpp/pattern/_generate.py +509 -0
  26. aas_core_codegen-0.0.17/aas_core_codegen/cpp/revm/__init__.py +6 -0
  27. aas_core_codegen-0.0.17/aas_core_codegen/cpp/revm/_generate.py +1149 -0
  28. aas_core_codegen-0.0.17/aas_core_codegen/cpp/stringification/__init__.py +5 -0
  29. aas_core_codegen-0.0.17/aas_core_codegen/cpp/stringification/_generate.py +955 -0
  30. aas_core_codegen-0.0.17/aas_core_codegen/cpp/structure/__init__.py +7 -0
  31. aas_core_codegen-0.0.17/aas_core_codegen/cpp/structure/_generate.py +1503 -0
  32. aas_core_codegen-0.0.17/aas_core_codegen/cpp/transpilation.py +1383 -0
  33. aas_core_codegen-0.0.17/aas_core_codegen/cpp/unrolling.py +159 -0
  34. aas_core_codegen-0.0.17/aas_core_codegen/cpp/verification/__init__.py +6 -0
  35. aas_core_codegen-0.0.17/aas_core_codegen/cpp/verification/_generate.py +3073 -0
  36. aas_core_codegen-0.0.17/aas_core_codegen/cpp/visitation/__init__.py +6 -0
  37. aas_core_codegen-0.0.17/aas_core_codegen/cpp/visitation/_generate.py +521 -0
  38. aas_core_codegen-0.0.17/aas_core_codegen/cpp/wstringification/__init__.py +5 -0
  39. aas_core_codegen-0.0.17/aas_core_codegen/cpp/wstringification/_generate.py +586 -0
  40. aas_core_codegen-0.0.17/aas_core_codegen/cpp/xmlization/__init__.py +6 -0
  41. aas_core_codegen-0.0.17/aas_core_codegen/cpp/xmlization/_generate.py +5373 -0
  42. aas_core_codegen-0.0.17/aas_core_codegen/cpp/yielding.py +201 -0
  43. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/common.py +67 -46
  44. aas_core_codegen-0.0.17/aas_core_codegen/csharp/constants/__init__.py +5 -0
  45. aas_core_codegen-0.0.17/aas_core_codegen/csharp/constants/_generate.py +409 -0
  46. aas_core_codegen-0.0.17/aas_core_codegen/csharp/copying/__init__.py +4 -0
  47. aas_core_codegen-0.0.17/aas_core_codegen/csharp/copying/_generate.py +498 -0
  48. aas_core_codegen-0.0.17/aas_core_codegen/csharp/description.py +1103 -0
  49. aas_core_codegen-0.0.17/aas_core_codegen/csharp/enhancing/__init__.py +4 -0
  50. aas_core_codegen-0.0.17/aas_core_codegen/csharp/enhancing/_generate.py +667 -0
  51. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/jsonization/_generate.py +322 -191
  52. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/main.py +107 -2
  53. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/naming.py +11 -72
  54. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/reporting/_generate.py +31 -15
  55. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/stringification/_generate.py +16 -11
  56. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/structure/_generate.py +402 -275
  57. aas_core_codegen-0.0.17/aas_core_codegen/csharp/transpilation.py +990 -0
  58. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/unrolling.py +59 -49
  59. aas_core_codegen-0.0.17/aas_core_codegen/csharp/verification/_generate.py +1457 -0
  60. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/visitation/_generate.py +185 -192
  61. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/xmlization/_generate.py +848 -483
  62. aas_core_codegen-0.0.17/aas_core_codegen/golang/__init__.py +1 -0
  63. aas_core_codegen-0.0.17/aas_core_codegen/golang/aas_common/__init__.py +4 -0
  64. aas_core_codegen-0.0.17/aas_core_codegen/golang/aas_common/_generate.py +152 -0
  65. aas_core_codegen-0.0.17/aas_core_codegen/golang/common.py +303 -0
  66. aas_core_codegen-0.0.17/aas_core_codegen/golang/constants/__init__.py +5 -0
  67. aas_core_codegen-0.0.17/aas_core_codegen/golang/constants/_generate.py +339 -0
  68. aas_core_codegen-0.0.17/aas_core_codegen/golang/description.py +501 -0
  69. aas_core_codegen-0.0.17/aas_core_codegen/golang/enhancing/__init__.py +4 -0
  70. aas_core_codegen-0.0.17/aas_core_codegen/golang/enhancing/_generate.py +527 -0
  71. aas_core_codegen-0.0.17/aas_core_codegen/golang/jsonization/__init__.py +4 -0
  72. aas_core_codegen-0.0.17/aas_core_codegen/golang/jsonization/_generate.py +1740 -0
  73. aas_core_codegen-0.0.17/aas_core_codegen/golang/main.py +368 -0
  74. aas_core_codegen-0.0.17/aas_core_codegen/golang/naming.py +412 -0
  75. aas_core_codegen-0.0.17/aas_core_codegen/golang/pointering.py +631 -0
  76. aas_core_codegen-0.0.17/aas_core_codegen/golang/reporting/__init__.py +4 -0
  77. aas_core_codegen-0.0.17/aas_core_codegen/golang/reporting/_generate.py +218 -0
  78. aas_core_codegen-0.0.17/aas_core_codegen/golang/stringification/__init__.py +4 -0
  79. aas_core_codegen-0.0.17/aas_core_codegen/golang/stringification/_generate.py +394 -0
  80. aas_core_codegen-0.0.17/aas_core_codegen/golang/structure/__init__.py +6 -0
  81. aas_core_codegen-0.0.17/aas_core_codegen/golang/structure/_generate.py +1493 -0
  82. aas_core_codegen-0.0.17/aas_core_codegen/golang/transpilation.py +1191 -0
  83. aas_core_codegen-0.0.17/aas_core_codegen/golang/unrolling.py +159 -0
  84. aas_core_codegen-0.0.17/aas_core_codegen/golang/verification/__init__.py +6 -0
  85. aas_core_codegen-0.0.17/aas_core_codegen/golang/verification/_generate.py +1513 -0
  86. aas_core_codegen-0.0.17/aas_core_codegen/golang/xmlization/__init__.py +4 -0
  87. aas_core_codegen-0.0.17/aas_core_codegen/golang/xmlization/_generate.py +2507 -0
  88. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/infer_for_schema/__init__.py +3 -0
  89. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/infer_for_schema/_inline.py +221 -56
  90. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/infer_for_schema/_len.py +5 -5
  91. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/infer_for_schema/_pattern.py +15 -15
  92. aas_core_codegen-0.0.17/aas_core_codegen/infer_for_schema/_set.py +394 -0
  93. aas_core_codegen-0.0.17/aas_core_codegen/infer_for_schema/_stringify.py +201 -0
  94. aas_core_codegen-0.0.17/aas_core_codegen/infer_for_schema/_types.py +135 -0
  95. aas-core-codegen-0.0.15/aas_core_codegen/infer_for_schema/_common.py → aas_core_codegen-0.0.17/aas_core_codegen/infer_for_schema/match.py +12 -7
  96. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/intermediate/__init__.py +24 -10
  97. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/intermediate/_hierarchy.py +17 -18
  98. aas_core_codegen-0.0.17/aas_core_codegen/intermediate/_stringify.py +998 -0
  99. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/intermediate/_translate.py +2090 -1077
  100. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/intermediate/_types.py +1536 -405
  101. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/intermediate/construction.py +32 -12
  102. aas-core-codegen-0.0.15/aas_core_codegen/intermediate/rendering.py → aas_core_codegen-0.0.17/aas_core_codegen/intermediate/doc.py +174 -24
  103. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/intermediate/pattern_verification.py +0 -3
  104. aas_core_codegen-0.0.17/aas_core_codegen/intermediate/revm.py +985 -0
  105. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/intermediate/type_inference.py +956 -152
  106. aas_core_codegen-0.0.17/aas_core_codegen/java/__init__.py +1 -0
  107. aas_core_codegen-0.0.17/aas_core_codegen/java/common.py +197 -0
  108. aas_core_codegen-0.0.17/aas_core_codegen/java/constants/__init__.py +5 -0
  109. aas_core_codegen-0.0.17/aas_core_codegen/java/constants/_generate.py +334 -0
  110. aas_core_codegen-0.0.17/aas_core_codegen/java/copying/__init__.py +4 -0
  111. aas_core_codegen-0.0.17/aas_core_codegen/java/copying/_generate.py +502 -0
  112. aas_core_codegen-0.0.17/aas_core_codegen/java/description.py +774 -0
  113. aas_core_codegen-0.0.17/aas_core_codegen/java/enhancing/__init__.py +4 -0
  114. aas_core_codegen-0.0.17/aas_core_codegen/java/enhancing/_generate.py +820 -0
  115. aas_core_codegen-0.0.17/aas_core_codegen/java/generation/__init__.py +5 -0
  116. aas_core_codegen-0.0.17/aas_core_codegen/java/generation/_generate.py +285 -0
  117. aas_core_codegen-0.0.17/aas_core_codegen/java/jsonization/__init__.py +4 -0
  118. aas_core_codegen-0.0.17/aas_core_codegen/java/jsonization/_generate.py +1472 -0
  119. aas_core_codegen-0.0.17/aas_core_codegen/java/main.py +438 -0
  120. aas_core_codegen-0.0.17/aas_core_codegen/java/naming.py +187 -0
  121. aas_core_codegen-0.0.17/aas_core_codegen/java/optional.py +514 -0
  122. aas_core_codegen-0.0.17/aas_core_codegen/java/reporting/__init__.py +4 -0
  123. aas_core_codegen-0.0.17/aas_core_codegen/java/reporting/_generate.py +248 -0
  124. aas_core_codegen-0.0.17/aas_core_codegen/java/stringification/__init__.py +4 -0
  125. aas_core_codegen-0.0.17/aas_core_codegen/java/stringification/_generate.py +212 -0
  126. aas_core_codegen-0.0.17/aas_core_codegen/java/structure/__init__.py +6 -0
  127. aas_core_codegen-0.0.17/aas_core_codegen/java/structure/_generate.py +1767 -0
  128. aas_core_codegen-0.0.17/aas_core_codegen/java/transpilation.py +1111 -0
  129. aas_core_codegen-0.0.17/aas_core_codegen/java/verification/__init__.py +6 -0
  130. aas_core_codegen-0.0.17/aas_core_codegen/java/verification/_generate.py +1536 -0
  131. aas_core_codegen-0.0.17/aas_core_codegen/java/visitation/__init__.py +5 -0
  132. aas_core_codegen-0.0.17/aas_core_codegen/java/visitation/_generate.py +689 -0
  133. aas_core_codegen-0.0.17/aas_core_codegen/java/xmlization/__init__.py +4 -0
  134. aas_core_codegen-0.0.17/aas_core_codegen/java/xmlization/_generate.py +2274 -0
  135. aas_core_codegen-0.0.17/aas_core_codegen/jsonld/__init__.py +1 -0
  136. aas_core_codegen-0.0.17/aas_core_codegen/jsonld/main.py +455 -0
  137. aas_core_codegen-0.0.17/aas_core_codegen/jsonschema/main.py +982 -0
  138. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/main.py +59 -69
  139. aas_core_codegen-0.0.17/aas_core_codegen/naming.py +133 -0
  140. aas_core_codegen-0.0.17/aas_core_codegen/opcua/__init__.py +1 -0
  141. aas_core_codegen-0.0.17/aas_core_codegen/opcua/main.py +1525 -0
  142. aas_core_codegen-0.0.17/aas_core_codegen/opcua/naming.py +126 -0
  143. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/__init__.py +5 -2
  144. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/_rules.py +239 -20
  145. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/_stringify.py +71 -34
  146. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/_translate.py +1819 -479
  147. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/_types.py +243 -112
  148. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/retree/__init__.py +13 -2
  149. aas_core_codegen-0.0.17/aas_core_codegen/parse/retree/_fix.py +434 -0
  150. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/retree/_parse.py +67 -16
  151. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/retree/_render.py +80 -81
  152. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/retree/_types.py +2 -2
  153. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/retree/_visitor.py +1 -1
  154. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/tree.py +514 -117
  155. aas_core_codegen-0.0.17/aas_core_codegen/protobuf/__init__.py +1 -0
  156. aas_core_codegen-0.0.17/aas_core_codegen/protobuf/common.py +225 -0
  157. aas_core_codegen-0.0.17/aas_core_codegen/protobuf/description.py +1102 -0
  158. aas_core_codegen-0.0.17/aas_core_codegen/protobuf/main.py +115 -0
  159. aas_core_codegen-0.0.17/aas_core_codegen/protobuf/naming.py +143 -0
  160. aas_core_codegen-0.0.17/aas_core_codegen/protobuf/structure/__init__.py +6 -0
  161. aas_core_codegen-0.0.17/aas_core_codegen/protobuf/structure/_generate.py +502 -0
  162. aas_core_codegen-0.0.17/aas_core_codegen/python/__init__.py +1 -0
  163. aas_core_codegen-0.0.17/aas_core_codegen/python/aas_common/__init__.py +4 -0
  164. aas_core_codegen-0.0.17/aas_core_codegen/python/aas_common/_generate.py +63 -0
  165. aas_core_codegen-0.0.17/aas_core_codegen/python/common.py +406 -0
  166. aas_core_codegen-0.0.17/aas_core_codegen/python/constants/__init__.py +5 -0
  167. aas_core_codegen-0.0.17/aas_core_codegen/python/constants/_generate.py +377 -0
  168. aas_core_codegen-0.0.17/aas_core_codegen/python/description.py +508 -0
  169. aas_core_codegen-0.0.17/aas_core_codegen/python/jsonization/__init__.py +4 -0
  170. aas_core_codegen-0.0.17/aas_core_codegen/python/jsonization/_generate.py +1391 -0
  171. aas_core_codegen-0.0.17/aas_core_codegen/python/main.py +323 -0
  172. aas_core_codegen-0.0.17/aas_core_codegen/python/naming.py +255 -0
  173. aas_core_codegen-0.0.17/aas_core_codegen/python/stringification/__init__.py +4 -0
  174. aas_core_codegen-0.0.17/aas_core_codegen/python/stringification/_generate.py +129 -0
  175. aas_core_codegen-0.0.17/aas_core_codegen/python/structure/__init__.py +6 -0
  176. aas_core_codegen-0.0.17/aas_core_codegen/python/structure/_generate.py +1801 -0
  177. aas_core_codegen-0.0.17/aas_core_codegen/python/transpilation.py +958 -0
  178. aas_core_codegen-0.0.17/aas_core_codegen/python/unrolling.py +156 -0
  179. aas_core_codegen-0.0.17/aas_core_codegen/python/verification/__init__.py +6 -0
  180. aas_core_codegen-0.0.17/aas_core_codegen/python/verification/_generate.py +1471 -0
  181. aas_core_codegen-0.0.17/aas_core_codegen/python/xmlization/__init__.py +4 -0
  182. aas_core_codegen-0.0.17/aas_core_codegen/python/xmlization/_generate.py +3005 -0
  183. aas_core_codegen-0.0.17/aas_core_codegen/python_protobuf/__init__.py +1 -0
  184. aas_core_codegen-0.0.17/aas_core_codegen/python_protobuf/main.py +1424 -0
  185. aas_core_codegen-0.0.17/aas_core_codegen/python_protobuf/naming.py +85 -0
  186. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/rdf_shacl/_description.py +23 -14
  187. aas_core_codegen-0.0.17/aas_core_codegen/rdf_shacl/common.py +206 -0
  188. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/rdf_shacl/main.py +6 -17
  189. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/rdf_shacl/naming.py +69 -63
  190. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/rdf_shacl/rdf.py +81 -55
  191. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/rdf_shacl/shacl.py +148 -66
  192. aas_core_codegen-0.0.17/aas_core_codegen/run.py +124 -0
  193. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/smoke/main.py +93 -48
  194. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/specific_implementations.py +18 -2
  195. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/stringify.py +4 -4
  196. aas_core_codegen-0.0.17/aas_core_codegen/typescript/__init__.py +1 -0
  197. aas_core_codegen-0.0.17/aas_core_codegen/typescript/aas_common/__init__.py +4 -0
  198. aas_core_codegen-0.0.17/aas_core_codegen/typescript/aas_common/_generate.py +472 -0
  199. aas_core_codegen-0.0.17/aas_core_codegen/typescript/common.py +340 -0
  200. aas_core_codegen-0.0.17/aas_core_codegen/typescript/constants/__init__.py +5 -0
  201. aas_core_codegen-0.0.17/aas_core_codegen/typescript/constants/_generate.py +347 -0
  202. aas_core_codegen-0.0.17/aas_core_codegen/typescript/description.py +530 -0
  203. aas_core_codegen-0.0.17/aas_core_codegen/typescript/jsonization/__init__.py +4 -0
  204. aas_core_codegen-0.0.17/aas_core_codegen/typescript/jsonization/_generate.py +1510 -0
  205. aas_core_codegen-0.0.17/aas_core_codegen/typescript/main.py +258 -0
  206. aas_core_codegen-0.0.17/aas_core_codegen/typescript/naming.py +189 -0
  207. aas_core_codegen-0.0.17/aas_core_codegen/typescript/stringification/__init__.py +4 -0
  208. aas_core_codegen-0.0.17/aas_core_codegen/typescript/stringification/_generate.py +367 -0
  209. aas_core_codegen-0.0.17/aas_core_codegen/typescript/structure/__init__.py +6 -0
  210. aas_core_codegen-0.0.17/aas_core_codegen/typescript/structure/_generate.py +2500 -0
  211. aas_core_codegen-0.0.17/aas_core_codegen/typescript/transpilation.py +1051 -0
  212. aas_core_codegen-0.0.17/aas_core_codegen/typescript/unrolling.py +159 -0
  213. aas_core_codegen-0.0.17/aas_core_codegen/typescript/verification/__init__.py +6 -0
  214. aas_core_codegen-0.0.17/aas_core_codegen/typescript/verification/_generate.py +1578 -0
  215. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/xsd/main.py +313 -98
  216. aas_core_codegen-0.0.17/aas_core_codegen/yielding/__init__.py +1 -0
  217. aas_core_codegen-0.0.17/aas_core_codegen/yielding/flow.py +139 -0
  218. aas_core_codegen-0.0.17/aas_core_codegen/yielding/linear.py +754 -0
  219. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen.egg-info/PKG-INFO +24 -30
  220. aas_core_codegen-0.0.17/aas_core_codegen.egg-info/SOURCES.txt +609 -0
  221. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen.egg-info/entry_points.txt +0 -1
  222. aas_core_codegen-0.0.17/aas_core_codegen.egg-info/requires.txt +6 -0
  223. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen.egg-info/top_level.txt +2 -1
  224. aas_core_codegen-0.0.17/dev/continuous_integration/__init__.py +1 -0
  225. aas_core_codegen-0.0.17/dev/continuous_integration/check_help_in_readme.py +208 -0
  226. aas_core_codegen-0.0.17/dev/continuous_integration/check_init_and_pyproject_consistent.py +154 -0
  227. aas_core_codegen-0.0.17/dev/continuous_integration/precommit.py +400 -0
  228. aas_core_codegen-0.0.17/dev/dev_scripts/__init__.py +1 -0
  229. aas_core_codegen-0.0.17/dev/dev_scripts/compare_rendered_regexes_against_source_py.py +42 -0
  230. aas_core_codegen-0.0.17/dev/dev_scripts/copy_to_aas_core3_cpp.py +100 -0
  231. aas_core_codegen-0.0.17/dev/dev_scripts/copy_to_aas_core3_java.py +90 -0
  232. aas_core_codegen-0.0.17/dev/dev_scripts/download_latest_aas_core_meta_v3.py +114 -0
  233. aas_core_codegen-0.0.17/dev/dev_scripts/draw_bipartite_graph_based_on_lines.py +37 -0
  234. aas_core_codegen-0.0.17/dev/dev_scripts/run_tests_with_rerecord.py +73 -0
  235. aas_core_codegen-0.0.17/dev/dev_scripts/update_to_aas_core_meta.py +174 -0
  236. aas_core_codegen-0.0.17/dev/integration_tests/input/jsonschema/boilerplate/main.py +55 -0
  237. aas_core_codegen-0.0.17/dev/integration_tests/input/meta_model.py +38 -0
  238. aas_core_codegen-0.0.17/dev/integration_tests/input/python/boilerplate/main.py +153 -0
  239. aas_core_codegen-0.0.17/dev/integration_tests/main.py +258 -0
  240. aas_core_codegen-0.0.17/dev/test_data/csharp/test_structure/concrete_class_with_descendants/meta_model.py +15 -0
  241. aas_core_codegen-0.0.17/dev/test_data/csharp/test_structure/constructor_without_arguments/all_properties_optional/meta_model.py +9 -0
  242. aas_core_codegen-0.0.17/dev/test_data/csharp/test_structure/constructor_without_arguments/no_properties/meta_model.py +6 -0
  243. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/builtin_functions/len/on_list/meta_model.py +20 -0
  244. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/builtin_functions/len/on_str/meta_model.py +16 -0
  245. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/as_prefix/meta_model.py +8 -0
  246. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/as_suffix/meta_model.py +8 -0
  247. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/in_group_with_quantifier/meta_model.py +8 -0
  248. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/in_the_middle/meta_model.py +8 -0
  249. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/in_union/meta_model.py +8 -0
  250. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/single_utf32_literal/meta_model.py +8 -0
  251. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/with_quantifier_within_group/meta_model.py +8 -0
  252. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_as_literal/with_quantifier_without_group/meta_model.py +8 -0
  253. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/literal/at_the_beginning/meta_model.py +8 -0
  254. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/literal/at_the_end/meta_model.py +8 -0
  255. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/literal/in_the_middle/meta_model.py +8 -0
  256. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/literal/multiple/meta_model.py +8 -0
  257. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/literal/single/meta_model.py +8 -0
  258. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/literal/single_with_quantifier/meta_model.py +8 -0
  259. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/range/mixed_with_non_utf32/meta_model.py +8 -0
  260. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/range/more_than_two_high_surrogates/meta_model.py +8 -0
  261. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/range/multiple_utf32_ranges/meta_model.py +8 -0
  262. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/range/multiple_utf32_ranges_mixed_with_non_utf32/meta_model.py +8 -0
  263. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/range/same_high_surrogate/meta_model.py +8 -0
  264. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/range/same_high_surrogate_with_quantifier/meta_model.py +8 -0
  265. aas_core_codegen-0.0.17/dev/test_data/csharp/test_verification/pattern_verification/utf32_in_character_set/range/two_high_surrogates/meta_model.py +8 -0
  266. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/class/empty/meta_model.py +6 -0
  267. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/class/implementation_specific_method/meta_model.py +8 -0
  268. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/class/inheritance/meta_model.py +41 -0
  269. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/class/methods_with_contracts/meta_model.py +15 -0
  270. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/class/only_method_no_property/meta_model.py +7 -0
  271. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/class/only_property_no_method/meta_model.py +9 -0
  272. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/constant/constant_set/of_enum/meta_model.py +12 -0
  273. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/constant/constant_set/of_str/meta_model.py +4 -0
  274. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/constant/constant_set/with_description/meta_model.py +6 -0
  275. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/constant/constant_set/with_superset_of/meta_model.py +14 -0
  276. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/constant/constant_str/only_value/meta_model.py +7 -0
  277. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/constant/constant_str/with_description/meta_model.py +5 -0
  278. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/constrained_primitive/inheritance/meta_model.py +17 -0
  279. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/documentation/docstring_with_special_characters_in_literal/meta_model.py +20 -0
  280. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/documentation/docstring_with_special_characters_outside_literal/meta_model.py +20 -0
  281. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/empty/meta_model.py +2 -0
  282. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/enumeration/meta_model.py +9 -0
  283. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/interface/basic/meta_model.py +14 -0
  284. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/interface/empty/meta_model.py +7 -0
  285. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/interface/inheritance/meta_model.py +27 -0
  286. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/interface/method_signature/meta_model.py +10 -0
  287. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/interface/only_constructor/meta_model.py +11 -0
  288. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/method/non_mutating/implementation_specific/meta_model.py +12 -0
  289. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/method/non_mutating/understood/meta_model.py +11 -0
  290. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/type_annotation/atomic/meta_model.py +9 -0
  291. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/type_annotation/subscripted/class/meta_model.py +13 -0
  292. aas_core_codegen-0.0.17/dev/test_data/intermediate/expected/type_annotation/subscripted/primitive/meta_model.py +9 -0
  293. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constant_set/of_enum/enumeration_literals_in_subset_outside_of_superset/meta_model.py +20 -0
  294. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constant_set/of_enum/invalid_literal/meta_model.py +11 -0
  295. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constant_set/of_enum/mismatch_between_enumeration_and_literal/meta_model.py +30 -0
  296. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constant_set/of_enum/mismatch_in_enumerations_between_subset_and_superset/meta_model.py +21 -0
  297. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constant_set/of_str/literals_in_subset_outside_of_superset/meta_model.py +18 -0
  298. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constant_set/of_str/mismatch_between_type_annotation_and_literals/meta_model.py +10 -0
  299. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constant_set/of_str/superset_and_subset_mismatch_in_type/meta_model.py +12 -0
  300. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constraints/dangling_constraintref/meta_model.py +18 -0
  301. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/constraints/duplicate_constraints/meta_model.py +20 -0
  302. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/documentation/unexpected_documentation_elements/meta_model.py +34 -0
  303. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/invariant/class_invariant_uses_re/meta_model.py +10 -0
  304. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/invariant/invariant_of_constrained_primitive_uses_re/meta_model.py +7 -0
  305. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/invariant/unexpected_argument_count_to_len/meta_model.py +20 -0
  306. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/invariant/unhandled_built_in_function/meta_model.py +16 -0
  307. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/method_definitions/non_constant_default/meta_model.py +7 -0
  308. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/optional_constructor_arguments_wo_default/default_non_none/meta_model.py +16 -0
  309. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/optional_constructor_arguments_wo_default/no_default/meta_model.py +16 -0
  310. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/properties_and_constructor_arguments_do_not_match/after_inheritance/meta_model.py +58 -0
  311. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/properties_and_constructor_arguments_do_not_match/type_missmatch/meta_model.py +9 -0
  312. aas_core_codegen-0.0.17/dev/test_data/intermediate/unexpected/properties_and_constructor_arguments_do_not_match/within_class/meta_model.py +22 -0
  313. aas_core_codegen-0.0.17/dev/test_data/jsonschema/test_main/regression_when_len_constraints_on_inherited_property/meta_model.py +28 -0
  314. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/abstract_and_concrete_classes/meta_model.py +37 -0
  315. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/classes_with_invariants/meta_model.py +21 -0
  316. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/concrete_class_with_descendant/meta_model.py +27 -0
  317. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/concrete_class_with_enum/meta_model.py +21 -0
  318. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/concrete_class_with_list_of_instances/meta_model.py +21 -0
  319. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/concrete_class_with_primitive_attributes/meta_model.py +41 -0
  320. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/concrete_class_with_string/meta_model.py +13 -0
  321. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/constrained_primitive/meta_model.py +20 -0
  322. aas_core_codegen-0.0.17/dev/test_data/opcua/test_main/multiple_inheritance/meta_model.py +25 -0
  323. aas_core_codegen-0.0.17/dev/test_data/parse/expected/constant/constant_set/of_enum/meta_model.py +12 -0
  324. aas_core_codegen-0.0.17/dev/test_data/parse/expected/constant/constant_set/of_str/meta_model.py +4 -0
  325. aas_core_codegen-0.0.17/dev/test_data/parse/expected/constant/constant_set/with_description/meta_model.py +6 -0
  326. aas_core_codegen-0.0.17/dev/test_data/parse/expected/constant/constant_set/with_superset_of/meta_model.py +14 -0
  327. aas_core_codegen-0.0.17/dev/test_data/parse/expected/constant/constant_str/only_value/meta_model.py +7 -0
  328. aas_core_codegen-0.0.17/dev/test_data/parse/expected/constant/constant_str/with_description/meta_model.py +5 -0
  329. aas_core_codegen-0.0.17/dev/test_data/parse/expected/enum/ok/meta_model.py +15 -0
  330. aas_core_codegen-0.0.17/dev/test_data/parse/expected/implementation_specific_class/properties_and_methods_in_implementation_specific_class/meta_model.py +17 -0
  331. aas_core_codegen-0.0.17/dev/test_data/parse/expected/inheritance/basic/meta_model.py +11 -0
  332. aas_core_codegen-0.0.17/dev/test_data/parse/expected/inheritance/diamond/meta_model.py +26 -0
  333. aas_core_codegen-0.0.17/dev/test_data/parse/expected/inheritance/inheritance_from_concrete_class/meta_model.py +10 -0
  334. aas_core_codegen-0.0.17/dev/test_data/parse/expected/invariants/in_relation/meta_model.py +16 -0
  335. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/arguments/meta_model.py +7 -0
  336. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/basic/meta_model.py +7 -0
  337. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/condition_as_keyword_argument/meta_model.py +8 -0
  338. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/condition_as_positional_argument/meta_model.py +8 -0
  339. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/description_as_keyword_argument/meta_model.py +8 -0
  340. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/description_as_positional_argument/meta_model.py +8 -0
  341. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/multiple_contracts_in_order/meta_model.py +17 -0
  342. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/postcondition/basic/meta_model.py +10 -0
  343. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/postcondition/snapshot/with_keyword_arguments/meta_model.py +9 -0
  344. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/contracts/postcondition/snapshot/with_positional_arguments/meta_model.py +9 -0
  345. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/default/meta_model.py +9 -0
  346. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/description/meta_model.py +8 -0
  347. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/is_implementation_specific/meta_model.py +8 -0
  348. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/non_mutating/meta_model.py +11 -0
  349. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/returns_none/meta_model.py +7 -0
  350. aas_core_codegen-0.0.17/dev/test_data/parse/expected/method/returns_something/meta_model.py +7 -0
  351. aas_core_codegen-0.0.17/dev/test_data/parse/expected/single_class/description/meta_model.py +12 -0
  352. aas_core_codegen-0.0.17/dev/test_data/parse/expected/single_class/empty/meta_model.py +6 -0
  353. aas_core_codegen-0.0.17/dev/test_data/parse/expected/single_class/property/description/meta_model.py +14 -0
  354. aas_core_codegen-0.0.17/dev/test_data/parse/expected/single_class/property/mandatory/meta_model.py +6 -0
  355. aas_core_codegen-0.0.17/dev/test_data/parse/expected/single_class/property/optional/meta_model.py +6 -0
  356. aas_core_codegen-0.0.17/dev/test_data/parse/expected/single_class/property/recursion_to_entity/meta_model.py +6 -0
  357. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_decorators/non_name_decorator/meta_model.py +7 -0
  358. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_decorators/unknown_decorator/meta_model.py +7 -0
  359. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_definitions/is_abstract_and_implementation_specific/meta_model.py +8 -0
  360. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_definitions/unexpected_docstring_before_a_method/meta_model.py +11 -0
  361. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_definitions/unexpected_docstring_for_a_pass/meta_model.py +9 -0
  362. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_definitions/unexpected_double_description_for_a_property/meta_model.py +10 -0
  363. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_inheritances/inheriting_from_implementation_specific_parent/meta_model.py +20 -0
  364. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/class_inheritances/non_name_super_class/meta_model.py +6 -0
  365. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/enum/expression_as_assignment_value/meta_model.py +6 -0
  366. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/enum/non_assignment/meta_model.py +8 -0
  367. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/enum/non_string_literal/meta_model.py +6 -0
  368. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/enum/unexpected_inheritance/meta_model.py +6 -0
  369. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/contract/non_lambda_condition/meta_model.py +8 -0
  370. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/contract/non_string_literal_description/meta_model.py +8 -0
  371. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/contract/without_any_arguments/meta_model.py +8 -0
  372. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/contract/without_condition/meta_model.py +8 -0
  373. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/postcondition/OLD_in_postcondition_without_snapshot/meta_model.py +8 -0
  374. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/postcondition/argument_missing_in_function/meta_model.py +8 -0
  375. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/precondition/argument_missing_in_function/meta_model.py +8 -0
  376. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/snapshot/argument_missing_in_function/meta_model.py +8 -0
  377. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/snapshot/capture_not_a_lambda/meta_model.py +8 -0
  378. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/snapshot/invalid_name/meta_model.py +8 -0
  379. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/snapshot/name_not_a_string_literal/meta_model.py +8 -0
  380. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/snapshot/without_a_capture/meta_model.py +8 -0
  381. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_contracts/snapshot/without_a_name/meta_model.py +8 -0
  382. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_decorators/non_mutating/non_mutating_constructor/meta_model.py +8 -0
  383. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_decorators/non_mutating/non_mutating_verification_function/meta_model.py +8 -0
  384. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_decorators/non_name_decorator/meta_model.py +8 -0
  385. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_decorators/unknown_call_decorator/meta_model.py +8 -0
  386. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_decorators/unknown_name_decorator/meta_model.py +8 -0
  387. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/argument_with_final/meta_model.py +7 -0
  388. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/argument_without_a_type_annotation/meta_model.py +7 -0
  389. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/default_for_self/meta_model.py +7 -0
  390. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/dunder/meta_model.py +7 -0
  391. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/init_with_return_type/meta_model.py +7 -0
  392. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/with_keyword_only_arguments/meta_model.py +7 -0
  393. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/with_positional_arguments/meta_model.py +7 -0
  394. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/with_type_annotation_for_self/meta_model.py +7 -0
  395. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/with_variable_arguments/meta_model.py +7 -0
  396. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/with_variable_keyword_arguments/meta_model.py +7 -0
  397. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/without_arguments/meta_model.py +7 -0
  398. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/without_self/meta_model.py +7 -0
  399. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/method_definitions/without_type_annotation_for_result/meta_model.py +7 -0
  400. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/property_definitions/final_without_subscript/meta_model.py +6 -0
  401. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/property_definitions/nested_final/meta_model.py +6 -0
  402. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/property_definitions/non_simple/meta_model.py +6 -0
  403. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/property_definitions/unexpected_assignment/meta_model.py +6 -0
  404. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/property_definitions/unexpected_non_name_property/meta_model.py +6 -0
  405. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/property_definitions/without_type_annotation/meta_model.py +6 -0
  406. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/symbol_table/constant_set_with_a_non_set_subset/meta_model.py +6 -0
  407. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/symbol_table/dangling_inheritance/meta_model.py +6 -0
  408. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/symbol_table/dangling_reference_in_type_annotation_of_a_property/meta_model.py +6 -0
  409. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/symbol_table/dangling_reference_in_type_annotation_of_an_argument/meta_model.py +7 -0
  410. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/symbol_table/dangling_reference_in_type_annotation_of_constant_set/meta_model.py +6 -0
  411. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/symbol_table/dangling_subset_in_constant_set/meta_model.py +4 -0
  412. aas_core_codegen-0.0.17/dev/test_data/parse/unexpected/symbol_table/inheritance_from_non_class/meta_model.py +10 -0
  413. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/common_escaping/source.py +1 -0
  414. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/complementing/double_caret/source.py +1 -0
  415. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/complementing/multiple_ranges/source.py +1 -0
  416. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/complementing/suffix_dash/source.py +1 -0
  417. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/escape_first_caret/source.py +1 -0
  418. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/literals_which_need_no_escaping_in_characters_set_but_need_escaping_outside/source.py +1 -0
  419. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/multiple_ranges/source.py +1 -0
  420. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/single_literal/source.py +1 -0
  421. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/single_range/source.py +1 -0
  422. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/unescaped_dash/only_dash/source.py +1 -0
  423. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/unescaped_dash/prefix_dash/source.py +1 -0
  424. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/character_set/unescaped_dash/suffix_dash/source.py +1 -0
  425. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/dot/source.py +1 -0
  426. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/empty/group/source.py +1 -0
  427. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/empty/group_in_a_group/source.py +1 -0
  428. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/empty/group_of_union_of_empty_concatenations/source.py +1 -0
  429. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/empty/regex/source.py +1 -0
  430. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/empty/union_of_empty_concatenations/source.py +1 -0
  431. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/escaped_literals/source.py +1 -0
  432. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/formatted_value/at_the_beginning/source.py +1 -0
  433. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/formatted_value/at_the_end/source.py +1 -0
  434. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/formatted_value/in_the_middle/source.py +1 -0
  435. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/formatted_value/single_formatted_value/source.py +1 -0
  436. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/literal/source.py +1 -0
  437. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/greedy/at_least_3/source.py +1 -0
  438. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/greedy/at_least_one/source.py +1 -0
  439. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/greedy/at_most_3/source.py +1 -0
  440. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/greedy/exactly_3/source.py +1 -0
  441. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/greedy/maybe/source.py +1 -0
  442. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/greedy/zero_or_more/source.py +1 -0
  443. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/non_greedy/at_least_3/source.py +1 -0
  444. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/non_greedy/at_least_one/source.py +1 -0
  445. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/non_greedy/at_most_3/source.py +1 -0
  446. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/non_greedy/exactly_3/source.py +1 -0
  447. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/non_greedy/maybe/source.py +1 -0
  448. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/non_greedy/zero_or_more/source.py +1 -0
  449. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/on_a_character_set/source.py +1 -0
  450. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/on_a_formatted_value/source.py +1 -0
  451. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/on_a_group/source.py +1 -0
  452. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/quantifier/on_a_literal/source.py +1 -0
  453. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/double_end_symbol/source.py +1 -0
  454. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/double_start_symbol/source.py +1 -0
  455. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/end_symbol_in_the_middle/source.py +1 -0
  456. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/only_start_symbol/source.py +1 -0
  457. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/only_stop_symbol/source.py +1 -0
  458. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/start_symbol_at_the_beginning/source.py +1 -0
  459. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/start_symbol_in_the_middle/source.py +1 -0
  460. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/start_and_stop_symbols/stop_symbol_at_the_end/source.py +1 -0
  461. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/union/of_character_sets/source.py +1 -0
  462. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/union/of_groups/source.py +1 -0
  463. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/union/of_string_literals/source.py +1 -0
  464. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/union/within_group/source.py +1 -0
  465. aas_core_codegen-0.0.17/dev/test_data/parse_retree/expected/whitespace/source.py +1 -0
  466. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/Uxxxxxxxx_out_of_range/source.py +1 -0
  467. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/only_backslash/source.py +1 -0
  468. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/short_Uxxxxxxxx/source.py +1 -0
  469. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/short_uxxxx/source.py +1 -0
  470. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/short_x/source.py +1 -0
  471. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/unexpected_escaping/source.py +1 -0
  472. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/unhandled/digit/source.py +1 -0
  473. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/unhandled/not_digit/source.py +1 -0
  474. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/unhandled/not_whitespace/source.py +1 -0
  475. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/unhandled/not_word/source.py +1 -0
  476. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/unhandled/whitespace/source.py +1 -0
  477. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/character_literal/unhandled/word/source.py +1 -0
  478. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/Uxxxxxxxx_out_of_range/source.py +1 -0
  479. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/only_backslash/source.py +1 -0
  480. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/short_Uxxxxxxxx/source.py +1 -0
  481. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/short_uxxxx/source.py +1 -0
  482. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/short_x/source.py +1 -0
  483. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/unexpected_escaping/source.py +1 -0
  484. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/unhandled/digit/source.py +1 -0
  485. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/unhandled/not_digit/source.py +1 -0
  486. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/unhandled/not_whitespace/source.py +1 -0
  487. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/unhandled/not_word/source.py +1 -0
  488. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/unhandled/whitespace/source.py +1 -0
  489. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/improper_escaping/range_character/unhandled/word/source.py +1 -0
  490. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/invalid_character_range/source.py +1 -0
  491. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/invalid_quantifier/at_least_x/source.py +1 -0
  492. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/invalid_quantifier/between_3_and_x/source.py +1 -0
  493. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/invalid_quantifier/exactly_x/source.py +1 -0
  494. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/unhandled_group_directives/source.py +1 -0
  495. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/unterminated/character_set/source.py +1 -0
  496. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/unterminated/group/source.py +1 -0
  497. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/unterminated/group_of_union_of_empty_concatenations/source.py +1 -0
  498. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/unterminated/quantifier/source.py +1 -0
  499. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/unterminated/quantifier_with_comma/source.py +1 -0
  500. aas_core_codegen-0.0.17/dev/test_data/parse_retree/unexpected/unterminated/quantifier_with_number_and_comma/source.py +1 -0
  501. aas_core_codegen-0.0.17/dev/test_data/proto/test_main/expected/abstract_and_concrete_classes/meta_model.py +37 -0
  502. aas_core_codegen-0.0.17/dev/test_data/proto/test_main/expected/concrete_class_with_descendants/meta_model.py +30 -0
  503. aas_core_codegen-0.0.17/dev/test_data/proto/test_main/expected/concrete_class_with_enum/meta_model.py +21 -0
  504. aas_core_codegen-0.0.17/dev/test_data/proto/test_main/expected/concrete_class_with_list_of_instances/meta_model.py +21 -0
  505. aas_core_codegen-0.0.17/dev/test_data/proto/test_main/expected/concrete_class_with_primitive_attributes/meta_model.py +41 -0
  506. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/abstract_and_concrete_classes/expected_output/pbization.py +532 -0
  507. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/abstract_and_concrete_classes/meta_model.py +37 -0
  508. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_descendant/expected_output/pbization.py +527 -0
  509. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_descendant/meta_model.py +27 -0
  510. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_enum/expected_output/pbization.py +290 -0
  511. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_enum/meta_model.py +21 -0
  512. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_list_of_instances/expected_output/pbization.py +328 -0
  513. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_list_of_instances/meta_model.py +23 -0
  514. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_primitive_attributes/expected_output/pbization.py +274 -0
  515. aas_core_codegen-0.0.17/dev/test_data/python_protobuf/test_main/concrete_class_with_primitive_attributes/meta_model.py +41 -0
  516. aas_core_codegen-0.0.17/dev/test_data/rdf_shacl/test_main/expected/regression_when_lang_string_class_is_missing/meta_model.py +29 -0
  517. aas_core_codegen-0.0.17/dev/test_data/rdf_shacl/test_main/expected/regression_when_len_constraints_on_inherited_property/meta_model.py +27 -0
  518. aas_core_codegen-0.0.17/dev/test_data/rdf_shacl/test_main/unexpected/regression_len_constraint_on_class_property/meta_model.py +61 -0
  519. aas_core_codegen-0.0.17/dev/test_data/real_meta_models/aas_core_meta.v3.py +5721 -0
  520. aas_core_codegen-0.0.17/dev/test_data/smoke/test_main/unexpected/infer_for_schema_error/meta_model.py +12 -0
  521. aas_core_codegen-0.0.17/dev/test_data/smoke/test_main/unexpected/intermediate_error/meta_model.py +18 -0
  522. aas_core_codegen-0.0.17/dev/test_data/smoke/test_main/unexpected/parse_error/meta_model.py +5 -0
  523. aas_core_codegen-0.0.17/dev/test_data/smoke/test_main/unexpected/pattern_verification_unparsable_regex/direct_match/meta_model.py +8 -0
  524. aas_core_codegen-0.0.17/dev/test_data/smoke/test_main/unexpected/type_error/meta_model.py +18 -0
  525. aas_core_codegen-0.0.17/dev/tests/__init__.py +1 -0
  526. aas_core_codegen-0.0.17/dev/tests/common.py +197 -0
  527. aas_core_codegen-0.0.17/dev/tests/cpp/test_common.py +32 -0
  528. aas_core_codegen-0.0.17/dev/tests/cpp/test_main.py +144 -0
  529. aas_core_codegen-0.0.17/dev/tests/cpp/test_pattern.py +188 -0
  530. aas_core_codegen-0.0.17/dev/tests/cpp/test_verification.py +189 -0
  531. aas_core_codegen-0.0.17/dev/tests/cpp/test_yielding.py +225 -0
  532. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/csharp/live_test_main.py +5 -12
  533. aas_core_codegen-0.0.17/dev/tests/csharp/test_description.py +684 -0
  534. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/csharp/test_main.py +9 -17
  535. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/csharp/test_structure.py +4 -4
  536. aas_core_codegen-0.0.17/dev/tests/csharp/test_verification.py +82 -0
  537. aas_core_codegen-0.0.17/dev/tests/description.py +29 -0
  538. aas_core_codegen-0.0.17/dev/tests/golang/test_common.py +78 -0
  539. aas_core_codegen-0.0.17/dev/tests/golang/test_main.py +128 -0
  540. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/infer_for_schema/common.py +4 -7
  541. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/infer_for_schema/test_len_on_properties.py +323 -91
  542. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/infer_for_schema/test_len_on_self.py +159 -61
  543. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/infer_for_schema/test_patterns_on_properties.py +180 -76
  544. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/infer_for_schema/test_patterns_on_self.py +82 -39
  545. aas_core_codegen-0.0.17/dev/tests/infer_for_schema/test_property_in_set_of_enumeration_literals.py +600 -0
  546. aas_core_codegen-0.0.17/dev/tests/infer_for_schema/test_property_in_set_of_primitives.py +549 -0
  547. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/intermediate/test_constructor.py +51 -49
  548. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/intermediate/test_hierarchy.py +21 -21
  549. aas_core_codegen-0.0.17/dev/tests/intermediate/test_pickle.py +1871 -0
  550. aas_core_codegen-0.0.17/dev/tests/intermediate/test_revm.py +134 -0
  551. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/intermediate/test_translate.py +49 -43
  552. aas_core_codegen-0.0.17/dev/tests/intermediate/test_type_inference.py +333 -0
  553. aas_core_codegen-0.0.17/dev/tests/intermediate/test_types.py +623 -0
  554. aas_core_codegen-0.0.17/dev/tests/java/test_common.py +20 -0
  555. aas_core_codegen-0.0.17/dev/tests/java/test_description.py +128 -0
  556. aas_core_codegen-0.0.17/dev/tests/java/test_main.py +234 -0
  557. aas_core_codegen-0.0.17/dev/tests/jsonld_context/test_main.py +79 -0
  558. aas_core_codegen-0.0.17/dev/tests/opcua/test_main.py +110 -0
  559. aas_core_codegen-0.0.17/dev/tests/our_jsonschema/__init__.py +3 -0
  560. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/our_jsonschema/test_main.py +101 -32
  561. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/parse/test_parse.py +15 -23
  562. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/parse/test_retree.py +9 -4
  563. aas_core_codegen-0.0.17/dev/tests/proto/__init__.py +0 -0
  564. {aas-core-codegen-0.0.15/tests/rdf_shacl → aas_core_codegen-0.0.17/dev/tests/proto}/test_main.py +24 -31
  565. aas_core_codegen-0.0.17/dev/tests/python/__init__.py +0 -0
  566. aas_core_codegen-0.0.17/dev/tests/python/test_common.py +124 -0
  567. aas_core_codegen-0.0.17/dev/tests/python/test_main.py +126 -0
  568. aas_core_codegen-0.0.17/dev/tests/python/test_xml_playground.py +254 -0
  569. aas_core_codegen-0.0.17/dev/tests/python_protobuf/__init__.py +0 -0
  570. aas_core_codegen-0.0.17/dev/tests/python_protobuf/test_main.py +111 -0
  571. aas_core_codegen-0.0.17/dev/tests/rdf_shacl/__init__.py +0 -0
  572. aas_core_codegen-0.0.17/dev/tests/rdf_shacl/test_main.py +194 -0
  573. aas_core_codegen-0.0.17/dev/tests/smoke/__init__.py +0 -0
  574. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/smoke/test_main.py +3 -9
  575. aas_core_codegen-0.0.17/dev/tests/test_common.py +94 -0
  576. aas_core_codegen-0.0.17/dev/tests/typescript/__init__.py +0 -0
  577. aas_core_codegen-0.0.17/dev/tests/typescript/test_common.py +108 -0
  578. aas_core_codegen-0.0.17/dev/tests/typescript/test_main.py +125 -0
  579. aas_core_codegen-0.0.17/dev/tests/xsd/__init__.py +0 -0
  580. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/xsd/test_main.py +26 -15
  581. aas_core_codegen-0.0.17/dev/tests/yielding/__init__.py +0 -0
  582. aas_core_codegen-0.0.17/dev/tests/yielding/test_linear.py +558 -0
  583. aas_core_codegen-0.0.17/pyproject.toml +47 -0
  584. aas-core-codegen-0.0.15/aas_core_codegen/__init__.py +0 -6
  585. aas-core-codegen-0.0.15/aas_core_codegen/csharp/description.py +0 -584
  586. aas-core-codegen-0.0.15/aas_core_codegen/csharp/verification/_generate.py +0 -2414
  587. aas-core-codegen-0.0.15/aas_core_codegen/infer_for_schema/_stringify.py +0 -115
  588. aas-core-codegen-0.0.15/aas_core_codegen/infer_for_schema/_types.py +0 -70
  589. aas-core-codegen-0.0.15/aas_core_codegen/intermediate/_stringify.py +0 -813
  590. aas-core-codegen-0.0.15/aas_core_codegen/intermediate/doc.py +0 -124
  591. aas-core-codegen-0.0.15/aas_core_codegen/jsonschema/main.py +0 -560
  592. aas-core-codegen-0.0.15/aas_core_codegen/naming.py +0 -115
  593. aas-core-codegen-0.0.15/aas_core_codegen/rdf_shacl/common.py +0 -128
  594. aas-core-codegen-0.0.15/aas_core_codegen/run.py +0 -55
  595. aas-core-codegen-0.0.15/aas_core_codegen.egg-info/SOURCES.txt +0 -114
  596. aas-core-codegen-0.0.15/aas_core_codegen.egg-info/requires.txt +0 -18
  597. aas-core-codegen-0.0.15/requirements.txt +0 -5
  598. aas-core-codegen-0.0.15/setup.py +0 -66
  599. aas-core-codegen-0.0.15/tests/csharp/test_description.py +0 -456
  600. aas-core-codegen-0.0.15/tests/csharp/test_verification.py +0 -171
  601. aas-core-codegen-0.0.15/tests/intermediate/test_type_inference.py +0 -166
  602. aas-core-codegen-0.0.15/tests/intermediate/test_types.py +0 -174
  603. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/__init__.py +0 -0
  604. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/jsonization/__init__.py +0 -0
  605. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/reporting/__init__.py +0 -0
  606. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/stringification/__init__.py +0 -0
  607. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/structure/__init__.py +0 -0
  608. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/verification/__init__.py +0 -0
  609. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/visitation/__init__.py +0 -0
  610. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/csharp/xmlization/__init__.py +0 -0
  611. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/jsonschema/__init__.py +0 -0
  612. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/parse/retree/_stringify.py +0 -0
  613. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/py.typed +0 -0
  614. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/rdf_shacl/__init__.py +0 -0
  615. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/smoke/__init__.py +0 -0
  616. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/xsd/__init__.py +0 -0
  617. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen/xsd/naming.py +0 -0
  618. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/aas_core_codegen.egg-info/dependency_links.txt +0 -0
  619. {aas-core-codegen-0.0.15/tests/csharp → aas_core_codegen-0.0.17/dev/tests/cpp}/__init__.py +0 -0
  620. {aas-core-codegen-0.0.15/tests/infer_for_schema → aas_core_codegen-0.0.17/dev/tests/csharp}/__init__.py +0 -0
  621. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/csharp/test_common.py +0 -0
  622. {aas-core-codegen-0.0.15/tests/intermediate → aas_core_codegen-0.0.17/dev/tests/golang}/__init__.py +0 -0
  623. {aas-core-codegen-0.0.15/tests/parse → aas_core_codegen-0.0.17/dev/tests/infer_for_schema}/__init__.py +0 -0
  624. {aas-core-codegen-0.0.15/tests/rdf_shacl → aas_core_codegen-0.0.17/dev/tests/intermediate}/__init__.py +0 -0
  625. {aas-core-codegen-0.0.15/tests/smoke → aas_core_codegen-0.0.17/dev/tests/java}/__init__.py +0 -0
  626. {aas-core-codegen-0.0.15/tests/our_jsonschema → aas_core_codegen-0.0.17/dev/tests/opcua}/__init__.py +0 -0
  627. {aas-core-codegen-0.0.15/tests/xsd → aas_core_codegen-0.0.17/dev/tests/parse}/__init__.py +0 -0
  628. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/rdf_shacl/test_common.py +0 -0
  629. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17/dev}/tests/rdf_shacl/test_description.py +0 -0
  630. {aas-core-codegen-0.0.15 → aas_core_codegen-0.0.17}/setup.cfg +0 -0
@@ -0,0 +1,9 @@
1
+ Nico Braunisch (nico.braunisch@tu-dresden.de) for Dresden University of Technology - Institute of Applied Computer Science
2
+ Tom Gneuss (tom.gneuss@tu-dresden.de) for Dresden University of Technology - Institute of Applied Computer Science
3
+ Elodie Thiéblin (elodie.thieblin@logilab.fr) for Logilab and Siemens AG
4
+ Fabien Amarger (fabien.amarger@logilab.fr) for Logilab and Siemens AG
5
+ Igor Garmaev (i.garmaev@iat.rwth-aachen.de) for RWTH Aachen
6
+ Marko Ristin (marko@ristin.ch, marko.ristin@gmail.com, rist@zhaw.ch) for Zurich University of Applied Sciences (ZHAW)
7
+ Sebastian Heppner (s.heppner@iat.rwth-aachen.de) for RWTH Aachen
8
+ Markus Böhm (Markus.Boehm@conplement.de) for conplement AG
9
+ Tobias Langer (Tobias.Langer@conplement.de) for conplement AG
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2021 Marko Ristin, Nico Braunisch, Robert Lehmann
3
+ Copyright (c) 2023 aas-core-codegen AUTHORS
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -19,3 +19,5 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.
22
+
23
+ Please see the file AUTHORS for the full list of the authors of aas-core3.0-codegen.
@@ -1,20 +1,28 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: aas-core-codegen
3
- Version: 0.0.15
4
- Summary: Generate different implementations and schemas based on an AAS meta-model.
5
- Home-page: https://github.com/aas-core-works/aas-core-codegen
6
- Author: Marko Ristin, Nico Braunisch, Robert Lehmann
7
- Author-email: marko@ristin.ch
8
- License: License :: OSI Approved :: MIT License
9
- Keywords: asset administration shell code generation industry 4.0 industrie i4.0
10
- Platform: UNKNOWN
3
+ Version: 0.0.17
4
+ Summary: Generate implementations and schemas based on an AAS meta-model.
5
+ Author-email: Marko Ristin <marko@ristin.ch>, Nico Braunisch <nico.braunisch@tu-dresden.de>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/aas-core-works/aas-core-codegen
8
+ Keywords: asset administration shell,code generation,industry 4.0,industrie 4.0,i4.0
11
9
  Classifier: Development Status :: 5 - Production/Stable
12
10
  Classifier: License :: OSI Approved :: MIT License
13
- Classifier: Programming Language :: Python :: 3.8
14
11
  Classifier: Programming Language :: Python :: 3.9
15
12
  Classifier: Programming Language :: Python :: 3.10
16
- Provides-Extra: dev
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Requires-Python: >=3.9
16
+ Description-Content-Type: text/x-rst
17
17
  License-File: LICENSE
18
+ License-File: AUTHORS
19
+ Requires-Dist: asttokens<3,>=2.0.8
20
+ Requires-Dist: icontract<3,>=2.7.3
21
+ Requires-Dist: sortedcontainers<3,>=2.4.0
22
+ Requires-Dist: docutils==0.22.3
23
+ Requires-Dist: more-itertools<9,>=8
24
+ Requires-Dist: greenery==4.1.0
25
+ Dynamic: license-file
18
26
 
19
27
  ****************
20
28
  aas-core-codegen
@@ -93,19 +101,6 @@ Here is a diagram to illustrate the whole process:
93
101
 
94
102
  .. image:: https://raw.githubusercontent.com/aas-core-works/aas-core-codegen/main/diagram.svg
95
103
 
96
- Warning about Stability
97
- =======================
98
- While we aim for long-term stability of the generators, mind that the current version of the meta-model, version 3 release candidate 2 (V3RC2) is in too much flux to make any solid claims about the short-term stability.
99
-
100
- For example, not even the set of basic types is still defined, and there is an on-going discussion in the UAG Verwaltungsschale what this set might be.
101
- Same holds about the definitions of references and how we should deal with them.
102
-
103
- Moreover, the serialization approaches are not finalized either.
104
- For example, the current JSON schema does not allow for one-pass serialization (a.k.a. streaming-based serialization).
105
- We are discussing in UAG Verwaltungsschale to use JSON tuples with the model type as prefix instead of JSON objects, but this discussion is still at an early stage.
106
-
107
- As long as V3RC2 does not stabilize, consider the generated code and schemas to be insufficient for any serious use (either experimental or in production).
108
-
109
104
  Installation
110
105
  ============
111
106
  Single-File Release
@@ -170,11 +165,12 @@ Call the generator with the appropriate target:
170
165
 
171
166
  usage: aas-core-codegen [-h] --model_path MODEL_PATH --snippets_dir
172
167
  SNIPPETS_DIR --output_dir OUTPUT_DIR --target
173
- {csharp,jsonschema,rdf_shacl,xsd} [--version]
168
+ {csharp,cpp,golang,java,jsonschema,python,typescript,rdf_shacl,xsd,jsonld_context,protobuf,python_protobuf,opcua}
169
+ [--version]
174
170
 
175
- Generate different implementations and schemas based on an AAS meta-model.
171
+ Generate implementations and schemas based on an AAS meta-model.
176
172
 
177
- optional arguments:
173
+ options:
178
174
  -h, --help show this help message and exit
179
175
  --model_path MODEL_PATH
180
176
  path to the meta-model
@@ -183,7 +179,7 @@ Call the generator with the appropriate target:
183
179
  specific code snippets
184
180
  --output_dir OUTPUT_DIR
185
181
  path to the generated code
186
- --target {csharp,jsonschema,rdf_shacl,xsd}
182
+ --target {csharp,cpp,golang,java,jsonschema,python,typescript,rdf_shacl,xsd,jsonld_context,protobuf,python_protobuf,opcua}
187
183
  target language or schema
188
184
  --version show the current version and exit
189
185
 
@@ -213,5 +209,3 @@ Contributions in code are also welcome!
213
209
  Please see `CONTRIBUTING.rst`_ for developing guidelines.
214
210
 
215
211
  .. _CONTRIBUTING.rst: https://github.com/aas-core-works/aas-core-codegen/blob/main/CONTRIBUTING.rst
216
-
217
-
@@ -75,19 +75,6 @@ Here is a diagram to illustrate the whole process:
75
75
 
76
76
  .. image:: https://raw.githubusercontent.com/aas-core-works/aas-core-codegen/main/diagram.svg
77
77
 
78
- Warning about Stability
79
- =======================
80
- While we aim for long-term stability of the generators, mind that the current version of the meta-model, version 3 release candidate 2 (V3RC2) is in too much flux to make any solid claims about the short-term stability.
81
-
82
- For example, not even the set of basic types is still defined, and there is an on-going discussion in the UAG Verwaltungsschale what this set might be.
83
- Same holds about the definitions of references and how we should deal with them.
84
-
85
- Moreover, the serialization approaches are not finalized either.
86
- For example, the current JSON schema does not allow for one-pass serialization (a.k.a. streaming-based serialization).
87
- We are discussing in UAG Verwaltungsschale to use JSON tuples with the model type as prefix instead of JSON objects, but this discussion is still at an early stage.
88
-
89
- As long as V3RC2 does not stabilize, consider the generated code and schemas to be insufficient for any serious use (either experimental or in production).
90
-
91
78
  Installation
92
79
  ============
93
80
  Single-File Release
@@ -152,11 +139,12 @@ Call the generator with the appropriate target:
152
139
 
153
140
  usage: aas-core-codegen [-h] --model_path MODEL_PATH --snippets_dir
154
141
  SNIPPETS_DIR --output_dir OUTPUT_DIR --target
155
- {csharp,jsonschema,rdf_shacl,xsd} [--version]
142
+ {csharp,cpp,golang,java,jsonschema,python,typescript,rdf_shacl,xsd,jsonld_context,protobuf,python_protobuf,opcua}
143
+ [--version]
156
144
 
157
- Generate different implementations and schemas based on an AAS meta-model.
145
+ Generate implementations and schemas based on an AAS meta-model.
158
146
 
159
- optional arguments:
147
+ options:
160
148
  -h, --help show this help message and exit
161
149
  --model_path MODEL_PATH
162
150
  path to the meta-model
@@ -165,7 +153,7 @@ Call the generator with the appropriate target:
165
153
  specific code snippets
166
154
  --output_dir OUTPUT_DIR
167
155
  path to the generated code
168
- --target {csharp,jsonschema,rdf_shacl,xsd}
156
+ --target {csharp,cpp,golang,java,jsonschema,python,typescript,rdf_shacl,xsd,jsonld_context,protobuf,python_protobuf,opcua}
169
157
  target language or schema
170
158
  --version show the current version and exit
171
159
 
@@ -0,0 +1,6 @@
1
+ """Generate implementations and schemas based on an AAS meta-model."""
2
+
3
+ __version__ = "0.0.17"
4
+ __author__ = "Marko Ristin, Nico Braunisch"
5
+ __license__ = "License :: OSI Approved :: MIT License"
6
+ __status__ = "Production/Stable"
@@ -4,5 +4,5 @@ import aas_core_codegen.main
4
4
 
5
5
  if __name__ == "__main__":
6
6
  # The ``prog`` needs to be set in the argparse.
7
- # Otherwise the program name in the help shown to the user will be ``__main__``.
7
+ # Otherwise, the program name in the help shown to the user will be ``__main__``.
8
8
  aas_core_codegen.main.main(prog="aas_core_codegen")
@@ -2,6 +2,7 @@
2
2
  import ast
3
3
  import inspect
4
4
  import io
5
+ import itertools
5
6
  import re
6
7
  import textwrap
7
8
  from typing import (
@@ -16,15 +17,57 @@ from typing import (
16
17
  NoReturn,
17
18
  Any,
18
19
  Iterable,
20
+ TypeVar,
19
21
  )
20
22
 
21
23
  import asttokens
22
- from icontract import require, DBC
24
+ from icontract import require, DBC, ensure
23
25
 
26
+
27
+ class Rstripped(str):
28
+ """
29
+ Represent a block of text without trailing whitespace.
30
+
31
+ The block can be both single-line or multi-line.
32
+ """
33
+
34
+ @require(
35
+ lambda block: not block.endswith("\n")
36
+ and not block.endswith(" ")
37
+ and not block.endswith("\t")
38
+ )
39
+ def __new__(cls, block: str) -> "Rstripped":
40
+ return cast(Rstripped, block)
41
+
42
+
43
+ def is_stripped(text: str) -> bool:
44
+ """Check that the ``text`` does not have leading and trailing whitespace."""
45
+ return (
46
+ not text.startswith("\n")
47
+ and not text.startswith(" ")
48
+ and not text.startswith("\t")
49
+ ) and (
50
+ not text.endswith("\n") and not text.endswith(" ") and not text.endswith("\t")
51
+ )
52
+
53
+
54
+ class Stripped(Rstripped):
55
+ """
56
+ Represent a block of text without leading and trailing whitespace.
57
+
58
+ The block of text can be both single-line and multi-line.
59
+ """
60
+
61
+ @require(lambda block: is_stripped(block))
62
+ def __new__(cls, block: str) -> "Stripped":
63
+ return cast(Stripped, block)
64
+
65
+
66
+ # noinspection RegExpSimplifiable
24
67
  IDENTIFIER_RE = re.compile(r"[a-zA-Z_][a-zA-Z_0-9]*")
25
68
 
26
69
 
27
- class Identifier(DBC, str):
70
+ class Identifier(DBC, Stripped):
28
71
  """Represent an identifier."""
29
72
 
30
73
  @require(lambda value: IDENTIFIER_RE.fullmatch(value))
@@ -139,10 +182,6 @@ class Lines(DBC):
139
182
  """
140
183
  return cast(Lines, lines)
141
184
 
142
- def __add__(self, other: "Lines") -> "Lines":
143
- """Concatenate two list of lines."""
144
- raise NotImplementedError("Only for type annotations")
145
-
146
185
  # pylint: disable=function-redefined
147
186
 
148
187
  @overload
@@ -159,12 +198,16 @@ class Lines(DBC):
159
198
  """Get the line(s) at the given index."""
160
199
  raise NotImplementedError("Only for type annotations")
161
200
 
201
+ def __iter__(self) -> Iterator[str]:
202
+ """Iterate over the lines."""
203
+ raise NotImplementedError("Only for type annotations")
204
+
162
205
  def __len__(self) -> int:
163
206
  """Return the number of the lines."""
164
207
  raise NotImplementedError("Only for type annotations")
165
208
 
166
- def __iter__(self) -> Iterator[str]:
167
- """Iterate over the lines."""
209
+ def __add__(self, other: "Lines") -> "Lines":
210
+ """Concatenate two list of lines."""
168
211
  raise NotImplementedError("Only for type annotations")
169
212
 
170
213
 
@@ -178,47 +221,6 @@ def assert_never(value: NoReturn) -> NoReturn:
178
221
  assert False, f"Unhandled value: {value} ({type(value).__name__})"
179
222
 
180
223
 
181
- class Rstripped(str):
182
- """
183
- Represent a block of text without trailing whitespace.
184
-
185
- The block can be both single-line or multi-line.
186
- """
187
-
188
- @require(
189
- lambda block: not block.endswith("\n")
190
- and not block.endswith(" ")
191
- and not block.endswith("\t")
192
- )
193
- def __new__(cls, block: str) -> "Rstripped":
194
- return cast(Rstripped, block)
195
-
196
-
197
- class Stripped(Rstripped):
198
- """
199
- Represent a block of text without leading and trailing whitespace.
200
-
201
- The block of text can be both single-line and multi-line.
202
- """
203
-
204
- # fmt: off
205
- @require(
206
- lambda block:
207
- not block.startswith('\n')
208
- and not block.startswith(' ')
209
- and not block.startswith('\t')
210
- )
211
- @require(
212
- lambda block:
213
- not block.endswith('\n')
214
- and not block.endswith(' ')
215
- and not block.endswith('\t')
216
- )
217
- # fmt: on
218
- def __new__(cls, block: str) -> "Stripped":
219
- return cast(Stripped, block)
220
-
221
-
222
224
  def indent_but_first_line(text: str, indention: str) -> str:
223
225
  """
224
226
  Indent all but the first of the given ``text`` by ``indention``.
@@ -254,7 +256,7 @@ def assert_union_of_descendants_exhaustive(union: Any, base_class: Any) -> None:
254
256
  else:
255
257
  raise NotImplementedError(f"We do not know how to handle the union: {union}")
256
258
 
257
- # We have to recursively figure out the sub-classes.
259
+ # We have to recursively figure out the subclasses.
258
260
  concrete_subclasses = [] # type: List[Any]
259
261
 
260
262
  stack = base_class.__subclasses__() # type: List[Any]
@@ -392,3 +394,107 @@ def assert_union_without_excluded(
392
394
  )
393
395
 
394
396
  # endregion
397
+
398
+
399
+ @ensure(lambda text, result: text == "".join(result))
400
+ def wrap_text_into_lines(text: str, line_width: int = 60) -> List[str]:
401
+ """
402
+ Wrap the ``text`` into multiple lines.
403
+
404
+ The tokens are split based on the whitespace. We make sure the articles are not
405
+ left hanging between the lines. A line should observe the ``line_limit``,
406
+ if possible.
407
+
408
+ No new lines are added — the description should be given to the user in the original
409
+ formatting. We merely split it in string literals for better code readability.
410
+ """
411
+ parts = text.split(" ")
412
+ if len(parts) == 1:
413
+ return [text]
414
+
415
+ # NOTE (mristin, 2022-04-08):
416
+ # We do not want to cut out "the", "a" and "an" on separate lines, so we split
417
+ # the text once more in tokens where the articles are kept in the same token as
418
+ # the word.
419
+ tokens = [] # type: List[str]
420
+
421
+ article = None # type: Optional[str]
422
+ for part in parts:
423
+ if article is None:
424
+ if part in ("a", "an", "the"):
425
+ article = part
426
+ continue
427
+ else:
428
+ tokens.append(part)
429
+ else:
430
+ if part in ("a", "an", "the"):
431
+ # Append the previously observed ``article``;
432
+ # the ``part`` becomes a new article.
433
+ tokens.append(article)
434
+ article = part
435
+ continue
436
+
437
+ tokens.append(f"{article} {part}")
438
+ article = None
439
+
440
+ if article is not None:
441
+ tokens.append(article)
442
+
443
+ # NOTE (mristin, 2022-04-08):
444
+ # We add space to the tokens so that it is easier to re-flow them.
445
+ tokens = [
446
+ f"{token} " if i < len(tokens) - 1 else token for i, token in enumerate(tokens)
447
+ ]
448
+ assert "".join(tokens) == text
449
+
450
+ segments = [] # type: List[str]
451
+
452
+ accumulation_len = 0
453
+ accumulation = [] # type: List[str]
454
+
455
+ for token in tokens:
456
+ if len(token) > line_width:
457
+ segments.append("".join(accumulation))
458
+ segments.append(token)
459
+ accumulation_len = 0
460
+ accumulation = []
461
+
462
+ elif accumulation_len + len(token) > line_width:
463
+ segments.append("".join(accumulation))
464
+ accumulation_len = len(token)
465
+ accumulation = [token]
466
+ else:
467
+ accumulation_len += len(token)
468
+ accumulation.append(token)
469
+
470
+ if accumulation_len > 0:
471
+ segments.append("".join(accumulation))
472
+
473
+ return segments
474
+
475
+
476
+ T = TypeVar("T")
477
+
478
+
479
+ def pairwise(iterable: Iterable[T]) -> Iterator[Tuple[T, T]]:
480
+ """
481
+ Iterate pair-wise over the iterator.
482
+
483
+ >>> list(pairwise("ABCDE"))
484
+ [('A', 'B'), ('B', 'C'), ('C', 'D'), ('D', 'E')]
485
+ """
486
+ a, b = itertools.tee(iterable)
487
+ next(b, None)
488
+ return zip(a, b)
489
+
490
+
491
+ def iterate_except_first(iterable: Iterable[T]) -> Iterator[T]:
492
+ """
493
+ Iterate over ``iterable``, but skip the first item.
494
+
495
+ >>> list(iterate_except_first("ABCD"))
496
+ ['B', 'C', 'D']
497
+ """
498
+ iterator = iter(iterable)
499
+ next(iterator, None)
500
+ yield from iterator
@@ -0,0 +1 @@
1
+ """Generate C++ code based on the intermediate meta-model."""
@@ -0,0 +1,6 @@
1
+ """Generate C++ code for common functions."""
2
+
3
+ from aas_core_codegen.cpp.aas_common import _generate
4
+
5
+ generate_header = _generate.generate_header
6
+ generate_implementation = _generate.generate_implementation