arctrl 3.0.0__py3-none-any.whl

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 (511) hide show
  1. arctrl/__init__.py +23 -0
  2. arctrl/cwl.py +12 -0
  3. arctrl/py/CWL/__init__.py +0 -0
  4. arctrl/py/CWL/cwlprocessing_unit.py +221 -0
  5. arctrl/py/CWL/cwltypes.py +364 -0
  6. arctrl/py/CWL/decode.py +3532 -0
  7. arctrl/py/CWL/encode.py +1905 -0
  8. arctrl/py/CWL/expression_tool_description.py +192 -0
  9. arctrl/py/CWL/hash_helpers.py +60 -0
  10. arctrl/py/CWL/inputs.py +122 -0
  11. arctrl/py/CWL/operation_description.py +169 -0
  12. arctrl/py/CWL/outputs.py +171 -0
  13. arctrl/py/CWL/parameter_reference.py +74 -0
  14. arctrl/py/CWL/requirements.py +350 -0
  15. arctrl/py/CWL/tool_description.py +192 -0
  16. arctrl/py/CWL/workflow_description.py +181 -0
  17. arctrl/py/CWL/workflow_steps.py +354 -0
  18. arctrl/py/Contract/__init__.py +0 -0
  19. arctrl/py/Contract/arc.py +89 -0
  20. arctrl/py/Contract/arc_assay.py +125 -0
  21. arctrl/py/Contract/arc_investigation.py +88 -0
  22. arctrl/py/Contract/arc_run.py +291 -0
  23. arctrl/py/Contract/arc_study.py +126 -0
  24. arctrl/py/Contract/arc_workflow.py +213 -0
  25. arctrl/py/Contract/contract.py +153 -0
  26. arctrl/py/Contract/datamap.py +396 -0
  27. arctrl/py/Contract/git.py +116 -0
  28. arctrl/py/Contract/license.py +58 -0
  29. arctrl/py/Contract/validation_packages_config.py +107 -0
  30. arctrl/py/ContractIO/__init__.py +0 -0
  31. arctrl/py/ContractIO/contract_io.py +350 -0
  32. arctrl/py/ContractIO/file_system_helper.py +264 -0
  33. arctrl/py/Conversion/__init__.py +0 -0
  34. arctrl/py/Conversion/assay.py +151 -0
  35. arctrl/py/Conversion/basic.py +559 -0
  36. arctrl/py/Conversion/column_index.py +91 -0
  37. arctrl/py/Conversion/datamap.py +36 -0
  38. arctrl/py/Conversion/date_time.py +32 -0
  39. arctrl/py/Conversion/investigation.py +171 -0
  40. arctrl/py/Conversion/person.py +148 -0
  41. arctrl/py/Conversion/process.py +828 -0
  42. arctrl/py/Conversion/run.py +367 -0
  43. arctrl/py/Conversion/scholarly_article.py +163 -0
  44. arctrl/py/Conversion/study.py +99 -0
  45. arctrl/py/Conversion/table.py +229 -0
  46. arctrl/py/Conversion/workflow.py +680 -0
  47. arctrl/py/Core/Helper/__init__.py +0 -0
  48. arctrl/py/Core/Helper/collections_.py +512 -0
  49. arctrl/py/Core/Helper/date_time.py +26 -0
  50. arctrl/py/Core/Helper/hash_codes.py +60 -0
  51. arctrl/py/Core/Helper/identifier.py +290 -0
  52. arctrl/py/Core/Helper/orcid.py +42 -0
  53. arctrl/py/Core/Helper/printer.py +13 -0
  54. arctrl/py/Core/Helper/regex.py +554 -0
  55. arctrl/py/Core/Helper/sem_ver.py +71 -0
  56. arctrl/py/Core/Helper/url.py +148 -0
  57. arctrl/py/Core/Process/__init__.py +0 -0
  58. arctrl/py/Core/Process/column_index.py +280 -0
  59. arctrl/py/Core/Process/component.py +200 -0
  60. arctrl/py/Core/Process/factor.py +151 -0
  61. arctrl/py/Core/Process/factor_value.py +182 -0
  62. arctrl/py/Core/Process/material.py +74 -0
  63. arctrl/py/Core/Process/material_attribute.py +95 -0
  64. arctrl/py/Core/Process/material_attribute_value.py +184 -0
  65. arctrl/py/Core/Process/material_type.py +45 -0
  66. arctrl/py/Core/Process/process.py +477 -0
  67. arctrl/py/Core/Process/process_input.py +265 -0
  68. arctrl/py/Core/Process/process_output.py +235 -0
  69. arctrl/py/Core/Process/process_parameter_value.py +200 -0
  70. arctrl/py/Core/Process/process_sequence.py +435 -0
  71. arctrl/py/Core/Process/protocol.py +175 -0
  72. arctrl/py/Core/Process/protocol_parameter.py +98 -0
  73. arctrl/py/Core/Process/sample.py +82 -0
  74. arctrl/py/Core/Process/source.py +62 -0
  75. arctrl/py/Core/Table/__init__.py +0 -0
  76. arctrl/py/Core/Table/arc_table.py +1206 -0
  77. arctrl/py/Core/Table/arc_table_aux.py +1308 -0
  78. arctrl/py/Core/Table/arc_tables.py +574 -0
  79. arctrl/py/Core/Table/composite_cell.py +319 -0
  80. arctrl/py/Core/Table/composite_column.py +73 -0
  81. arctrl/py/Core/Table/composite_header.py +739 -0
  82. arctrl/py/Core/__init__.py +0 -0
  83. arctrl/py/Core/arc_types.py +5312 -0
  84. arctrl/py/Core/comment.py +128 -0
  85. arctrl/py/Core/comment_list.py +127 -0
  86. arctrl/py/Core/conversion.py +1375 -0
  87. arctrl/py/Core/data.py +247 -0
  88. arctrl/py/Core/data_context.py +157 -0
  89. arctrl/py/Core/data_file.py +112 -0
  90. arctrl/py/Core/datamap.py +217 -0
  91. arctrl/py/Core/identifier_setters.py +43 -0
  92. arctrl/py/Core/iproperty_value.py +36 -0
  93. arctrl/py/Core/ontology_annotation.py +298 -0
  94. arctrl/py/Core/ontology_source_reference.py +114 -0
  95. arctrl/py/Core/person.py +259 -0
  96. arctrl/py/Core/publication.py +161 -0
  97. arctrl/py/Core/template.py +231 -0
  98. arctrl/py/Core/templates.py +148 -0
  99. arctrl/py/Core/uri.py +11 -0
  100. arctrl/py/Core/value.py +188 -0
  101. arctrl/py/FileSystem/__init__.py +0 -0
  102. arctrl/py/FileSystem/commit.py +21 -0
  103. arctrl/py/FileSystem/default_gitattributes.py +1 -0
  104. arctrl/py/FileSystem/default_gitignore.py +1 -0
  105. arctrl/py/FileSystem/default_license.py +1 -0
  106. arctrl/py/FileSystem/file_system.py +58 -0
  107. arctrl/py/FileSystem/file_system_tree.py +483 -0
  108. arctrl/py/FileSystem/path.py +266 -0
  109. arctrl/py/Json/Datamap/__init__.py +0 -0
  110. arctrl/py/Json/Datamap/data_context.py +101 -0
  111. arctrl/py/Json/Datamap/datamap.py +53 -0
  112. arctrl/py/Json/Process/__init__.py +0 -0
  113. arctrl/py/Json/Process/assay_materials.py +46 -0
  114. arctrl/py/Json/Process/component.py +125 -0
  115. arctrl/py/Json/Process/factor.py +107 -0
  116. arctrl/py/Json/Process/factor_value.py +101 -0
  117. arctrl/py/Json/Process/material.py +226 -0
  118. arctrl/py/Json/Process/material_attribute.py +79 -0
  119. arctrl/py/Json/Process/material_attribute_value.py +101 -0
  120. arctrl/py/Json/Process/material_type.py +53 -0
  121. arctrl/py/Json/Process/process.py +296 -0
  122. arctrl/py/Json/Process/process_input.py +83 -0
  123. arctrl/py/Json/Process/process_output.py +67 -0
  124. arctrl/py/Json/Process/process_parameter_value.py +81 -0
  125. arctrl/py/Json/Process/protocol.py +354 -0
  126. arctrl/py/Json/Process/protocol_parameter.py +91 -0
  127. arctrl/py/Json/Process/sample.py +277 -0
  128. arctrl/py/Json/Process/source.py +214 -0
  129. arctrl/py/Json/Process/study_materials.py +52 -0
  130. arctrl/py/Json/Process/value.py +56 -0
  131. arctrl/py/Json/ROCrate/__init__.py +0 -0
  132. arctrl/py/Json/ROCrate/ldcontext.py +143 -0
  133. arctrl/py/Json/ROCrate/ldgraph.py +117 -0
  134. arctrl/py/Json/ROCrate/ldnode.py +304 -0
  135. arctrl/py/Json/ROCrate/ldref.py +44 -0
  136. arctrl/py/Json/ROCrate/ldvalue.py +102 -0
  137. arctrl/py/Json/Table/__init__.py +0 -0
  138. arctrl/py/Json/Table/arc_table.py +375 -0
  139. arctrl/py/Json/Table/cell_table.py +83 -0
  140. arctrl/py/Json/Table/composite_cell.py +136 -0
  141. arctrl/py/Json/Table/composite_header.py +67 -0
  142. arctrl/py/Json/Table/iotype.py +24 -0
  143. arctrl/py/Json/Table/oatable.py +82 -0
  144. arctrl/py/Json/Table/templates.py +281 -0
  145. arctrl/py/Json/__init__.py +0 -0
  146. arctrl/py/Json/assay.py +600 -0
  147. arctrl/py/Json/comment.py +206 -0
  148. arctrl/py/Json/context/rocrate/__init__.py +0 -0
  149. arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
  150. arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
  151. arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
  152. arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
  153. arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
  154. arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
  155. arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
  156. arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
  157. arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
  158. arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
  159. arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
  160. arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
  161. arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
  162. arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
  163. arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
  164. arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
  165. arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
  166. arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
  167. arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
  168. arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
  169. arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
  170. arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
  171. arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
  172. arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
  173. arctrl/py/Json/converter_options.py +23 -0
  174. arctrl/py/Json/data.py +356 -0
  175. arctrl/py/Json/data_file.py +63 -0
  176. arctrl/py/Json/decode.py +271 -0
  177. arctrl/py/Json/encode.py +140 -0
  178. arctrl/py/Json/idtable.py +44 -0
  179. arctrl/py/Json/investigation.py +695 -0
  180. arctrl/py/Json/ontology_annotation.py +404 -0
  181. arctrl/py/Json/ontology_source_reference.py +255 -0
  182. arctrl/py/Json/person.py +658 -0
  183. arctrl/py/Json/property_value.py +359 -0
  184. arctrl/py/Json/publication.py +279 -0
  185. arctrl/py/Json/run.py +275 -0
  186. arctrl/py/Json/string_table.py +87 -0
  187. arctrl/py/Json/study.py +793 -0
  188. arctrl/py/Json/workflow.py +307 -0
  189. arctrl/py/JsonIO/Process/__init__.py +0 -0
  190. arctrl/py/JsonIO/Process/component.py +60 -0
  191. arctrl/py/JsonIO/Process/factor.py +36 -0
  192. arctrl/py/JsonIO/Process/factor_value.py +38 -0
  193. arctrl/py/JsonIO/Process/material.py +60 -0
  194. arctrl/py/JsonIO/Process/material_attribute.py +38 -0
  195. arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
  196. arctrl/py/JsonIO/Process/material_type.py +36 -0
  197. arctrl/py/JsonIO/Process/process.py +60 -0
  198. arctrl/py/JsonIO/Process/process_input.py +38 -0
  199. arctrl/py/JsonIO/Process/process_output.py +60 -0
  200. arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
  201. arctrl/py/JsonIO/Process/process_sequence.py +71 -0
  202. arctrl/py/JsonIO/Process/protocol.py +60 -0
  203. arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
  204. arctrl/py/JsonIO/Process/sample.py +60 -0
  205. arctrl/py/JsonIO/Process/source.py +60 -0
  206. arctrl/py/JsonIO/Process/study_materials.py +52 -0
  207. arctrl/py/JsonIO/Process/value.py +32 -0
  208. arctrl/py/JsonIO/Table/__init__.py +0 -0
  209. arctrl/py/JsonIO/Table/arc_table.py +103 -0
  210. arctrl/py/JsonIO/Table/composite_cell.py +36 -0
  211. arctrl/py/JsonIO/Table/composite_header.py +36 -0
  212. arctrl/py/JsonIO/Table/compression.py +67 -0
  213. arctrl/py/JsonIO/Table/iotype.py +36 -0
  214. arctrl/py/JsonIO/Table/templates.py +113 -0
  215. arctrl/py/JsonIO/__init__.py +0 -0
  216. arctrl/py/JsonIO/assay.py +113 -0
  217. arctrl/py/JsonIO/comment.py +80 -0
  218. arctrl/py/JsonIO/data.py +60 -0
  219. arctrl/py/JsonIO/data_file.py +58 -0
  220. arctrl/py/JsonIO/datamap.py +36 -0
  221. arctrl/py/JsonIO/decode.py +9 -0
  222. arctrl/py/JsonIO/encode.py +1 -0
  223. arctrl/py/JsonIO/investigation.py +91 -0
  224. arctrl/py/JsonIO/ldobject.py +106 -0
  225. arctrl/py/JsonIO/ontology_annotation.py +80 -0
  226. arctrl/py/JsonIO/ontology_source_reference.py +80 -0
  227. arctrl/py/JsonIO/person.py +82 -0
  228. arctrl/py/JsonIO/publication.py +82 -0
  229. arctrl/py/JsonIO/run.py +68 -0
  230. arctrl/py/JsonIO/study.py +114 -0
  231. arctrl/py/JsonIO/workflow.py +68 -0
  232. arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
  233. arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
  234. arctrl/py/ROCrate/ISAProfile/data.py +65 -0
  235. arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
  236. arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
  237. arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
  238. arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
  239. arctrl/py/ROCrate/ISAProfile/person.py +72 -0
  240. arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
  241. arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
  242. arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
  243. arctrl/py/ROCrate/ISAProfile/study.py +74 -0
  244. arctrl/py/ROCrate/LDTypes/__init__.py +0 -0
  245. arctrl/py/ROCrate/LDTypes/comment.py +131 -0
  246. arctrl/py/ROCrate/LDTypes/computational_workflow.py +455 -0
  247. arctrl/py/ROCrate/LDTypes/computer_language.py +269 -0
  248. arctrl/py/ROCrate/LDTypes/create_action.py +303 -0
  249. arctrl/py/ROCrate/LDTypes/creative_work.py +566 -0
  250. arctrl/py/ROCrate/LDTypes/dataset.py +943 -0
  251. arctrl/py/ROCrate/LDTypes/defined_term.py +131 -0
  252. arctrl/py/ROCrate/LDTypes/file.py +281 -0
  253. arctrl/py/ROCrate/LDTypes/formal_parameter.py +431 -0
  254. arctrl/py/ROCrate/LDTypes/lab_process.py +352 -0
  255. arctrl/py/ROCrate/LDTypes/lab_protocol.py +395 -0
  256. arctrl/py/ROCrate/LDTypes/organization.py +83 -0
  257. arctrl/py/ROCrate/LDTypes/person.py +484 -0
  258. arctrl/py/ROCrate/LDTypes/postal_address.py +195 -0
  259. arctrl/py/ROCrate/LDTypes/property_value.py +952 -0
  260. arctrl/py/ROCrate/LDTypes/sample.py +202 -0
  261. arctrl/py/ROCrate/LDTypes/scholarly_article.py +229 -0
  262. arctrl/py/ROCrate/LDTypes/software_source_code.py +310 -0
  263. arctrl/py/ROCrate/LDTypes/workflow_invocation.py +48 -0
  264. arctrl/py/ROCrate/LDTypes/workflow_protocol.py +52 -0
  265. arctrl/py/ROCrate/__init__.py +0 -0
  266. arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
  267. arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
  268. arctrl/py/ROCrate/helper.py +8 -0
  269. arctrl/py/ROCrate/ldcontext.py +406 -0
  270. arctrl/py/ROCrate/ldobject.py +1247 -0
  271. arctrl/py/ROCrate/rocrate_context.py +51 -0
  272. arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
  273. arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +203 -0
  274. arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
  275. arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +305 -0
  276. arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
  277. arctrl/py/Spreadsheet/DatamapTable/__init__.py +0 -0
  278. arctrl/py/Spreadsheet/DatamapTable/datamap_column.py +114 -0
  279. arctrl/py/Spreadsheet/DatamapTable/datamap_header.py +621 -0
  280. arctrl/py/Spreadsheet/DatamapTable/datamap_table.py +118 -0
  281. arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
  282. arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
  283. arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
  284. arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
  285. arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
  286. arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
  287. arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
  288. arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
  289. arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
  290. arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
  291. arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
  292. arctrl/py/Spreadsheet/Metadata/run.py +122 -0
  293. arctrl/py/Spreadsheet/Metadata/sparse_table.py +499 -0
  294. arctrl/py/Spreadsheet/Metadata/study.py +312 -0
  295. arctrl/py/Spreadsheet/Metadata/workflow.py +159 -0
  296. arctrl/py/Spreadsheet/__init__.py +0 -0
  297. arctrl/py/Spreadsheet/arc_assay.py +233 -0
  298. arctrl/py/Spreadsheet/arc_investigation.py +435 -0
  299. arctrl/py/Spreadsheet/arc_run.py +190 -0
  300. arctrl/py/Spreadsheet/arc_study.py +144 -0
  301. arctrl/py/Spreadsheet/arc_workflow.py +177 -0
  302. arctrl/py/Spreadsheet/assembly_info.py +1 -0
  303. arctrl/py/Spreadsheet/collection_aux.py +167 -0
  304. arctrl/py/Spreadsheet/datamap.py +43 -0
  305. arctrl/py/Spreadsheet/template.py +460 -0
  306. arctrl/py/ValidationPackages/__init__.py +0 -0
  307. arctrl/py/ValidationPackages/validation_package.py +82 -0
  308. arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
  309. arctrl/py/WebRequest/__init__.py +0 -0
  310. arctrl/py/WebRequest/web_request.py +9 -0
  311. arctrl/py/WebRequest/web_request_py.py +135 -0
  312. arctrl/py/WorkflowGraph/__init__.py +0 -0
  313. arctrl/py/WorkflowGraph/adapters.py +141 -0
  314. arctrl/py/WorkflowGraph/build_options.py +45 -0
  315. arctrl/py/WorkflowGraph/builder.py +720 -0
  316. arctrl/py/WorkflowGraph/graph_types.py +260 -0
  317. arctrl/py/WorkflowGraph/query_helpers.py +76 -0
  318. arctrl/py/WorkflowGraph/reference_parsing.py +59 -0
  319. arctrl/py/WorkflowGraph/visualization_siren.py +574 -0
  320. arctrl/py/WorkflowGraph/workflow_graph.py +119 -0
  321. arctrl/py/Yaml/__init__.py +0 -0
  322. arctrl/py/Yaml/decode.py +1 -0
  323. arctrl/py/Yaml/encode.py +10 -0
  324. arctrl/py/Yaml/validation_package.py +77 -0
  325. arctrl/py/Yaml/validation_packages_config.py +86 -0
  326. arctrl/py/__init__.py +0 -0
  327. arctrl/py/arc.py +1891 -0
  328. arctrl/py/column_index.py +280 -0
  329. arctrl/py/conversion.py +142 -0
  330. arctrl/py/cross_async.py +76 -0
  331. arctrl/py/cwlrun_resolver.py +228 -0
  332. arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
  333. arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
  334. arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
  335. arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
  336. arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
  337. arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
  338. arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
  339. arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
  340. arctrl/py/fable_modules/fable_library/__init__.py +0 -0
  341. arctrl/py/fable_modules/fable_library/array_.py +1528 -0
  342. arctrl/py/fable_modules/fable_library/async_.py +377 -0
  343. arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
  344. arctrl/py/fable_modules/fable_library/big_int.py +330 -0
  345. arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
  346. arctrl/py/fable_modules/fable_library/boolean.py +26 -0
  347. arctrl/py/fable_modules/fable_library/char.py +237 -0
  348. arctrl/py/fable_modules/fable_library/choice.py +212 -0
  349. arctrl/py/fable_modules/fable_library/date.py +779 -0
  350. arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
  351. arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
  352. arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
  353. arctrl/py/fable_modules/fable_library/double.py +87 -0
  354. arctrl/py/fable_modules/fable_library/encoding.py +41 -0
  355. arctrl/py/fable_modules/fable_library/event.py +206 -0
  356. arctrl/py/fable_modules/fable_library/file.py +107 -0
  357. arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
  358. arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
  359. arctrl/py/fable_modules/fable_library/global_.py +63 -0
  360. arctrl/py/fable_modules/fable_library/guid.py +41 -0
  361. arctrl/py/fable_modules/fable_library/int32.py +73 -0
  362. arctrl/py/fable_modules/fable_library/list.py +1788 -0
  363. arctrl/py/fable_modules/fable_library/long.py +240 -0
  364. arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
  365. arctrl/py/fable_modules/fable_library/map.py +1854 -0
  366. arctrl/py/fable_modules/fable_library/map_util.py +148 -0
  367. arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
  368. arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
  369. arctrl/py/fable_modules/fable_library/native.py +45 -0
  370. arctrl/py/fable_modules/fable_library/numeric.py +46 -0
  371. arctrl/py/fable_modules/fable_library/observable.py +222 -0
  372. arctrl/py/fable_modules/fable_library/option.py +128 -0
  373. arctrl/py/fable_modules/fable_library/path.py +62 -0
  374. arctrl/py/fable_modules/fable_library/range.py +117 -0
  375. arctrl/py/fable_modules/fable_library/reflection.py +463 -0
  376. arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
  377. arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
  378. arctrl/py/fable_modules/fable_library/result.py +212 -0
  379. arctrl/py/fable_modules/fable_library/seq.py +1979 -0
  380. arctrl/py/fable_modules/fable_library/seq2.py +221 -0
  381. arctrl/py/fable_modules/fable_library/set.py +2414 -0
  382. arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
  383. arctrl/py/fable_modules/fable_library/string_.py +573 -0
  384. arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
  385. arctrl/py/fable_modules/fable_library/system_text.py +237 -0
  386. arctrl/py/fable_modules/fable_library/task.py +116 -0
  387. arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
  388. arctrl/py/fable_modules/fable_library/thread.py +5 -0
  389. arctrl/py/fable_modules/fable_library/time_span.py +283 -0
  390. arctrl/py/fable_modules/fable_library/timer.py +24 -0
  391. arctrl/py/fable_modules/fable_library/types.py +401 -0
  392. arctrl/py/fable_modules/fable_library/uri.py +109 -0
  393. arctrl/py/fable_modules/fable_library/util.py +2735 -0
  394. arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
  395. arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
  396. arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
  397. arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
  398. arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
  399. arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
  400. arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
  401. arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
  402. arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
  403. arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
  404. arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
  405. arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
  406. arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
  407. arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
  408. arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
  409. arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
  410. arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
  411. arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
  412. arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
  413. arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
  414. arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
  415. arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
  416. arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
  417. arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
  418. arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
  419. arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
  420. arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
  421. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +340 -0
  422. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +466 -0
  423. arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
  424. arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
  425. arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
  426. arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
  427. arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
  428. arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
  429. arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
  430. arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
  431. arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
  432. arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +463 -0
  433. arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
  434. arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
  435. arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
  436. arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
  437. arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
  438. arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
  439. arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +54 -0
  440. arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
  441. arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
  442. arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +216 -0
  443. arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
  444. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +43 -0
  445. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +190 -0
  446. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +92 -0
  447. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +77 -0
  448. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
  449. arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
  450. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +461 -0
  451. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +117 -0
  452. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
  453. arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
  454. arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +236 -0
  455. arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
  456. arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
  457. arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +192 -0
  458. arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +610 -0
  459. arctrl/py/fable_modules/fs_spreadsheet/hash_codes.py +60 -0
  460. arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +329 -0
  461. arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
  462. arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +60 -0
  463. arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
  464. arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
  465. arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
  466. arctrl/py/fable_modules/fs_spreadsheet_py/table.py +54 -0
  467. arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +41 -0
  468. arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +52 -0
  469. arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
  470. arctrl/py/fable_modules/siren/__init__.py +0 -0
  471. arctrl/py/fable_modules/siren/config.py +1038 -0
  472. arctrl/py/fable_modules/siren/formatting.py +1121 -0
  473. arctrl/py/fable_modules/siren/siren.py +1941 -0
  474. arctrl/py/fable_modules/siren/siren_types.py +1229 -0
  475. arctrl/py/fable_modules/siren/theme_variables.py +517 -0
  476. arctrl/py/fable_modules/siren/util.py +37 -0
  477. arctrl/py/fable_modules/siren/yaml.py +101 -0
  478. arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
  479. arctrl/py/fable_modules/thoth_json_core/decode.py +1614 -0
  480. arctrl/py/fable_modules/thoth_json_core/encode.py +305 -0
  481. arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
  482. arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
  483. arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
  484. arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
  485. arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
  486. arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
  487. arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
  488. arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
  489. arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
  490. arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
  491. arctrl/py/fable_modules/yamlicious/encode.py +84 -0
  492. arctrl/py/fable_modules/yamlicious/flow_to_block.py +994 -0
  493. arctrl/py/fable_modules/yamlicious/library.py +10 -0
  494. arctrl/py/fable_modules/yamlicious/persil.py +57 -0
  495. arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
  496. arctrl/py/fable_modules/yamlicious/reader.py +739 -0
  497. arctrl/py/fable_modules/yamlicious/regex.py +29 -0
  498. arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +265 -0
  499. arctrl/py/fable_modules/yamlicious/writer.py +175 -0
  500. arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
  501. arctrl/py/json.py +389 -0
  502. arctrl/py/license.py +169 -0
  503. arctrl/py/rocrate_io.py +242 -0
  504. arctrl/py/template_web.py +23 -0
  505. arctrl/py/xlsx.py +212 -0
  506. arctrl/py/yaml.py +79 -0
  507. arctrl/rocrate.py +21 -0
  508. arctrl-3.0.0.dist-info/METADATA +157 -0
  509. arctrl-3.0.0.dist-info/RECORD +511 -0
  510. arctrl-3.0.0.dist-info/WHEEL +4 -0
  511. arctrl-3.0.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,462 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Callable
