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.
- arctrl/__init__.py +23 -0
- arctrl/cwl.py +12 -0
- arctrl/py/CWL/__init__.py +0 -0
- arctrl/py/CWL/cwlprocessing_unit.py +221 -0
- arctrl/py/CWL/cwltypes.py +364 -0
- arctrl/py/CWL/decode.py +3532 -0
- arctrl/py/CWL/encode.py +1905 -0
- arctrl/py/CWL/expression_tool_description.py +192 -0
- arctrl/py/CWL/hash_helpers.py +60 -0
- arctrl/py/CWL/inputs.py +122 -0
- arctrl/py/CWL/operation_description.py +169 -0
- arctrl/py/CWL/outputs.py +171 -0
- arctrl/py/CWL/parameter_reference.py +74 -0
- arctrl/py/CWL/requirements.py +350 -0
- arctrl/py/CWL/tool_description.py +192 -0
- arctrl/py/CWL/workflow_description.py +181 -0
- arctrl/py/CWL/workflow_steps.py +354 -0
- arctrl/py/Contract/__init__.py +0 -0
- arctrl/py/Contract/arc.py +89 -0
- arctrl/py/Contract/arc_assay.py +125 -0
- arctrl/py/Contract/arc_investigation.py +88 -0
- arctrl/py/Contract/arc_run.py +291 -0
- arctrl/py/Contract/arc_study.py +126 -0
- arctrl/py/Contract/arc_workflow.py +213 -0
- arctrl/py/Contract/contract.py +153 -0
- arctrl/py/Contract/datamap.py +396 -0
- arctrl/py/Contract/git.py +116 -0
- arctrl/py/Contract/license.py +58 -0
- arctrl/py/Contract/validation_packages_config.py +107 -0
- arctrl/py/ContractIO/__init__.py +0 -0
- arctrl/py/ContractIO/contract_io.py +350 -0
- arctrl/py/ContractIO/file_system_helper.py +264 -0
- arctrl/py/Conversion/__init__.py +0 -0
- arctrl/py/Conversion/assay.py +151 -0
- arctrl/py/Conversion/basic.py +559 -0
- arctrl/py/Conversion/column_index.py +91 -0
- arctrl/py/Conversion/datamap.py +36 -0
- arctrl/py/Conversion/date_time.py +32 -0
- arctrl/py/Conversion/investigation.py +171 -0
- arctrl/py/Conversion/person.py +148 -0
- arctrl/py/Conversion/process.py +828 -0
- arctrl/py/Conversion/run.py +367 -0
- arctrl/py/Conversion/scholarly_article.py +163 -0
- arctrl/py/Conversion/study.py +99 -0
- arctrl/py/Conversion/table.py +229 -0
- arctrl/py/Conversion/workflow.py +680 -0
- arctrl/py/Core/Helper/__init__.py +0 -0
- arctrl/py/Core/Helper/collections_.py +512 -0
- arctrl/py/Core/Helper/date_time.py +26 -0
- arctrl/py/Core/Helper/hash_codes.py +60 -0
- arctrl/py/Core/Helper/identifier.py +290 -0
- arctrl/py/Core/Helper/orcid.py +42 -0
- arctrl/py/Core/Helper/printer.py +13 -0
- arctrl/py/Core/Helper/regex.py +554 -0
- arctrl/py/Core/Helper/sem_ver.py +71 -0
- arctrl/py/Core/Helper/url.py +148 -0
- arctrl/py/Core/Process/__init__.py +0 -0
- arctrl/py/Core/Process/column_index.py +280 -0
- arctrl/py/Core/Process/component.py +200 -0
- arctrl/py/Core/Process/factor.py +151 -0
- arctrl/py/Core/Process/factor_value.py +182 -0
- arctrl/py/Core/Process/material.py +74 -0
- arctrl/py/Core/Process/material_attribute.py +95 -0
- arctrl/py/Core/Process/material_attribute_value.py +184 -0
- arctrl/py/Core/Process/material_type.py +45 -0
- arctrl/py/Core/Process/process.py +477 -0
- arctrl/py/Core/Process/process_input.py +265 -0
- arctrl/py/Core/Process/process_output.py +235 -0
- arctrl/py/Core/Process/process_parameter_value.py +200 -0
- arctrl/py/Core/Process/process_sequence.py +435 -0
- arctrl/py/Core/Process/protocol.py +175 -0
- arctrl/py/Core/Process/protocol_parameter.py +98 -0
- arctrl/py/Core/Process/sample.py +82 -0
- arctrl/py/Core/Process/source.py +62 -0
- arctrl/py/Core/Table/__init__.py +0 -0
- arctrl/py/Core/Table/arc_table.py +1206 -0
- arctrl/py/Core/Table/arc_table_aux.py +1308 -0
- arctrl/py/Core/Table/arc_tables.py +574 -0
- arctrl/py/Core/Table/composite_cell.py +319 -0
- arctrl/py/Core/Table/composite_column.py +73 -0
- arctrl/py/Core/Table/composite_header.py +739 -0
- arctrl/py/Core/__init__.py +0 -0
- arctrl/py/Core/arc_types.py +5312 -0
- arctrl/py/Core/comment.py +128 -0
- arctrl/py/Core/comment_list.py +127 -0
- arctrl/py/Core/conversion.py +1375 -0
- arctrl/py/Core/data.py +247 -0
- arctrl/py/Core/data_context.py +157 -0
- arctrl/py/Core/data_file.py +112 -0
- arctrl/py/Core/datamap.py +217 -0
- arctrl/py/Core/identifier_setters.py +43 -0
- arctrl/py/Core/iproperty_value.py +36 -0
- arctrl/py/Core/ontology_annotation.py +298 -0
- arctrl/py/Core/ontology_source_reference.py +114 -0
- arctrl/py/Core/person.py +259 -0
- arctrl/py/Core/publication.py +161 -0
- arctrl/py/Core/template.py +231 -0
- arctrl/py/Core/templates.py +148 -0
- arctrl/py/Core/uri.py +11 -0
- arctrl/py/Core/value.py +188 -0
- arctrl/py/FileSystem/__init__.py +0 -0
- arctrl/py/FileSystem/commit.py +21 -0
- arctrl/py/FileSystem/default_gitattributes.py +1 -0
- arctrl/py/FileSystem/default_gitignore.py +1 -0
- arctrl/py/FileSystem/default_license.py +1 -0
- arctrl/py/FileSystem/file_system.py +58 -0
- arctrl/py/FileSystem/file_system_tree.py +483 -0
- arctrl/py/FileSystem/path.py +266 -0
- arctrl/py/Json/Datamap/__init__.py +0 -0
- arctrl/py/Json/Datamap/data_context.py +101 -0
- arctrl/py/Json/Datamap/datamap.py +53 -0
- arctrl/py/Json/Process/__init__.py +0 -0
- arctrl/py/Json/Process/assay_materials.py +46 -0
- arctrl/py/Json/Process/component.py +125 -0
- arctrl/py/Json/Process/factor.py +107 -0
- arctrl/py/Json/Process/factor_value.py +101 -0
- arctrl/py/Json/Process/material.py +226 -0
- arctrl/py/Json/Process/material_attribute.py +79 -0
- arctrl/py/Json/Process/material_attribute_value.py +101 -0
- arctrl/py/Json/Process/material_type.py +53 -0
- arctrl/py/Json/Process/process.py +296 -0
- arctrl/py/Json/Process/process_input.py +83 -0
- arctrl/py/Json/Process/process_output.py +67 -0
- arctrl/py/Json/Process/process_parameter_value.py +81 -0
- arctrl/py/Json/Process/protocol.py +354 -0
- arctrl/py/Json/Process/protocol_parameter.py +91 -0
- arctrl/py/Json/Process/sample.py +277 -0
- arctrl/py/Json/Process/source.py +214 -0
- arctrl/py/Json/Process/study_materials.py +52 -0
- arctrl/py/Json/Process/value.py +56 -0
- arctrl/py/Json/ROCrate/__init__.py +0 -0
- arctrl/py/Json/ROCrate/ldcontext.py +143 -0
- arctrl/py/Json/ROCrate/ldgraph.py +117 -0
- arctrl/py/Json/ROCrate/ldnode.py +304 -0
- arctrl/py/Json/ROCrate/ldref.py +44 -0
- arctrl/py/Json/ROCrate/ldvalue.py +102 -0
- arctrl/py/Json/Table/__init__.py +0 -0
- arctrl/py/Json/Table/arc_table.py +375 -0
- arctrl/py/Json/Table/cell_table.py +83 -0
- arctrl/py/Json/Table/composite_cell.py +136 -0
- arctrl/py/Json/Table/composite_header.py +67 -0
- arctrl/py/Json/Table/iotype.py +24 -0
- arctrl/py/Json/Table/oatable.py +82 -0
- arctrl/py/Json/Table/templates.py +281 -0
- arctrl/py/Json/__init__.py +0 -0
- arctrl/py/Json/assay.py +600 -0
- arctrl/py/Json/comment.py +206 -0
- arctrl/py/Json/context/rocrate/__init__.py +0 -0
- arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
- arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
- arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
- arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
- arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
- arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
- arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
- arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
- arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
- arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
- arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
- arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
- arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
- arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
- arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
- arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
- arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
- arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
- arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
- arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
- arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
- arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
- arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
- arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
- arctrl/py/Json/converter_options.py +23 -0
- arctrl/py/Json/data.py +356 -0
- arctrl/py/Json/data_file.py +63 -0
- arctrl/py/Json/decode.py +271 -0
- arctrl/py/Json/encode.py +140 -0
- arctrl/py/Json/idtable.py +44 -0
- arctrl/py/Json/investigation.py +695 -0
- arctrl/py/Json/ontology_annotation.py +404 -0
- arctrl/py/Json/ontology_source_reference.py +255 -0
- arctrl/py/Json/person.py +658 -0
- arctrl/py/Json/property_value.py +359 -0
- arctrl/py/Json/publication.py +279 -0
- arctrl/py/Json/run.py +275 -0
- arctrl/py/Json/string_table.py +87 -0
- arctrl/py/Json/study.py +793 -0
- arctrl/py/Json/workflow.py +307 -0
- arctrl/py/JsonIO/Process/__init__.py +0 -0
- arctrl/py/JsonIO/Process/component.py +60 -0
- arctrl/py/JsonIO/Process/factor.py +36 -0
- arctrl/py/JsonIO/Process/factor_value.py +38 -0
- arctrl/py/JsonIO/Process/material.py +60 -0
- arctrl/py/JsonIO/Process/material_attribute.py +38 -0
- arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
- arctrl/py/JsonIO/Process/material_type.py +36 -0
- arctrl/py/JsonIO/Process/process.py +60 -0
- arctrl/py/JsonIO/Process/process_input.py +38 -0
- arctrl/py/JsonIO/Process/process_output.py +60 -0
- arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
- arctrl/py/JsonIO/Process/process_sequence.py +71 -0
- arctrl/py/JsonIO/Process/protocol.py +60 -0
- arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
- arctrl/py/JsonIO/Process/sample.py +60 -0
- arctrl/py/JsonIO/Process/source.py +60 -0
- arctrl/py/JsonIO/Process/study_materials.py +52 -0
- arctrl/py/JsonIO/Process/value.py +32 -0
- arctrl/py/JsonIO/Table/__init__.py +0 -0
- arctrl/py/JsonIO/Table/arc_table.py +103 -0
- arctrl/py/JsonIO/Table/composite_cell.py +36 -0
- arctrl/py/JsonIO/Table/composite_header.py +36 -0
- arctrl/py/JsonIO/Table/compression.py +67 -0
- arctrl/py/JsonIO/Table/iotype.py +36 -0
- arctrl/py/JsonIO/Table/templates.py +113 -0
- arctrl/py/JsonIO/__init__.py +0 -0
- arctrl/py/JsonIO/assay.py +113 -0
- arctrl/py/JsonIO/comment.py +80 -0
- arctrl/py/JsonIO/data.py +60 -0
- arctrl/py/JsonIO/data_file.py +58 -0
- arctrl/py/JsonIO/datamap.py +36 -0
- arctrl/py/JsonIO/decode.py +9 -0
- arctrl/py/JsonIO/encode.py +1 -0
- arctrl/py/JsonIO/investigation.py +91 -0
- arctrl/py/JsonIO/ldobject.py +106 -0
- arctrl/py/JsonIO/ontology_annotation.py +80 -0
- arctrl/py/JsonIO/ontology_source_reference.py +80 -0
- arctrl/py/JsonIO/person.py +82 -0
- arctrl/py/JsonIO/publication.py +82 -0
- arctrl/py/JsonIO/run.py +68 -0
- arctrl/py/JsonIO/study.py +114 -0
- arctrl/py/JsonIO/workflow.py +68 -0
- arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
- arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
- arctrl/py/ROCrate/ISAProfile/data.py +65 -0
- arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
- arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
- arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
- arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
- arctrl/py/ROCrate/ISAProfile/person.py +72 -0
- arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
- arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
- arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
- arctrl/py/ROCrate/ISAProfile/study.py +74 -0
- arctrl/py/ROCrate/LDTypes/__init__.py +0 -0
- arctrl/py/ROCrate/LDTypes/comment.py +131 -0
- arctrl/py/ROCrate/LDTypes/computational_workflow.py +455 -0
- arctrl/py/ROCrate/LDTypes/computer_language.py +269 -0
- arctrl/py/ROCrate/LDTypes/create_action.py +303 -0
- arctrl/py/ROCrate/LDTypes/creative_work.py +566 -0
- arctrl/py/ROCrate/LDTypes/dataset.py +943 -0
- arctrl/py/ROCrate/LDTypes/defined_term.py +131 -0
- arctrl/py/ROCrate/LDTypes/file.py +281 -0
- arctrl/py/ROCrate/LDTypes/formal_parameter.py +431 -0
- arctrl/py/ROCrate/LDTypes/lab_process.py +352 -0
- arctrl/py/ROCrate/LDTypes/lab_protocol.py +395 -0
- arctrl/py/ROCrate/LDTypes/organization.py +83 -0
- arctrl/py/ROCrate/LDTypes/person.py +484 -0
- arctrl/py/ROCrate/LDTypes/postal_address.py +195 -0
- arctrl/py/ROCrate/LDTypes/property_value.py +952 -0
- arctrl/py/ROCrate/LDTypes/sample.py +202 -0
- arctrl/py/ROCrate/LDTypes/scholarly_article.py +229 -0
- arctrl/py/ROCrate/LDTypes/software_source_code.py +310 -0
- arctrl/py/ROCrate/LDTypes/workflow_invocation.py +48 -0
- arctrl/py/ROCrate/LDTypes/workflow_protocol.py +52 -0
- arctrl/py/ROCrate/__init__.py +0 -0
- arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
- arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
- arctrl/py/ROCrate/helper.py +8 -0
- arctrl/py/ROCrate/ldcontext.py +406 -0
- arctrl/py/ROCrate/ldobject.py +1247 -0
- arctrl/py/ROCrate/rocrate_context.py +51 -0
- arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
- arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +203 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +305 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
- arctrl/py/Spreadsheet/DatamapTable/__init__.py +0 -0
- arctrl/py/Spreadsheet/DatamapTable/datamap_column.py +114 -0
- arctrl/py/Spreadsheet/DatamapTable/datamap_header.py +621 -0
- arctrl/py/Spreadsheet/DatamapTable/datamap_table.py +118 -0
- arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
- arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
- arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
- arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
- arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
- arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
- arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
- arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
- arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
- arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
- arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
- arctrl/py/Spreadsheet/Metadata/run.py +122 -0
- arctrl/py/Spreadsheet/Metadata/sparse_table.py +499 -0
- arctrl/py/Spreadsheet/Metadata/study.py +312 -0
- arctrl/py/Spreadsheet/Metadata/workflow.py +159 -0
- arctrl/py/Spreadsheet/__init__.py +0 -0
- arctrl/py/Spreadsheet/arc_assay.py +233 -0
- arctrl/py/Spreadsheet/arc_investigation.py +435 -0
- arctrl/py/Spreadsheet/arc_run.py +190 -0
- arctrl/py/Spreadsheet/arc_study.py +144 -0
- arctrl/py/Spreadsheet/arc_workflow.py +177 -0
- arctrl/py/Spreadsheet/assembly_info.py +1 -0
- arctrl/py/Spreadsheet/collection_aux.py +167 -0
- arctrl/py/Spreadsheet/datamap.py +43 -0
- arctrl/py/Spreadsheet/template.py +460 -0
- arctrl/py/ValidationPackages/__init__.py +0 -0
- arctrl/py/ValidationPackages/validation_package.py +82 -0
- arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
- arctrl/py/WebRequest/__init__.py +0 -0
- arctrl/py/WebRequest/web_request.py +9 -0
- arctrl/py/WebRequest/web_request_py.py +135 -0
- arctrl/py/WorkflowGraph/__init__.py +0 -0
- arctrl/py/WorkflowGraph/adapters.py +141 -0
- arctrl/py/WorkflowGraph/build_options.py +45 -0
- arctrl/py/WorkflowGraph/builder.py +720 -0
- arctrl/py/WorkflowGraph/graph_types.py +260 -0
- arctrl/py/WorkflowGraph/query_helpers.py +76 -0
- arctrl/py/WorkflowGraph/reference_parsing.py +59 -0
- arctrl/py/WorkflowGraph/visualization_siren.py +574 -0
- arctrl/py/WorkflowGraph/workflow_graph.py +119 -0
- arctrl/py/Yaml/__init__.py +0 -0
- arctrl/py/Yaml/decode.py +1 -0
- arctrl/py/Yaml/encode.py +10 -0
- arctrl/py/Yaml/validation_package.py +77 -0
- arctrl/py/Yaml/validation_packages_config.py +86 -0
- arctrl/py/__init__.py +0 -0
- arctrl/py/arc.py +1891 -0
- arctrl/py/column_index.py +280 -0
- arctrl/py/conversion.py +142 -0
- arctrl/py/cross_async.py +76 -0
- arctrl/py/cwlrun_resolver.py +228 -0
- arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
- arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
- arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
- arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
- arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
- arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
- arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
- arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
- arctrl/py/fable_modules/fable_library/__init__.py +0 -0
- arctrl/py/fable_modules/fable_library/array_.py +1528 -0
- arctrl/py/fable_modules/fable_library/async_.py +377 -0
- arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
- arctrl/py/fable_modules/fable_library/big_int.py +330 -0
- arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
- arctrl/py/fable_modules/fable_library/boolean.py +26 -0
- arctrl/py/fable_modules/fable_library/char.py +237 -0
- arctrl/py/fable_modules/fable_library/choice.py +212 -0
- arctrl/py/fable_modules/fable_library/date.py +779 -0
- arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
- arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
- arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
- arctrl/py/fable_modules/fable_library/double.py +87 -0
- arctrl/py/fable_modules/fable_library/encoding.py +41 -0
- arctrl/py/fable_modules/fable_library/event.py +206 -0
- arctrl/py/fable_modules/fable_library/file.py +107 -0
- arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
- arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
- arctrl/py/fable_modules/fable_library/global_.py +63 -0
- arctrl/py/fable_modules/fable_library/guid.py +41 -0
- arctrl/py/fable_modules/fable_library/int32.py +73 -0
- arctrl/py/fable_modules/fable_library/list.py +1788 -0
- arctrl/py/fable_modules/fable_library/long.py +240 -0
- arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
- arctrl/py/fable_modules/fable_library/map.py +1854 -0
- arctrl/py/fable_modules/fable_library/map_util.py +148 -0
- arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
- arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
- arctrl/py/fable_modules/fable_library/native.py +45 -0
- arctrl/py/fable_modules/fable_library/numeric.py +46 -0
- arctrl/py/fable_modules/fable_library/observable.py +222 -0
- arctrl/py/fable_modules/fable_library/option.py +128 -0
- arctrl/py/fable_modules/fable_library/path.py +62 -0
- arctrl/py/fable_modules/fable_library/range.py +117 -0
- arctrl/py/fable_modules/fable_library/reflection.py +463 -0
- arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
- arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
- arctrl/py/fable_modules/fable_library/result.py +212 -0
- arctrl/py/fable_modules/fable_library/seq.py +1979 -0
- arctrl/py/fable_modules/fable_library/seq2.py +221 -0
- arctrl/py/fable_modules/fable_library/set.py +2414 -0
- arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
- arctrl/py/fable_modules/fable_library/string_.py +573 -0
- arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
- arctrl/py/fable_modules/fable_library/system_text.py +237 -0
- arctrl/py/fable_modules/fable_library/task.py +116 -0
- arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
- arctrl/py/fable_modules/fable_library/thread.py +5 -0
- arctrl/py/fable_modules/fable_library/time_span.py +283 -0
- arctrl/py/fable_modules/fable_library/timer.py +24 -0
- arctrl/py/fable_modules/fable_library/types.py +401 -0
- arctrl/py/fable_modules/fable_library/uri.py +109 -0
- arctrl/py/fable_modules/fable_library/util.py +2735 -0
- arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
- arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
- arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
- arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
- arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
- arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
- arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
- arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
- arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
- arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +340 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +466 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +463 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +54 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +216 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +43 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +190 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +92 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +77 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +461 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +117 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
- arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +236 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +192 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +610 -0
- arctrl/py/fable_modules/fs_spreadsheet/hash_codes.py +60 -0
- arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +329 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +60 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/table.py +54 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +41 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +52 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
- arctrl/py/fable_modules/siren/__init__.py +0 -0
- arctrl/py/fable_modules/siren/config.py +1038 -0
- arctrl/py/fable_modules/siren/formatting.py +1121 -0
- arctrl/py/fable_modules/siren/siren.py +1941 -0
- arctrl/py/fable_modules/siren/siren_types.py +1229 -0
- arctrl/py/fable_modules/siren/theme_variables.py +517 -0
- arctrl/py/fable_modules/siren/util.py +37 -0
- arctrl/py/fable_modules/siren/yaml.py +101 -0
- arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
- arctrl/py/fable_modules/thoth_json_core/decode.py +1614 -0
- arctrl/py/fable_modules/thoth_json_core/encode.py +305 -0
- arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
- arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
- arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
- arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
- arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
- arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
- arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
- arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
- arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
- arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
- arctrl/py/fable_modules/yamlicious/encode.py +84 -0
- arctrl/py/fable_modules/yamlicious/flow_to_block.py +994 -0
- arctrl/py/fable_modules/yamlicious/library.py +10 -0
- arctrl/py/fable_modules/yamlicious/persil.py +57 -0
- arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
- arctrl/py/fable_modules/yamlicious/reader.py +739 -0
- arctrl/py/fable_modules/yamlicious/regex.py +29 -0
- arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +265 -0
- arctrl/py/fable_modules/yamlicious/writer.py +175 -0
- arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
- arctrl/py/json.py +389 -0
- arctrl/py/license.py +169 -0
- arctrl/py/rocrate_io.py +242 -0
- arctrl/py/template_web.py +23 -0
- arctrl/py/xlsx.py +212 -0
- arctrl/py/yaml.py +79 -0
- arctrl/rocrate.py +21 -0
- arctrl-3.0.0.dist-info/METADATA +157 -0
- arctrl-3.0.0.dist-info/RECORD +511 -0
- arctrl-3.0.0.dist-info/WHEEL +4 -0
- arctrl-3.0.0.dist-info/licenses/LICENSE +21 -0
arctrl/__init__.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import Any
|
|
4
|
+
from .py.Contract.contract import Contract
|
|
5
|
+
from .py.Core.data_context import DataContext
|
|
6
|
+
from .py.Core.datamap import Datamap
|
|
7
|
+
from .py.Core.comment import Comment
|
|
8
|
+
from .py.Core.ontology_annotation import OntologyAnnotation
|
|
9
|
+
from .py.Core.person import Person
|
|
10
|
+
from .py.Core.publication import Publication
|
|
11
|
+
from .py.Core.Table.composite_header import IOType, CompositeHeader
|
|
12
|
+
from .py.Core.Table.composite_cell import CompositeCell
|
|
13
|
+
from .py.Core.Table.composite_column import CompositeColumn
|
|
14
|
+
from .py.Core.Table.arc_table import ArcTable
|
|
15
|
+
from .py.Core.Table.arc_tables import ArcTables
|
|
16
|
+
from .py.Core.arc_types import ArcAssay, ArcStudy, ArcRun, ArcWorkflow, ArcInvestigation
|
|
17
|
+
from .py.Core.template import Template
|
|
18
|
+
from .py.FileSystem.file_system import FileSystem
|
|
19
|
+
from .py.FileSystem.file_system_tree import FileSystemTree
|
|
20
|
+
from .py.json import JsonController
|
|
21
|
+
from .py.yaml import YamlController
|
|
22
|
+
from .py.xlsx import XlsxController
|
|
23
|
+
from .py.arc import ARC
|
arctrl/cwl.py
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import Any
|
|
4
|
+
from .py.CWL.cwlprocessing_unit import CWLProcessingUnit
|
|
5
|
+
from .py.CWL.cwltypes import CWLType, FileInstance, DirectoryInstance, DirentInstance, InputEnumSchema, InputRecordField, InputRecordSchema, InputArraySchema, SchemaDefRequirementType, SoftwarePackage
|
|
6
|
+
from .py.CWL.parameter_reference import CWLParameterReference
|
|
7
|
+
from .py.CWL.inputs import CWLInput, InputBinding
|
|
8
|
+
from .py.CWL.outputs import CWLOutput, OutputBinding
|
|
9
|
+
from .py.CWL.tool_description import CWLToolDescription
|
|
10
|
+
from .py.CWL.workflow_description import CWLWorkflowDescription
|
|
11
|
+
from .py.CWL.workflow_steps import WorkflowStep, StepInput, StepOutput
|
|
12
|
+
from .py.CWL.requirements import Requirement, DockerRequirement, EnvironmentDef, ResourceRequirementInstance
|
|
File without changes
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from typing import Any
|
|
3
|
+
from ..fable_modules.fable_library.reflection import (TypeInfo, union_type)
|
|
4
|
+
from ..fable_modules.fable_library.seq import choose
|
|
5
|
+
from ..fable_modules.fable_library.types import (Array, Union)
|
|
6
|
+
from ..fable_modules.fable_library.util import IEnumerable_1
|
|
7
|
+
from .expression_tool_description import (CWLExpressionToolDescription_reflection, CWLExpressionToolDescription)
|
|
8
|
+
from .inputs import CWLInput
|
|
9
|
+
from .operation_description import (CWLOperationDescription_reflection, CWLOperationDescription)
|
|
10
|
+
from .outputs import CWLOutput
|
|
11
|
+
from .requirements import (Requirement, HintEntry, HintEntry_get_tryAsRequirement)
|
|
12
|
+
from .tool_description import (CWLToolDescription_reflection, CWLToolDescription)
|
|
13
|
+
from .workflow_description import (CWLWorkflowDescription_reflection, CWLWorkflowDescription)
|
|
14
|
+
from .workflow_steps import WorkflowStepRun
|
|
15
|
+
|
|
16
|
+
def _expr772() -> TypeInfo:
|
|
17
|
+
return union_type("ARCtrl.CWL.CWLProcessingUnit", [], CWLProcessingUnit, lambda: [[("Item", CWLToolDescription_reflection())], [("Item", CWLWorkflowDescription_reflection())], [("Item", CWLExpressionToolDescription_reflection())], [("Item", CWLOperationDescription_reflection())]])
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class CWLProcessingUnit(Union):
|
|
21
|
+
def __init__(self, tag: int, *fields: Any) -> None:
|
|
22
|
+
super().__init__()
|
|
23
|
+
self.tag: int = tag or 0
|
|
24
|
+
self.fields: Array[Any] = list(fields)
|
|
25
|
+
|
|
26
|
+
@staticmethod
|
|
27
|
+
def cases() -> list[str]:
|
|
28
|
+
return ["CommandLineTool", "Workflow", "ExpressionTool", "Operation"]
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
CWLProcessingUnit_reflection = _expr772
|
|
32
|
+
|
|
33
|
+
def CWLProcessingUnit_getInputs_30922B92(processing_unit: CWLProcessingUnit) -> Array[CWLInput]:
|
|
34
|
+
if processing_unit.tag == 1:
|
|
35
|
+
return CWLWorkflowDescription.get_inputs(processing_unit.fields[0])
|
|
36
|
+
|
|
37
|
+
elif processing_unit.tag == 2:
|
|
38
|
+
return CWLExpressionToolDescription.get_inputs_or_empty(processing_unit.fields[0])
|
|
39
|
+
|
|
40
|
+
elif processing_unit.tag == 3:
|
|
41
|
+
return CWLOperationDescription.get_inputs(processing_unit.fields[0])
|
|
42
|
+
|
|
43
|
+
else:
|
|
44
|
+
return CWLToolDescription.get_inputs_or_empty(processing_unit.fields[0])
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def CWLProcessingUnit_getOutputs_30922B92(processing_unit: CWLProcessingUnit) -> Array[CWLOutput]:
|
|
49
|
+
if processing_unit.tag == 1:
|
|
50
|
+
return CWLWorkflowDescription.get_outputs(processing_unit.fields[0])
|
|
51
|
+
|
|
52
|
+
elif processing_unit.tag == 2:
|
|
53
|
+
return CWLExpressionToolDescription.get_outputs(processing_unit.fields[0])
|
|
54
|
+
|
|
55
|
+
elif processing_unit.tag == 3:
|
|
56
|
+
return CWLOperationDescription.get_outputs(processing_unit.fields[0])
|
|
57
|
+
|
|
58
|
+
else:
|
|
59
|
+
return CWLToolDescription.get_outputs(processing_unit.fields[0])
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
def CWLProcessingUnit_getRequirements_30922B92(processing_unit: CWLProcessingUnit) -> Array[Requirement]:
|
|
64
|
+
if processing_unit.tag == 1:
|
|
65
|
+
return CWLWorkflowDescription.get_requirements_or_empty(processing_unit.fields[0])
|
|
66
|
+
|
|
67
|
+
elif processing_unit.tag == 2:
|
|
68
|
+
return CWLExpressionToolDescription.get_requirements_or_empty(processing_unit.fields[0])
|
|
69
|
+
|
|
70
|
+
elif processing_unit.tag == 3:
|
|
71
|
+
return CWLOperationDescription.get_requirements_or_empty(processing_unit.fields[0])
|
|
72
|
+
|
|
73
|
+
else:
|
|
74
|
+
return CWLToolDescription.get_requirements_or_empty(processing_unit.fields[0])
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
def CWLProcessingUnit_getHints_30922B92(processing_unit: CWLProcessingUnit) -> Array[HintEntry]:
|
|
79
|
+
if processing_unit.tag == 1:
|
|
80
|
+
return CWLWorkflowDescription.get_hints_or_empty(processing_unit.fields[0])
|
|
81
|
+
|
|
82
|
+
elif processing_unit.tag == 2:
|
|
83
|
+
return CWLExpressionToolDescription.get_hints_or_empty(processing_unit.fields[0])
|
|
84
|
+
|
|
85
|
+
elif processing_unit.tag == 3:
|
|
86
|
+
return CWLOperationDescription.get_hints_or_empty(processing_unit.fields[0])
|
|
87
|
+
|
|
88
|
+
else:
|
|
89
|
+
return CWLToolDescription.get_hints_or_empty(processing_unit.fields[0])
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
def CWLProcessingUnit_getIntent_30922B92(processing_unit: CWLProcessingUnit) -> Array[str]:
|
|
94
|
+
if processing_unit.tag == 1:
|
|
95
|
+
return CWLWorkflowDescription.get_intent_or_empty(processing_unit.fields[0])
|
|
96
|
+
|
|
97
|
+
elif processing_unit.tag == 2:
|
|
98
|
+
return CWLExpressionToolDescription.get_intent_or_empty(processing_unit.fields[0])
|
|
99
|
+
|
|
100
|
+
elif processing_unit.tag == 3:
|
|
101
|
+
return CWLOperationDescription.get_intent_or_empty(processing_unit.fields[0])
|
|
102
|
+
|
|
103
|
+
else:
|
|
104
|
+
return CWLToolDescription.get_intent_or_empty(processing_unit.fields[0])
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
def CWLProcessingUnit_getKnownHints_30922B92(processing_unit: CWLProcessingUnit) -> Array[Requirement]:
|
|
109
|
+
def _arrow773(__unit: None=None, processing_unit: Any=processing_unit) -> IEnumerable_1[Requirement]:
|
|
110
|
+
source: Array[HintEntry] = CWLProcessingUnit_getHints_30922B92(processing_unit)
|
|
111
|
+
return choose(HintEntry_get_tryAsRequirement(), source)
|
|
112
|
+
|
|
113
|
+
return list(_arrow773())
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
def WorkflowStepRunOps_fromTool(tool: CWLToolDescription) -> WorkflowStepRun:
|
|
117
|
+
return WorkflowStepRun(1, tool)
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
def WorkflowStepRunOps_fromWorkflow(workflow: CWLWorkflowDescription) -> WorkflowStepRun:
|
|
121
|
+
return WorkflowStepRun(2, workflow)
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
def WorkflowStepRunOps_fromExpressionTool(expression_tool: CWLExpressionToolDescription) -> WorkflowStepRun:
|
|
125
|
+
return WorkflowStepRun(3, expression_tool)
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
def WorkflowStepRunOps_fromOperation(operation: CWLOperationDescription) -> WorkflowStepRun:
|
|
129
|
+
return WorkflowStepRun(4, operation)
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
def WorkflowStepRunOps_tryGetTool(run: WorkflowStepRun) -> CWLToolDescription | None:
|
|
133
|
+
(pattern_matching_result, tool) = (None, None)
|
|
134
|
+
if run.tag == 1:
|
|
135
|
+
if isinstance(run.fields[0], CWLToolDescription):
|
|
136
|
+
pattern_matching_result = 0
|
|
137
|
+
tool = run.fields[0]
|
|
138
|
+
|
|
139
|
+
else:
|
|
140
|
+
pattern_matching_result = 1
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
else:
|
|
144
|
+
pattern_matching_result = 1
|
|
145
|
+
|
|
146
|
+
if pattern_matching_result == 0:
|
|
147
|
+
return tool
|
|
148
|
+
|
|
149
|
+
elif pattern_matching_result == 1:
|
|
150
|
+
return None
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
def WorkflowStepRunOps_tryGetWorkflow(run: WorkflowStepRun) -> CWLWorkflowDescription | None:
|
|
155
|
+
(pattern_matching_result, workflow) = (None, None)
|
|
156
|
+
if run.tag == 2:
|
|
157
|
+
if isinstance(run.fields[0], CWLWorkflowDescription):
|
|
158
|
+
pattern_matching_result = 0
|
|
159
|
+
workflow = run.fields[0]
|
|
160
|
+
|
|
161
|
+
else:
|
|
162
|
+
pattern_matching_result = 1
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
else:
|
|
166
|
+
pattern_matching_result = 1
|
|
167
|
+
|
|
168
|
+
if pattern_matching_result == 0:
|
|
169
|
+
return workflow
|
|
170
|
+
|
|
171
|
+
elif pattern_matching_result == 1:
|
|
172
|
+
return None
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
def WorkflowStepRunOps_tryGetExpressionTool(run: WorkflowStepRun) -> CWLExpressionToolDescription | None:
|
|
177
|
+
(pattern_matching_result, expression_tool) = (None, None)
|
|
178
|
+
if run.tag == 3:
|
|
179
|
+
if isinstance(run.fields[0], CWLExpressionToolDescription):
|
|
180
|
+
pattern_matching_result = 0
|
|
181
|
+
expression_tool = run.fields[0]
|
|
182
|
+
|
|
183
|
+
else:
|
|
184
|
+
pattern_matching_result = 1
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
else:
|
|
188
|
+
pattern_matching_result = 1
|
|
189
|
+
|
|
190
|
+
if pattern_matching_result == 0:
|
|
191
|
+
return expression_tool
|
|
192
|
+
|
|
193
|
+
elif pattern_matching_result == 1:
|
|
194
|
+
return None
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
def WorkflowStepRunOps_tryGetOperation(run: WorkflowStepRun) -> CWLOperationDescription | None:
|
|
199
|
+
(pattern_matching_result, operation) = (None, None)
|
|
200
|
+
if run.tag == 4:
|
|
201
|
+
if isinstance(run.fields[0], CWLOperationDescription):
|
|
202
|
+
pattern_matching_result = 0
|
|
203
|
+
operation = run.fields[0]
|
|
204
|
+
|
|
205
|
+
else:
|
|
206
|
+
pattern_matching_result = 1
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
else:
|
|
210
|
+
pattern_matching_result = 1
|
|
211
|
+
|
|
212
|
+
if pattern_matching_result == 0:
|
|
213
|
+
return operation
|
|
214
|
+
|
|
215
|
+
elif pattern_matching_result == 1:
|
|
216
|
+
return None
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
__all__ = ["CWLProcessingUnit_reflection", "CWLProcessingUnit_getInputs_30922B92", "CWLProcessingUnit_getOutputs_30922B92", "CWLProcessingUnit_getRequirements_30922B92", "CWLProcessingUnit_getHints_30922B92", "CWLProcessingUnit_getIntent_30922B92", "CWLProcessingUnit_getKnownHints_30922B92", "WorkflowStepRunOps_fromTool", "WorkflowStepRunOps_fromWorkflow", "WorkflowStepRunOps_fromExpressionTool", "WorkflowStepRunOps_fromOperation", "WorkflowStepRunOps_tryGetTool", "WorkflowStepRunOps_tryGetWorkflow", "WorkflowStepRunOps_tryGetExpressionTool", "WorkflowStepRunOps_tryGetOperation"]
|
|
221
|
+
|
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from dataclasses import dataclass
|
|
3
|
+
from typing import Any
|
|
4
|
+
from ..fable_modules.dynamic_obj.dynamic_obj import (DynamicObj, DynamicObj_reflection)
|
|
5
|
+
from ..fable_modules.fable_library.reflection import (TypeInfo, string_type, union_type, class_type, option_type, bool_type, record_type, array_type)
|
|
6
|
+
from ..fable_modules.fable_library.seq import (for_all2, to_list, map)
|
|
7
|
+
from ..fable_modules.fable_library.string_ import (to_text, printf)
|
|
8
|
+
from ..fable_modules.fable_library.types import (Array, Union, Record)
|
|
9
|
+
from ..fable_modules.fable_library.util import (identity_hash, equals, array_hash, safe_hash, number_hash)
|
|
10
|
+
|
|
11
|
+
def _expr726() -> TypeInfo:
|
|
12
|
+
return union_type("ARCtrl.CWL.SchemaSaladString", [], SchemaSaladString, lambda: [[("Item", string_type)], [("Item", string_type)], [("Item", string_type)]])
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class SchemaSaladString(Union):
|
|
16
|
+
def __init__(self, tag: int, *fields: Any) -> None:
|
|
17
|
+
super().__init__()
|
|
18
|
+
self.tag: int = tag or 0
|
|
19
|
+
self.fields: Array[Any] = list(fields)
|
|
20
|
+
|
|
21
|
+
@staticmethod
|
|
22
|
+
def cases() -> list[str]:
|
|
23
|
+
return ["Literal", "Include", "Import"]
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
SchemaSaladString_reflection = _expr726
|
|
27
|
+
|
|
28
|
+
def SchemaSaladString__get_Value(this: SchemaSaladString) -> str:
|
|
29
|
+
(pattern_matching_result, value) = (None, None)
|
|
30
|
+
if this.tag == 1:
|
|
31
|
+
pattern_matching_result = 0
|
|
32
|
+
value = this.fields[0]
|
|
33
|
+
|
|
34
|
+
elif this.tag == 2:
|
|
35
|
+
pattern_matching_result = 0
|
|
36
|
+
value = this.fields[0]
|
|
37
|
+
|
|
38
|
+
else:
|
|
39
|
+
pattern_matching_result = 0
|
|
40
|
+
value = this.fields[0]
|
|
41
|
+
|
|
42
|
+
if pattern_matching_result == 0:
|
|
43
|
+
return value
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def SchemaSaladString__get_AsDirectiveString(this: SchemaSaladString) -> str:
|
|
48
|
+
if this.tag == 1:
|
|
49
|
+
return to_text(printf("$include: %s"))(this.fields[0])
|
|
50
|
+
|
|
51
|
+
elif this.tag == 2:
|
|
52
|
+
return to_text(printf("$import: %s"))(this.fields[0])
|
|
53
|
+
|
|
54
|
+
else:
|
|
55
|
+
return this.fields[0]
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def SchemaSaladStringModule_literal(value: str) -> SchemaSaladString:
|
|
60
|
+
return SchemaSaladString(0, value)
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
def SchemaSaladStringModule_includePath(value: str) -> SchemaSaladString:
|
|
64
|
+
return SchemaSaladString(1, value)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def SchemaSaladStringModule_importPath(value: str) -> SchemaSaladString:
|
|
68
|
+
return SchemaSaladString(2, value)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def SchemaSaladStringModule_value(salad_string: SchemaSaladString) -> str:
|
|
72
|
+
return SchemaSaladString__get_Value(salad_string)
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def SchemaSaladStringModule_toDirectiveString(salad_string: SchemaSaladString) -> str:
|
|
76
|
+
return SchemaSaladString__get_AsDirectiveString(salad_string)
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
def _expr727() -> TypeInfo:
|
|
80
|
+
return class_type("ARCtrl.CWL.FileInstance", None, FileInstance, DynamicObj_reflection())
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
class FileInstance(DynamicObj):
|
|
84
|
+
def __init__(self, __unit: None=None) -> None:
|
|
85
|
+
super().__init__()
|
|
86
|
+
pass
|
|
87
|
+
|
|
88
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
89
|
+
this: FileInstance = self
|
|
90
|
+
return identity_hash(this.DeepCopyProperties())
|
|
91
|
+
|
|
92
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
93
|
+
this: FileInstance = self
|
|
94
|
+
return this.StructurallyEquals(o) if isinstance(o, FileInstance) else False
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
FileInstance_reflection = _expr727
|
|
98
|
+
|
|
99
|
+
def FileInstance__ctor(__unit: None=None) -> FileInstance:
|
|
100
|
+
return FileInstance(__unit)
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def _expr728() -> TypeInfo:
|
|
104
|
+
return class_type("ARCtrl.CWL.DirectoryInstance", None, DirectoryInstance, DynamicObj_reflection())
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
class DirectoryInstance(DynamicObj):
|
|
108
|
+
def __init__(self, __unit: None=None) -> None:
|
|
109
|
+
super().__init__()
|
|
110
|
+
pass
|
|
111
|
+
|
|
112
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
113
|
+
this: DirectoryInstance = self
|
|
114
|
+
return this.StructurallyEquals(o) if isinstance(o, DirectoryInstance) else False
|
|
115
|
+
|
|
116
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
117
|
+
this: DirectoryInstance = self
|
|
118
|
+
return identity_hash(this.DeepCopyProperties())
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
DirectoryInstance_reflection = _expr728
|
|
122
|
+
|
|
123
|
+
def DirectoryInstance__ctor(__unit: None=None) -> DirectoryInstance:
|
|
124
|
+
return DirectoryInstance(__unit)
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
def _expr729() -> TypeInfo:
|
|
128
|
+
return record_type("ARCtrl.CWL.DirentInstance", [], DirentInstance, lambda: [("Entry", SchemaSaladString_reflection()), ("Entryname", option_type(SchemaSaladString_reflection())), ("Writable", option_type(bool_type))])
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
@dataclass(eq = False, repr = False, slots = True)
|
|
132
|
+
class DirentInstance(Record):
|
|
133
|
+
Entry: SchemaSaladString
|
|
134
|
+
Entryname: SchemaSaladString | None
|
|
135
|
+
Writable: bool | None
|
|
136
|
+
|
|
137
|
+
DirentInstance_reflection = _expr729
|
|
138
|
+
|
|
139
|
+
def _expr731() -> TypeInfo:
|
|
140
|
+
return record_type("ARCtrl.CWL.InputEnumSchema", [], InputEnumSchema, lambda: [("Symbols", array_type(string_type)), ("Label", option_type(string_type)), ("Doc", option_type(string_type)), ("Name", option_type(string_type))])
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
@dataclass(eq = False, repr = False, slots = True)
|
|
144
|
+
class InputEnumSchema(Record):
|
|
145
|
+
Symbols: Array[str]
|
|
146
|
+
Label: str | None
|
|
147
|
+
Doc: str | None
|
|
148
|
+
Name: str | None
|
|
149
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
150
|
+
this: InputEnumSchema = self
|
|
151
|
+
def _arrow730(x: str, y: str) -> bool:
|
|
152
|
+
return x == y
|
|
153
|
+
|
|
154
|
+
return (for_all2(_arrow730, this.Symbols, o.Symbols) if ((len(this.Symbols) == len(o.Symbols)) if (equals(this.Name, o.Name) if (equals(this.Doc, o.Doc) if equals(this.Label, o.Label) else False) else False) else False) else False) if isinstance(o, InputEnumSchema) else False
|
|
155
|
+
|
|
156
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
157
|
+
this: InputEnumSchema = self
|
|
158
|
+
return array_hash((to_list(this.Symbols), this.Label, this.Doc, this.Name))
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
InputEnumSchema_reflection = _expr731
|
|
162
|
+
|
|
163
|
+
def _expr732() -> TypeInfo:
|
|
164
|
+
return record_type("ARCtrl.CWL.InputRecordField", [], InputRecordField, lambda: [("Name", string_type), ("Type", CWLType_reflection()), ("Doc", option_type(string_type)), ("Label", option_type(string_type))])
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
@dataclass(eq = False, repr = False, slots = True)
|
|
168
|
+
class InputRecordField(Record):
|
|
169
|
+
Name: str
|
|
170
|
+
Type: CWLType
|
|
171
|
+
Doc: str | None
|
|
172
|
+
Label: str | None
|
|
173
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
174
|
+
this: InputRecordField = self
|
|
175
|
+
return (equals(this.Label, o.Label) if (equals(this.Doc, o.Doc) if (equals(this.Type, o.Type) if (this.Name == o.Name) else False) else False) else False) if isinstance(o, InputRecordField) else False
|
|
176
|
+
|
|
177
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
178
|
+
this: InputRecordField = self
|
|
179
|
+
return array_hash((this.Name, this.Type, this.Doc, this.Label))
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
InputRecordField_reflection = _expr732
|
|
183
|
+
|
|
184
|
+
def _expr733() -> TypeInfo:
|
|
185
|
+
return record_type("ARCtrl.CWL.InputRecordSchema", [], InputRecordSchema, lambda: [("Fields", option_type(array_type(InputRecordField_reflection()))), ("Label", option_type(string_type)), ("Doc", option_type(string_type)), ("Name", option_type(string_type))])
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
@dataclass(eq = False, repr = False, slots = True)
|
|
189
|
+
class InputRecordSchema(Record):
|
|
190
|
+
Fields: Array[InputRecordField] | None
|
|
191
|
+
Label: str | None
|
|
192
|
+
Doc: str | None
|
|
193
|
+
Name: str | None
|
|
194
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
195
|
+
this: InputRecordSchema = self
|
|
196
|
+
if isinstance(o, InputRecordSchema):
|
|
197
|
+
if equals(this.Name, o.Name) if (equals(this.Doc, o.Doc) if equals(this.Label, o.Label) else False) else False:
|
|
198
|
+
match_value: Array[InputRecordField] | None = this.Fields
|
|
199
|
+
match_value_1: Array[InputRecordField] | None = o.Fields
|
|
200
|
+
(pattern_matching_result, f1, f2) = (None, None, None)
|
|
201
|
+
if match_value is not None:
|
|
202
|
+
if match_value_1 is not None:
|
|
203
|
+
pattern_matching_result = 1
|
|
204
|
+
f1 = match_value
|
|
205
|
+
f2 = match_value_1
|
|
206
|
+
|
|
207
|
+
else:
|
|
208
|
+
pattern_matching_result = 2
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
elif match_value_1 is None:
|
|
212
|
+
pattern_matching_result = 0
|
|
213
|
+
|
|
214
|
+
else:
|
|
215
|
+
pattern_matching_result = 2
|
|
216
|
+
|
|
217
|
+
if pattern_matching_result == 0:
|
|
218
|
+
return True
|
|
219
|
+
|
|
220
|
+
elif pattern_matching_result == 1:
|
|
221
|
+
return for_all2(equals, f1, f2) if (len(f1) == len(f2)) else False
|
|
222
|
+
|
|
223
|
+
elif pattern_matching_result == 2:
|
|
224
|
+
return False
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
else:
|
|
228
|
+
return False
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
else:
|
|
232
|
+
return False
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
236
|
+
this: InputRecordSchema = self
|
|
237
|
+
return array_hash((this.Fields, this.Label, this.Doc, this.Name))
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
InputRecordSchema_reflection = _expr733
|
|
241
|
+
|
|
242
|
+
def _expr734() -> TypeInfo:
|
|
243
|
+
return record_type("ARCtrl.CWL.InputArraySchema", [], InputArraySchema, lambda: [("Items", CWLType_reflection()), ("Label", option_type(string_type)), ("Doc", option_type(string_type)), ("Name", option_type(string_type))])
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
@dataclass(eq = False, repr = False, slots = True)
|
|
247
|
+
class InputArraySchema(Record):
|
|
248
|
+
Items: CWLType
|
|
249
|
+
Label: str | None
|
|
250
|
+
Doc: str | None
|
|
251
|
+
Name: str | None
|
|
252
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
253
|
+
this: InputArraySchema = self
|
|
254
|
+
return (equals(this.Name, o.Name) if (equals(this.Doc, o.Doc) if (equals(this.Label, o.Label) if equals(this.Items, o.Items) else False) else False) else False) if isinstance(o, InputArraySchema) else False
|
|
255
|
+
|
|
256
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
257
|
+
this: InputArraySchema = self
|
|
258
|
+
return array_hash((this.Items, this.Label, this.Doc, this.Name))
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
InputArraySchema_reflection = _expr734
|
|
262
|
+
|
|
263
|
+
def _expr735() -> TypeInfo:
|
|
264
|
+
return union_type("ARCtrl.CWL.CWLType", [], CWLType, lambda: [[("Item", FileInstance_reflection())], [("Item", DirectoryInstance_reflection())], [("Item", DirentInstance_reflection())], [], [], [], [], [], [], [], [], [("Item", InputArraySchema_reflection())], [("Item", InputRecordSchema_reflection())], [("Item", InputEnumSchema_reflection())], [("Item", array_type(CWLType_reflection()))]])
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
class CWLType(Union):
|
|
268
|
+
def __init__(self, tag: int, *fields: Any) -> None:
|
|
269
|
+
super().__init__()
|
|
270
|
+
self.tag: int = tag or 0
|
|
271
|
+
self.fields: Array[Any] = list(fields)
|
|
272
|
+
|
|
273
|
+
@staticmethod
|
|
274
|
+
def cases() -> list[str]:
|
|
275
|
+
return ["File", "Directory", "Dirent", "String", "Int", "Long", "Float", "Double", "Boolean", "Stdout", "Null", "Array", "Record", "Enum", "Union"]
|
|
276
|
+
|
|
277
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
278
|
+
this: CWLType = self
|
|
279
|
+
return ((equals(this.fields[0], o.fields[0]) if (o.tag == 1) else False) if (this.tag == 1) else ((equals(this.fields[0], o.fields[0]) if (o.tag == 2) else False) if (this.tag == 2) else ((True if (o.tag == 3) else False) if (this.tag == 3) else ((True if (o.tag == 4) else False) if (this.tag == 4) else ((True if (o.tag == 5) else False) if (this.tag == 5) else ((True if (o.tag == 6) else False) if (this.tag == 6) else ((True if (o.tag == 7) else False) if (this.tag == 7) else ((True if (o.tag == 8) else False) if (this.tag == 8) else ((True if (o.tag == 9) else False) if (this.tag == 9) else ((True if (o.tag == 10) else False) if (this.tag == 10) else ((equals(this.fields[0], o.fields[0]) if (o.tag == 11) else False) if (this.tag == 11) else ((equals(this.fields[0], o.fields[0]) if (o.tag == 12) else False) if (this.tag == 12) else ((equals(this.fields[0], o.fields[0]) if (o.tag == 13) else False) if (this.tag == 13) else (((for_all2(equals, this.fields[0], o.fields[0]) if (len(this.fields[0]) == len(o.fields[0])) else False) if (o.tag == 14) else False) if (this.tag == 14) else (equals(this.fields[0], o.fields[0]) if (o.tag == 0) else False))))))))))))))) if isinstance(o, CWLType) else False
|
|
280
|
+
|
|
281
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
282
|
+
this: CWLType = self
|
|
283
|
+
if this.tag == 1:
|
|
284
|
+
return array_hash((1, safe_hash(this.fields[0])))
|
|
285
|
+
|
|
286
|
+
elif this.tag == 2:
|
|
287
|
+
return array_hash((2, this.fields[0]))
|
|
288
|
+
|
|
289
|
+
elif this.tag == 3:
|
|
290
|
+
return number_hash(3)
|
|
291
|
+
|
|
292
|
+
elif this.tag == 4:
|
|
293
|
+
return number_hash(4)
|
|
294
|
+
|
|
295
|
+
elif this.tag == 5:
|
|
296
|
+
return number_hash(5)
|
|
297
|
+
|
|
298
|
+
elif this.tag == 6:
|
|
299
|
+
return number_hash(6)
|
|
300
|
+
|
|
301
|
+
elif this.tag == 7:
|
|
302
|
+
return number_hash(7)
|
|
303
|
+
|
|
304
|
+
elif this.tag == 8:
|
|
305
|
+
return number_hash(8)
|
|
306
|
+
|
|
307
|
+
elif this.tag == 9:
|
|
308
|
+
return number_hash(9)
|
|
309
|
+
|
|
310
|
+
elif this.tag == 10:
|
|
311
|
+
return number_hash(10)
|
|
312
|
+
|
|
313
|
+
elif this.tag == 11:
|
|
314
|
+
return array_hash((11, this.fields[0]))
|
|
315
|
+
|
|
316
|
+
elif this.tag == 12:
|
|
317
|
+
return array_hash((12, this.fields[0]))
|
|
318
|
+
|
|
319
|
+
elif this.tag == 13:
|
|
320
|
+
return array_hash((13, this.fields[0]))
|
|
321
|
+
|
|
322
|
+
elif this.tag == 14:
|
|
323
|
+
return array_hash((14, to_list(map(safe_hash, this.fields[0]))))
|
|
324
|
+
|
|
325
|
+
else:
|
|
326
|
+
return array_hash((0, safe_hash(this.fields[0])))
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
CWLType_reflection = _expr735
|
|
331
|
+
|
|
332
|
+
def CWLType_file(__unit: None=None) -> CWLType:
|
|
333
|
+
return CWLType(0, FileInstance__ctor())
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
def CWLType_directory(__unit: None=None) -> CWLType:
|
|
337
|
+
return CWLType(1, DirectoryInstance__ctor())
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
def _expr736() -> TypeInfo:
|
|
341
|
+
return record_type("ARCtrl.CWL.SchemaDefRequirementType", [], SchemaDefRequirementType, lambda: [("Name", string_type), ("Type_", CWLType_reflection())])
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
@dataclass(eq = False, repr = False, slots = True)
|
|
345
|
+
class SchemaDefRequirementType(Record):
|
|
346
|
+
Name: str
|
|
347
|
+
Type_: CWLType
|
|
348
|
+
|
|
349
|
+
SchemaDefRequirementType_reflection = _expr736
|
|
350
|
+
|
|
351
|
+
def _expr737() -> TypeInfo:
|
|
352
|
+
return record_type("ARCtrl.CWL.SoftwarePackage", [], SoftwarePackage, lambda: [("Package", string_type), ("Version", option_type(array_type(string_type))), ("Specs", option_type(array_type(string_type)))])
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
@dataclass(eq = False, repr = False, slots = True)
|
|
356
|
+
class SoftwarePackage(Record):
|
|
357
|
+
Package: str
|
|
358
|
+
Version: Array[str] | None
|
|
359
|
+
Specs: Array[str] | None
|
|
360
|
+
|
|
361
|
+
SoftwarePackage_reflection = _expr737
|
|
362
|
+
|
|
363
|
+
__all__ = ["SchemaSaladString_reflection", "SchemaSaladString__get_Value", "SchemaSaladString__get_AsDirectiveString", "SchemaSaladStringModule_literal", "SchemaSaladStringModule_includePath", "SchemaSaladStringModule_importPath", "SchemaSaladStringModule_value", "SchemaSaladStringModule_toDirectiveString", "FileInstance_reflection", "DirectoryInstance_reflection", "DirentInstance_reflection", "InputEnumSchema_reflection", "InputRecordField_reflection", "InputRecordSchema_reflection", "InputArraySchema_reflection", "CWLType_reflection", "CWLType_file", "CWLType_directory", "SchemaDefRequirementType_reflection", "SoftwarePackage_reflection"]
|
|
364
|
+
|