4
+ from typing import Any, Generic, TypeVar
5
+
6
+ from .array_ import copy_to, fill, initialize
7
+ from .double import divide
8
+ from .reflection import TypeInfo, class_type
9
+ from .seq import append, delay, empty, enumerate_while, singleton, to_array
10
+ from .types import Array, FSharpRef
11
+ from .util import (
12
+ IEnumerable_1,
13
+ IEnumerator,
14
+ compare,
15
+ compare_primitives,
16
+ get_enumerator,
17
+ max,
18
+ structural_hash,
19
+ to_iterator,
20
+ )
21
+ from .util import equals as equals_1
22
+
23
+
24
+ _T = TypeVar("_T")
25
+
26
+
27
+ def _expr7(gen0: TypeInfo) -> TypeInfo:
28
+ return class_type("System.Collections.Generic.Comparer`1", [gen0], Comparer_1)
29
+
30
+
31
+ class Comparer_1(Generic[_T]):
32
+ def __init__(self, comparison: Callable[[_T, _T], int]) -> None:
33
+ self.comparison: Callable[[_T, _T], int] = comparison
34
+
35
+ def Compare(self, x: _T, y: _T) -> int:
36
+ _: Comparer_1[_T] = self
37
+ return _.comparison(x, y)
38
+
39
+
40
+ Comparer_1_reflection = _expr7
41
+
42
+
43
+ def Comparer_1__ctor_47C913C(comparison: Callable[[_T, _T], int]) -> Comparer_1[_T]:
44
+ return Comparer_1(comparison)
45
+
46
+
47
+ def Comparer_1_get_Default(__unit: None = None) -> Comparer_1[Any]:
48
+ return Comparer_1__ctor_47C913C(compare)
49
+
50
+
51
+ def Comparer_1_Create_47C913C(comparison: Callable[[_T, _T], int]) -> Comparer_1[Any]:
52
+ return Comparer_1__ctor_47C913C(comparison)
53
+
54
+
55
+ def Comparer_1__Compare_5BDDA0(_: Comparer_1[Any], x: Any, y: Any) -> int:
56
+ return _.comparison(x, y)
57
+
58
+
59
+ def _expr8(gen0: TypeInfo) -> TypeInfo:
60
+ return class_type("System.Collections.Generic.EqualityComparer`1", [gen0], EqualityComparer_1)
61
+
62
+
63
+ class EqualityComparer_1(Generic[_T]):
64
+ def __init__(self, equals: Callable[[_T, _T], bool], get_hash_code: Callable[[_T], int]) -> None:
65
+ self.equals: Callable[[_T, _T], bool] = equals
66
+ self.get_hash_code: Callable[[_T], int] = get_hash_code
67
+
68
+ def __eq__(self, x: _T, y: _T) -> bool:
69
+ _: EqualityComparer_1[_T] = self
70
+ return _.equals(x, y)
71
+
72
+ def __hash__(self, x: _T | None = None) -> int:
73
+ _: EqualityComparer_1[_T] = self
74
+ return _.get_hash_code(x)
75
+
76
+
77
+ EqualityComparer_1_reflection = _expr8
78
+
79
+
80
+ def EqualityComparer_1__ctor_Z6EE254AB(
81
+ equals: Callable[[_T, _T], bool], get_hash_code: Callable[[_T], int]
82
+ ) -> EqualityComparer_1[_T]:
83
+ return EqualityComparer_1(equals, get_hash_code)
84
+
85
+
86
+ def EqualityComparer_1_get_Default(__unit: None = None) -> EqualityComparer_1[Any]:
87
+ return EqualityComparer_1__ctor_Z6EE254AB(equals_1, structural_hash)
88
+
89
+
90
+ def EqualityComparer_1_Create_Z6EE254AB(
91
+ equals: Callable[[_T, _T], bool], get_hash_code: Callable[[_T], int]
92
+ ) -> EqualityComparer_1[Any]:
93
+ return EqualityComparer_1__ctor_Z6EE254AB(equals, get_hash_code)
94
+
95
+
96
+ def EqualityComparer_1__Equals_5BDDA0(_: EqualityComparer_1[Any], x: Any, y: Any) -> bool:
97
+ return _.equals(x, y)
98
+
99
+
100
+ def EqualityComparer_1__GetHashCode_2B595(_: EqualityComparer_1[Any], x: Any) -> int:
101
+ return _.get_hash_code(x)
102
+
103
+
104
+ def _expr13(gen0: TypeInfo) -> TypeInfo:
105
+ return class_type("System.Collections.Generic.Stack`1", [gen0], Stack_1)
106
+
107
+
108
+ class Stack_1(Generic[_T]):
109
+ def __init__(self, initial_contents: Array[Any], initial_count: int) -> None:
110
+ self.contents: Array[_T] = initial_contents
111
+ self.count: int = initial_count or 0
112
+
113
+ def GetEnumerator(self, __unit: None = None) -> IEnumerator[_T]:
114
+ _: Stack_1[_T] = self
115
+
116
+ def _arrow12(__unit: None = None) -> IEnumerable_1[_T]:
117
+ index: int = (_.count - 1) or 0
118
+
119
+ def _arrow9(__unit: None = None) -> bool:
120
+ return index >= 0
121
+
122
+ def _arrow11(__unit: None = None) -> IEnumerable_1[_T]:
123
+ def _arrow10(__unit: None = None) -> IEnumerable_1[_T]:
124
+ nonlocal index
125
+ index = (index - 1) or 0
126
+ return empty()
127
+
128
+ return append(singleton(_.contents[index]), delay(_arrow10))
129
+
130
+ return enumerate_while(_arrow9, delay(_arrow11))
131
+
132
+ return get_enumerator(delay(_arrow12))
133
+
134
+ def __iter__(self) -> IEnumerator[_T]:
135
+ return to_iterator(self.GetEnumerator())
136
+
137
+ def System_Collections_IEnumerable_GetEnumerator(self, __unit: None = None) -> IEnumerator[Any]:
138
+ this: Stack_1[_T] = self
139
+ return get_enumerator(this)
140
+
141
+
142
+ Stack_1_reflection = _expr13
143
+
144
+
145
+ def Stack_1__ctor_Z3B4C077E(initial_contents: Array[Any], initial_count: int) -> Stack_1[_T]:
146
+ return Stack_1(initial_contents, initial_count)
147
+
148
+
149
+ def Stack_1__ctor_Z524259A4(initial_capacity: int) -> Stack_1[Any]:
150
+ return Stack_1__ctor_Z3B4C077E(fill([0] * initial_capacity, 0, initial_capacity, None), 0)
151
+
152
+
153
+ def Stack_1__ctor(__unit: None = None) -> Stack_1[Any]:
154
+ return Stack_1__ctor_Z524259A4(4)
155
+
156
+
157
+ def Stack_1__ctor_BB573A(xs: IEnumerable_1[Any]) -> Stack_1[Any]:
158
+ arr: Array[_T] = list(xs)
159
+ return Stack_1__ctor_Z3B4C077E(arr, len(arr))
160
+
161
+
162
+ def Stack_1__Ensure_Z524259A4(_: Stack_1[Any], new_size: int) -> None:
163
+ old_size: int = len(_.contents) or 0
164
+ if new_size > old_size:
165
+ old: Array[_T] = _.contents
166
+
167
+ def _arrow14(x: int, y: int, _: Any = _, new_size: Any = new_size) -> int:
168
+ return compare_primitives(x, y)
169
+
170
+ def _arrow15(x: int, y: int, _: Any = _, new_size: Any = new_size) -> int:
171
+ return compare_primitives(x, y)
172
+
173
+ _.contents = fill([0] * max(_arrow14, new_size, old_size * 2), 0, max(_arrow15, new_size, old_size * 2), None)
174
+ copy_to(old, 0, _.contents, 0, _.count)
175
+
176
+
177
+ def Stack_1__get_Count(_: Stack_1[Any]) -> int:
178
+ return _.count
179
+
180
+
181
+ def Stack_1__Pop(_: Stack_1[Any]) -> Any:
182
+ _.count = (_.count - 1) or 0
183
+ return _.contents[_.count]
184
+
185
+
186
+ def Stack_1__Peek(_: Stack_1[Any]) -> Any:
187
+ return _.contents[_.count - 1]
188
+
189
+
190
+ def Stack_1__Contains_2B595(_: Stack_1[Any], x: Any) -> bool:
191
+ found: bool = False
192
+ i: int = 0
193
+ while (not found) if (i < _.count) else False:
194
+ if equals_1(x, _.contents[i]):
195
+ found = True
196
+
197
+ else:
198
+ i = (i + 1) or 0
199
+
200
+ return found
201
+
202
+
203
+ def Stack_1__TryPeek_1F3DB691(this: Stack_1[Any], result: FSharpRef[_T]) -> bool:
204
+ if this.count > 0:
205
+ result.contents = Stack_1__Peek(this)
206
+ return True
207
+
208
+ else:
209
+ return False
210
+
211
+
212
+ def Stack_1__TryPop_1F3DB691(this: Stack_1[Any], result: FSharpRef[_T]) -> bool:
213
+ if this.count > 0:
214
+ result.contents = Stack_1__Pop(this)
215
+ return True
216
+
217
+ else:
218
+ return False
219
+
220
+
221
+ def Stack_1__Push_2B595(this: Stack_1[Any], x: Any) -> None:
222
+ Stack_1__Ensure_Z524259A4(this, this.count + 1)
223
+ this.contents[this.count] = x
224
+ this.count = (this.count + 1) or 0
225
+
226
+
227
+ def Stack_1__Clear(_: Stack_1[Any]) -> None:
228
+ _.count = 0
229
+ fill(_.contents, 0, len(_.contents), None)
230
+
231
+
232
+ def Stack_1__TrimExcess(this: Stack_1[Any]) -> None:
233
+ if divide(this.count, len(this.contents)) > 0.9:
234
+ Stack_1__Ensure_Z524259A4(this, this.count)
235
+
236
+
237
+ def Stack_1__ToArray(_: Stack_1[Any]) -> Array[Any]:
238
+ def _arrow16(i: int, _: Any = _) -> _T:
239
+ return _.contents[(_.count - 1) - i]
240
+
241
+ return initialize(_.count, _arrow16, None)
242
+
243
+
244
+ def _expr17(gen0: TypeInfo) -> TypeInfo:
245
+ return class_type("System.Collections.Generic.Queue`1", [gen0], Queue_1)
246
+
247
+
248
+ class Queue_1(Generic[_T]):
249
+ def __init__(self, initial_contents: Array[Any], initial_count: int) -> None:
250
+ self.contents: Array[_T] = initial_contents
251
+ self.count: int = initial_count or 0
252
+ self.head: int = 0
253
+ self.tail: int = (0 if (initial_count == len(self.contents)) else initial_count) or 0
254
+
255
+ def GetEnumerator(self, __unit: None = None) -> IEnumerator[_T]:
256
+ _: Queue_1[_T] = self
257
+ return get_enumerator(Queue_1__toSeq(_))
258
+
259
+ def __iter__(self) -> IEnumerator[_T]:
260
+ return to_iterator(self.GetEnumerator())
261
+
262
+ def System_Collections_IEnumerable_GetEnumerator(self, __unit: None = None) -> IEnumerator[Any]:
263
+ this: Queue_1[_T] = self
264
+ return get_enumerator(this)
265
+
266
+
267
+ Queue_1_reflection = _expr17
268
+
269
+
270
+ def Queue_1__ctor_Z3B4C077E(initial_contents: Array[Any], initial_count: int) -> Queue_1[_T]:
271
+ return Queue_1(initial_contents, initial_count)
272
+
273
+
274
+ def Queue_1__ctor_Z524259A4(initial_capacity: int) -> Queue_1[Any]:
275
+ if initial_capacity < 0:
276
+ raise Exception("capacity is less than 0")
277
+
278
+ return Queue_1__ctor_Z3B4C077E(fill([0] * initial_capacity, 0, initial_capacity, None), 0)
279
+
280
+
281
+ def Queue_1__ctor(__unit: None = None) -> Queue_1[Any]:
282
+ return Queue_1__ctor_Z524259A4(4)
283
+
284
+
285
+ def Queue_1__ctor_BB573A(xs: IEnumerable_1[Any]) -> Queue_1[Any]:
286
+ arr: Array[_T] = list(xs)
287
+ return Queue_1__ctor_Z3B4C077E(arr, len(arr))
288
+
289
+
290
+ def Queue_1__get_Count(_: Queue_1[Any]) -> int:
291
+ return _.count
292
+
293
+
294
+ def Queue_1__Enqueue_2B595(_: Queue_1[Any], value: Any) -> None:
295
+ if _.count == Queue_1__size(_):
296
+ Queue_1__ensure_Z524259A4(_, _.count + 1)
297
+
298
+ _.contents[_.tail] = value
299
+ _.tail = ((_.tail + 1) % Queue_1__size(_)) or 0
300
+ _.count = (_.count + 1) or 0
301
+
302
+
303
+ def Queue_1__Dequeue(_: Queue_1[Any]) -> Any:
304
+ if _.count == 0:
305
+ raise Exception("Queue is empty")
306
+
307
+ value: _T = _.contents[_.head]
308
+ _.head = ((_.head + 1) % Queue_1__size(_)) or 0
309
+ _.count = (_.count - 1) or 0
310
+ return value
311
+
312
+
313
+ def Queue_1__Peek(_: Queue_1[Any]) -> Any:
314
+ if _.count == 0:
315
+ raise Exception("Queue is empty")
316
+
317
+ return _.contents[_.head]
318
+
319
+
320
+ def Queue_1__TryDequeue_1F3DB691(this: Queue_1[Any], result: FSharpRef[_T]) -> bool:
321
+ if this.count == 0:
322
+ return False
323
+
324
+ else:
325
+ result.contents = Queue_1__Dequeue(this)
326
+ return True
327
+
328
+
329
+ def Queue_1__TryPeek_1F3DB691(this: Queue_1[Any], result: FSharpRef[_T]) -> bool:
330
+ if this.count == 0:
331
+ return False
332
+
333
+ else:
334
+ result.contents = Queue_1__Peek(this)
335
+ return True
336
+
337
+
338
+ def Queue_1__Contains_2B595(_: Queue_1[Any], x: Any) -> bool:
339
+ found: bool = False
340
+ i: int = 0
341
+ while (not found) if (i < _.count) else False:
342
+ if equals_1(x, _.contents[Queue_1__toIndex_Z524259A4(_, i)]):
343
+ found = True
344
+
345
+ else:
346
+ i = (i + 1) or 0
347
+
348
+ return found
349
+
350
+
351
+ def Queue_1__Clear(_: Queue_1[Any]) -> None:
352
+ _.count = 0
353
+ _.head = 0
354
+ _.tail = 0
355
+ fill(_.contents, 0, Queue_1__size(_), None)
356
+
357
+
358
+ def Queue_1__TrimExcess(_: Queue_1[Any]) -> None:
359
+ if divide(_.count, len(_.contents)) > 0.9:
360
+ Queue_1__ensure_Z524259A4(_, _.count)
361
+
362
+
363
+ def Queue_1__ToArray(_: Queue_1[Any]) -> Array[Any]:
364
+ return to_array(Queue_1__toSeq(_))
365
+
366
+
367
+ def Queue_1__CopyTo_Z3B4C077E(_: Queue_1[Any], target: Array[Any], start: int) -> None:
368
+ i: int = start or 0
369
+ with get_enumerator(Queue_1__toSeq(_)) as enumerator:
370
+ while enumerator.System_Collections_IEnumerator_MoveNext():
371
+ item: _T = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
372
+ target[i] = item
373
+ i = (i + 1) or 0
374
+
375
+
376
+ def Queue_1__size(this: Queue_1[Any]) -> int:
377
+ return len(this.contents)
378
+
379
+
380
+ def Queue_1__toIndex_Z524259A4(this: Queue_1[Any], i: int) -> int:
381
+ return (this.head + i) % Queue_1__size(this)
382
+
383
+
384
+ def Queue_1__ensure_Z524259A4(this: Queue_1[Any], required_size: int) -> None:
385
+ new_buffer: Array[_T] = fill([0] * required_size, 0, required_size, None)
386
+ if this.head < this.tail:
387
+ copy_to(this.contents, this.head, new_buffer, 0, this.count)
388
+
389
+ else:
390
+ copy_to(this.contents, this.head, new_buffer, 0, Queue_1__size(this) - this.head)
391
+ copy_to(this.contents, 0, new_buffer, Queue_1__size(this) - this.head, this.tail)
392
+
393
+ this.head = 0
394
+ this.contents = new_buffer
395
+ this.tail = (0 if (this.count == Queue_1__size(this)) else this.count) or 0
396
+
397
+
398
+ def Queue_1__toSeq(this: Queue_1[Any]) -> IEnumerable_1[Any]:
399
+ def _arrow21(__unit: None = None, this: Any = this) -> IEnumerable_1[_T]:
400
+ i: int = 0
401
+
402
+ def _arrow18(__unit: None = None) -> bool:
403
+ return i < this.count
404
+
405
+ def _arrow20(__unit: None = None) -> IEnumerable_1[_T]:
406
+ def _arrow19(__unit: None = None) -> IEnumerable_1[_T]:
407
+ nonlocal i
408
+ i = (i + 1) or 0
409
+ return empty()
410
+
411
+ return append(singleton(this.contents[Queue_1__toIndex_Z524259A4(this, i)]), delay(_arrow19))
412
+
413
+ return enumerate_while(_arrow18, delay(_arrow20))
414
+
415
+ return delay(_arrow21)
416
+
417
+
418
+ __all__ = [
419
+ "Comparer_1_reflection",
420
+ "Comparer_1_get_Default",
421
+ "Comparer_1_Create_47C913C",
422
+ "Comparer_1__Compare_5BDDA0",
423
+ "EqualityComparer_1_reflection",
424
+ "EqualityComparer_1_get_Default",
425
+ "EqualityComparer_1_Create_Z6EE254AB",
426
+ "EqualityComparer_1__Equals_5BDDA0",
427
+ "EqualityComparer_1__GetHashCode_2B595",
428
+ "Stack_1_reflection",
429
+ "Stack_1__ctor_Z524259A4",
430
+ "Stack_1__ctor",
431
+ "Stack_1__ctor_BB573A",
432
+ "Stack_1__Ensure_Z524259A4",
433
+ "Stack_1__get_Count",
434
+ "Stack_1__Pop",
435
+ "Stack_1__Peek",
436
+ "Stack_1__Contains_2B595",
437
+ "Stack_1__TryPeek_1F3DB691",
438
+ "Stack_1__TryPop_1F3DB691",
439
+ "Stack_1__Push_2B595",
440
+ "Stack_1__Clear",
441
+ "Stack_1__TrimExcess",
442
+ "Stack_1__ToArray",
443
+ "Queue_1_reflection",
444
+ "Queue_1__ctor_Z524259A4",
445
+ "Queue_1__ctor",
446
+ "Queue_1__ctor_BB573A",
447
+ "Queue_1__get_Count",
448
+ "Queue_1__Enqueue_2B595",
449
+ "Queue_1__Dequeue",
450
+ "Queue_1__Peek",
451
+ "Queue_1__TryDequeue_1F3DB691",
452
+ "Queue_1__TryPeek_1F3DB691",
453
+ "Queue_1__Contains_2B595",
454
+ "Queue_1__Clear",
455
+ "Queue_1__TrimExcess",
456
+ "Queue_1__ToArray",
457
+ "Queue_1__CopyTo_Z3B4C077E",
458
+ "Queue_1__size",
459
+ "Queue_1__toIndex_Z524259A4",
460
+ "Queue_1__ensure_Z524259A4",
461
+ "Queue_1__toSeq",
462
+ ]
@@ -0,0 +1,237 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Any
4
+
5
+ from .reflection import TypeInfo, class_type
6
+ from .string_ import format, is_null_or_empty, join, replace, substring
7
+ from .types import Array, to_string
8
+ from .util import clear, int32_to_string
9
+
10
+
11
+ def _expr3() -> TypeInfo:
12
+ return class_type("System.Text.StringBuilder", None, StringBuilder)
13
+
14
+
15
+ class StringBuilder:
16
+ def __init__(self, value: str, capacity: int) -> None:
17
+ self.buf: Array[str] = []
18
+ if not is_null_or_empty(value):
19
+ (self.buf.append(value))
20
+
21
+ def __str__(self, __unit: None = None) -> str:
22
+ _: StringBuilder = self
23
+ return join("", _.buf)
24
+
25
+
26
+ StringBuilder_reflection = _expr3
27
+
28
+
29
+ def StringBuilder__ctor_Z18115A39(value: str, capacity: int) -> StringBuilder:
30
+ return StringBuilder(value, capacity)
31
+
32
+
33
+ def StringBuilder__ctor_Z524259A4(capacity: int) -> StringBuilder:
34
+ return StringBuilder__ctor_Z18115A39("", capacity)
35
+
36
+
37
+ def StringBuilder__ctor_Z721C83C5(value: str) -> StringBuilder:
38
+ return StringBuilder__ctor_Z18115A39(value, 16)
39
+
40
+
41
+ def StringBuilder__ctor(__unit: None = None) -> StringBuilder:
42
+ return StringBuilder__ctor_Z18115A39("", 16)
43
+
44
+
45
+ def StringBuilder__Append_Z721C83C5(x: StringBuilder, s: str) -> StringBuilder:
46
+ (x.buf.append(s))
47
+ return x
48
+
49
+
50
+ def StringBuilder__Append_487EF8FB(x: StringBuilder, s: str, start_index: int, count: int) -> StringBuilder:
51
+ (x.buf.append(substring(s, start_index, count)))
52
+ return x
53
+
54
+
55
+ def StringBuilder__Append_244C7CD6(x: StringBuilder, c: str) -> StringBuilder:
56
+ (x.buf.append(c))
57
+ return x
58
+
59
+
60
+ def StringBuilder__Append_Z524259A4(x: StringBuilder, o: int) -> StringBuilder:
61
+ (x.buf.append(int32_to_string(o)))
62
+ return x
63
+
64
+
65
+ def StringBuilder__Append_5E38073B(x: StringBuilder, o: float) -> StringBuilder:
66
+ (x.buf.append(to_string(o)))
67
+ return x
68
+
69
+
70
+ def StringBuilder__Append_Z1FBCCD16(x: StringBuilder, o: bool) -> StringBuilder:
71
+ (x.buf.append(to_string(o)))
72
+ return x
73
+
74
+
75
+ def StringBuilder__Append_4E60E31B(x: StringBuilder, o: Any = None) -> StringBuilder:
76
+ (x.buf.append(to_string(o)))
77
+ return x
78
+
79
+
80
+ def StringBuilder__Append_Z372E4D23(x: StringBuilder, cs: Array[str]) -> StringBuilder:
81
+ (x.buf.append("".join(cs)))
82
+ return x
83
+
84
+
85
+ def StringBuilder__Append_43A65C09(x: StringBuilder, s: StringBuilder) -> StringBuilder:
86
+ (x.buf.append(to_string(s)))
87
+ return x
88
+
89
+
90
+ def StringBuilder__AppendFormat_433E080(x: StringBuilder, fmt: str, o: Any = None) -> StringBuilder:
91
+ (x.buf.append(format(fmt, o)))
92
+ return x
93
+
94
+
95
+ def StringBuilder__AppendFormat_Z3B30EC65(x: StringBuilder, fmt: str, o1: Any = None, o2: Any = None) -> StringBuilder:
96
+ (x.buf.append(format(fmt, o1, o2)))
97
+ return x
98
+
99
+
100
+ def StringBuilder__AppendFormat_10D165E0(
101
+ x: StringBuilder, fmt: str, o1: Any = None, o2: Any = None, o3: Any = None
102
+ ) -> StringBuilder:
103
+ (x.buf.append(format(fmt, o1, o2, o3)))
104
+ return x
105
+
106
+
107
+ def StringBuilder__AppendFormat_Z17053F5(x: StringBuilder, fmt: str, arr: Array[Any]) -> StringBuilder:
108
+ (x.buf.append(format(fmt, *arr)))
109
+ return x
110
+
111
+
112
+ def StringBuilder__AppendFormat_Z696D8D1B(
113
+ x: StringBuilder, provider: IFormatProvider, fmt: str, o: Any = None
114
+ ) -> StringBuilder:
115
+ (x.buf.append(format(provider, fmt, o)))
116
+ return x
117
+
118
+
119
+ def StringBuilder__AppendFormat_26802C9E(
120
+ x: StringBuilder, provider: IFormatProvider, fmt: str, o1: Any = None, o2: Any = None
121
+ ) -> StringBuilder:
122
+ (x.buf.append(format(provider, fmt, o1, o2)))
123
+ return x
124
+
125
+
126
+ def StringBuilder__AppendFormat_Z471ADCBB(
127
+ x: StringBuilder, provider: IFormatProvider, fmt: str, o1: Any = None, o2: Any = None, o3: Any = None
128
+ ) -> StringBuilder:
129
+ (x.buf.append(format(provider, fmt, o1, o2, o3)))
130
+ return x
131
+
132
+
133
+ def StringBuilder__AppendFormat_6C2E3E6E(
134
+ x: StringBuilder, provider: IFormatProvider, fmt: str, arr: Array[Any]
135
+ ) -> StringBuilder:
136
+ (x.buf.append(format(provider, fmt, *arr)))
137
+ return x
138
+
139
+
140
+ def StringBuilder__AppendLine(x: StringBuilder) -> StringBuilder:
141
+ (x.buf.append("\n"))
142
+ return x
143
+
144
+
145
+ def StringBuilder__AppendLine_Z721C83C5(x: StringBuilder, s: str) -> StringBuilder:
146
+ (x.buf.append(s))
147
+ (x.buf.append("\n"))
148
+ return x
149
+
150
+
151
+ def StringBuilder__Clear(x: StringBuilder) -> StringBuilder:
152
+ clear(x.buf)
153
+ return x
154
+
155
+
156
+ def StringBuilder__get_Chars_Z524259A4(x: StringBuilder, index: int) -> str:
157
+ len_1: int = 0
158
+ i: int = -1
159
+ while (len_1 < index) if ((i + 1) < len(x.buf)) else False:
160
+ i = (i + 1) or 0
161
+ len_1 = (len_1 + len(x.buf[i])) or 0
162
+ if True if (True if (index < 0) else (i < 0)) else (i >= len(x.buf)):
163
+ raise Exception("Index was outside the bounds of the array")
164
+
165
+ else:
166
+ pos: int = ((len_1 - index) - 1) or 0
167
+ return x.buf[i][pos]
168
+
169
+
170
+ def StringBuilder__set_Chars_413E0D0A(x: StringBuilder, index: int, value: str) -> None:
171
+ len_1: int = 0
172
+ i: int = -1
173
+ while (len_1 < index) if ((i + 1) < len(x.buf)) else False:
174
+ i = (i + 1) or 0
175
+ len_1 = (len_1 + len(x.buf[i])) or 0
176
+ if True if (True if (index < 0) else (i < 0)) else (i >= len(x.buf)):
177
+ raise Exception("Index was outside the bounds of the array")
178
+
179
+ else:
180
+ pos: int = ((len_1 - index) - 1) or 0
181
+ x.buf[i] = (x.buf[i][0 : (pos - 1) + 1] + value) + x.buf[i][pos + 1 : len(x.buf[i])]
182
+
183
+
184
+ def StringBuilder__Replace_Z766F94C0(x: StringBuilder, old_value: str, new_value: str) -> StringBuilder:
185
+ for i in range(len(x.buf) - 1, 0 - 1, -1):
186
+ x.buf[i] = replace(x.buf[i], old_value, new_value)
187
+ return x
188
+
189
+
190
+ def StringBuilder__Replace_Z384F8060(x: StringBuilder, old_value: str, new_value: str) -> StringBuilder:
191
+ str_1: str = replace(to_string(x), old_value, new_value)
192
+ return StringBuilder__Append_Z721C83C5(StringBuilder__Clear(x), str_1)
193
+
194
+
195
+ def StringBuilder__get_Length(x: StringBuilder) -> int:
196
+ len_1: int = 0
197
+ for i in range(len(x.buf) - 1, 0 - 1, -1):
198
+ len_1 = (len_1 + len(x.buf[i])) or 0
199
+ return len_1
200
+
201
+
202
+ def StringBuilder__ToString_Z37302880(x: StringBuilder, first_index: int, length: int) -> str:
203
+ return substring(to_string(x), first_index, length)
204
+
205
+
206
+ __all__ = [
207
+ "StringBuilder_reflection",
208
+ "StringBuilder__ctor_Z524259A4",
209
+ "StringBuilder__ctor_Z721C83C5",
210
+ "StringBuilder__ctor",
211
+ "StringBuilder__Append_Z721C83C5",
212
+ "StringBuilder__Append_487EF8FB",
213
+ "StringBuilder__Append_244C7CD6",
214
+ "StringBuilder__Append_Z524259A4",
215
+ "StringBuilder__Append_5E38073B",
216
+ "StringBuilder__Append_Z1FBCCD16",
217
+ "StringBuilder__Append_4E60E31B",
218
+ "StringBuilder__Append_Z372E4D23",
219
+ "StringBuilder__Append_43A65C09",
220
+ "StringBuilder__AppendFormat_433E080",
221
+ "StringBuilder__AppendFormat_Z3B30EC65",
222
+ "StringBuilder__AppendFormat_10D165E0",
223
+ "StringBuilder__AppendFormat_Z17053F5",
224
+ "StringBuilder__AppendFormat_Z696D8D1B",
225
+ "StringBuilder__AppendFormat_26802C9E",
226
+ "StringBuilder__AppendFormat_Z471ADCBB",
227
+ "StringBuilder__AppendFormat_6C2E3E6E",
228
+ "StringBuilder__AppendLine",
229
+ "StringBuilder__AppendLine_Z721C83C5",
230
+ "StringBuilder__Clear",
231
+ "StringBuilder__get_Chars_Z524259A4",
232
+ "StringBuilder__set_Chars_413E0D0A",
233
+ "StringBuilder__Replace_Z766F94C0",
234
+ "StringBuilder__Replace_Z384F8060",
235
+ "StringBuilder__get_Length",
236
+ "StringBuilder__ToString_Z37302880",
237
+ ]