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/py/Json/study.py
ADDED
|
@@ -0,0 +1,793 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import (Any, TypeVar)
|
|
4
|
+
from ..fable_modules.fable_library.list import (try_find, FSharpList, choose, of_array, singleton, map as map_2, empty)
|
|
5
|
+
from ..fable_modules.fable_library.option import (default_arg, value as value_17, map, bind, default_arg_with)
|
|
6
|
+
from ..fable_modules.fable_library.seq import (map as map_1, is_empty)
|
|
7
|
+
from ..fable_modules.fable_library.string_ import replace
|
|
8
|
+
from ..fable_modules.fable_library.types import Array
|
|
9
|
+
from ..fable_modules.fable_library.util import (IEnumerable_1, get_enumerator, dispose)
|
|
10
|
+
from ..fable_modules.thoth_json_core.decode import (object, IRequiredGetter, string, IOptionalGetter, resize_array, IGetters, list_1 as list_1_2)
|
|
11
|
+
from ..fable_modules.thoth_json_core.encode import list_1 as list_1_1
|
|
12
|
+
from ..fable_modules.thoth_json_core.types import (IEncodable, IEncoderHelpers_1, Decoder_1)
|
|
13
|
+
from ..Core.arc_types import (ArcAssay, ArcStudy)
|
|
14
|
+
from ..Core.comment import Comment
|
|
15
|
+
from ..Core.conversion import (ARCtrl_ArcTables__ArcTables_GetProcesses, ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D, Person_setSourceAssayComment, Person_getSourceAssayIdentifiersFromComments, Person_removeSourceAssayComments)
|
|
16
|
+
from ..Core.data import Data
|
|
17
|
+
from ..Core.datamap import Datamap
|
|
18
|
+
from ..Core.Helper.collections_ import (ResizeArray_map, Option_fromValueWithDefault)
|
|
19
|
+
from ..Core.Helper.identifier import (Study_tryFileNameFromIdentifier, Study_tryIdentifierFromFileName, create_missing_identifier, Study_fileNameFromIdentifier)
|
|
20
|
+
from ..Core.ontology_annotation import OntologyAnnotation
|
|
21
|
+
from ..Core.person import Person
|
|
22
|
+
from ..Core.Process.factor import Factor
|
|
23
|
+
from ..Core.Process.material_attribute import MaterialAttribute
|
|
24
|
+
from ..Core.Process.process import Process
|
|
25
|
+
from ..Core.Process.process_sequence import (get_data, get_units, get_factors, get_characteristics, get_protocols)
|
|
26
|
+
from ..Core.Process.protocol import Protocol
|
|
27
|
+
from ..Core.publication import Publication
|
|
28
|
+
from ..Core.Table.arc_table import ArcTable
|
|
29
|
+
from ..Core.Table.arc_tables import ArcTables
|
|
30
|
+
from ..Core.Table.composite_cell import CompositeCell
|
|
31
|
+
from .assay import (ROCrate_encoder as ROCrate_encoder_4, ROCrate_decoder as ROCrate_decoder_1, ISAJson_encoder as ISAJson_encoder_5, ISAJson_decoder as ISAJson_decoder_2)
|
|
32
|
+
from .comment import (encoder as encoder_9, decoder as decoder_6, ROCrate_encoder as ROCrate_encoder_6, ROCrate_decoder as ROCrate_decoder_5, ISAJson_encoder as ISAJson_encoder_6, ISAJson_decoder as ISAJson_decoder_5)
|
|
33
|
+
from .context.rocrate.isa_study_context import context_jsonvalue
|
|
34
|
+
from .data import ROCrate_encoder as ROCrate_encoder_5
|
|
35
|
+
from .Datamap.datamap import (encoder as encoder_8, decoder as decoder_5, encoder_compressed as encoder_compressed_2, decoder_compressed as decoder_compressed_2)
|
|
36
|
+
from .decode import Decode_objectNoAdditionalProperties
|
|
37
|
+
from .encode import (try_include, try_include_seq, try_include_list)
|
|
38
|
+
from .idtable import encode
|
|
39
|
+
from .ontology_annotation import (OntologyAnnotation_encoder, OntologyAnnotation_decoder, OntologyAnnotation_ROCrate_encoderDefinedTerm, OntologyAnnotation_ROCrate_decoderDefinedTerm, OntologyAnnotation_ISAJson_encoder, OntologyAnnotation_ISAJson_decoder)
|
|
40
|
+
from .person import (encoder as encoder_6, decoder as decoder_3, ROCrate_encoder as ROCrate_encoder_2, ROCrate_decoder as ROCrate_decoder_4, ISAJson_encoder as ISAJson_encoder_3, ISAJson_decoder as ISAJson_decoder_3)
|
|
41
|
+
from .Process.factor import encoder as encoder_10
|
|
42
|
+
from .Process.material_attribute import encoder as encoder_11
|
|
43
|
+
from .Process.process import (ROCrate_encoder as ROCrate_encoder_3, ROCrate_decoder as ROCrate_decoder_2, ISAJson_encoder as ISAJson_encoder_4, ISAJson_decoder as ISAJson_decoder_1)
|
|
44
|
+
from .Process.protocol import ISAJson_encoder as ISAJson_encoder_1
|
|
45
|
+
from .Process.study_materials import encoder as encoder_12
|
|
46
|
+
from .publication import (encoder as encoder_5, decoder as decoder_2, ROCrate_encoder as ROCrate_encoder_1, ROCrate_decoder as ROCrate_decoder_3, ISAJson_encoder as ISAJson_encoder_2, ISAJson_decoder as ISAJson_decoder_4)
|
|
47
|
+
from .Table.arc_table import (encoder as encoder_7, decoder as decoder_4, encoder_compressed as encoder_compressed_1, decoder_compressed as decoder_compressed_1)
|
|
48
|
+
|
|
49
|
+
__A_ = TypeVar("__A_")
|
|
50
|
+
|
|
51
|
+
def Helper_getAssayInformation(assays: FSharpList[ArcAssay] | None, study: ArcStudy) -> Array[ArcAssay]:
|
|
52
|
+
if assays is not None:
|
|
53
|
+
def f(assay_id: str, assays: Any=assays, study: Any=study) -> ArcAssay:
|
|
54
|
+
def predicate(a: ArcAssay, assay_id: Any=assay_id) -> bool:
|
|
55
|
+
return a.Identifier == assay_id
|
|
56
|
+
|
|
57
|
+
return default_arg(try_find(predicate, value_17(assays)), ArcAssay.init(assay_id))
|
|
58
|
+
|
|
59
|
+
return ResizeArray_map(f, study.RegisteredAssayIdentifiers)
|
|
60
|
+
|
|
61
|
+
else:
|
|
62
|
+
return study.GetRegisteredAssaysOrIdentifier()
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
def encoder(study: ArcStudy) -> IEncodable:
|
|
67
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], study: Any=study) -> tuple[str, IEncodable] | None:
|
|
68
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
69
|
+
return (tupled_arg[0], v_1)
|
|
70
|
+
|
|
71
|
+
return map(mapping, tupled_arg[1])
|
|
72
|
+
|
|
73
|
+
def _arrow3743(__unit: None=None, study: Any=study) -> IEncodable:
|
|
74
|
+
value: str = study.Identifier
|
|
75
|
+
class ObjectExpr3742(IEncodable):
|
|
76
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
77
|
+
return helpers.encode_string(value)
|
|
78
|
+
|
|
79
|
+
return ObjectExpr3742()
|
|
80
|
+
|
|
81
|
+
def _arrow3748(value_1: str, study: Any=study) -> IEncodable:
|
|
82
|
+
class ObjectExpr3746(IEncodable):
|
|
83
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
|
|
84
|
+
return helpers_1.encode_string(value_1)
|
|
85
|
+
|
|
86
|
+
return ObjectExpr3746()
|
|
87
|
+
|
|
88
|
+
def _arrow3752(value_3: str, study: Any=study) -> IEncodable:
|
|
89
|
+
class ObjectExpr3749(IEncodable):
|
|
90
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
|
|
91
|
+
return helpers_2.encode_string(value_3)
|
|
92
|
+
|
|
93
|
+
return ObjectExpr3749()
|
|
94
|
+
|
|
95
|
+
def _arrow3756(value_5: str, study: Any=study) -> IEncodable:
|
|
96
|
+
class ObjectExpr3755(IEncodable):
|
|
97
|
+
def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
|
|
98
|
+
return helpers_3.encode_string(value_5)
|
|
99
|
+
|
|
100
|
+
return ObjectExpr3755()
|
|
101
|
+
|
|
102
|
+
def _arrow3759(value_7: str, study: Any=study) -> IEncodable:
|
|
103
|
+
class ObjectExpr3758(IEncodable):
|
|
104
|
+
def Encode(self, helpers_4: IEncoderHelpers_1[Any]) -> Any:
|
|
105
|
+
return helpers_4.encode_string(value_7)
|
|
106
|
+
|
|
107
|
+
return ObjectExpr3758()
|
|
108
|
+
|
|
109
|
+
def _arrow3760(oa: Publication, study: Any=study) -> IEncodable:
|
|
110
|
+
return encoder_5(oa)
|
|
111
|
+
|
|
112
|
+
def _arrow3761(person: Person, study: Any=study) -> IEncodable:
|
|
113
|
+
return encoder_6(person)
|
|
114
|
+
|
|
115
|
+
def _arrow3763(oa_1: OntologyAnnotation, study: Any=study) -> IEncodable:
|
|
116
|
+
return OntologyAnnotation_encoder(oa_1)
|
|
117
|
+
|
|
118
|
+
def _arrow3764(table: ArcTable, study: Any=study) -> IEncodable:
|
|
119
|
+
return encoder_7(table)
|
|
120
|
+
|
|
121
|
+
def _arrow3765(dm: Datamap, study: Any=study) -> IEncodable:
|
|
122
|
+
return encoder_8(dm)
|
|
123
|
+
|
|
124
|
+
def _arrow3767(value_9: str, study: Any=study) -> IEncodable:
|
|
125
|
+
class ObjectExpr3766(IEncodable):
|
|
126
|
+
def Encode(self, helpers_5: IEncoderHelpers_1[Any]) -> Any:
|
|
127
|
+
return helpers_5.encode_string(value_9)
|
|
128
|
+
|
|
129
|
+
return ObjectExpr3766()
|
|
130
|
+
|
|
131
|
+
def _arrow3768(comment: Comment, study: Any=study) -> IEncodable:
|
|
132
|
+
return encoder_9(comment)
|
|
133
|
+
|
|
134
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("Identifier", _arrow3743()), try_include("Title", _arrow3748, study.Title), try_include("Description", _arrow3752, study.Description), try_include("SubmissionDate", _arrow3756, study.SubmissionDate), try_include("PublicReleaseDate", _arrow3759, study.PublicReleaseDate), try_include_seq("Publications", _arrow3760, study.Publications), try_include_seq("Contacts", _arrow3761, study.Contacts), try_include_seq("StudyDesignDescriptors", _arrow3763, study.StudyDesignDescriptors), try_include_seq("Tables", _arrow3764, study.Tables), try_include("Datamap", _arrow3765, study.Datamap), try_include_seq("RegisteredAssayIdentifiers", _arrow3767, study.RegisteredAssayIdentifiers), try_include_seq("Comments", _arrow3768, study.Comments)]))
|
|
135
|
+
class ObjectExpr3774(IEncodable):
|
|
136
|
+
def Encode(self, helpers_6: IEncoderHelpers_1[Any], study: Any=study) -> Any:
|
|
137
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
138
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_6))
|
|
139
|
+
|
|
140
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
141
|
+
return helpers_6.encode_object(arg)
|
|
142
|
+
|
|
143
|
+
return ObjectExpr3774()
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
def _arrow3802(get: IGetters) -> ArcStudy:
|
|
147
|
+
def _arrow3779(__unit: None=None) -> str:
|
|
148
|
+
object_arg: IRequiredGetter = get.Required
|
|
149
|
+
return object_arg.Field("Identifier", string)
|
|
150
|
+
|
|
151
|
+
def _arrow3781(__unit: None=None) -> str | None:
|
|
152
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
153
|
+
return object_arg_1.Field("Title", string)
|
|
154
|
+
|
|
155
|
+
def _arrow3782(__unit: None=None) -> str | None:
|
|
156
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
157
|
+
return object_arg_2.Field("Description", string)
|
|
158
|
+
|
|
159
|
+
def _arrow3785(__unit: None=None) -> str | None:
|
|
160
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
161
|
+
return object_arg_3.Field("SubmissionDate", string)
|
|
162
|
+
|
|
163
|
+
def _arrow3786(__unit: None=None) -> str | None:
|
|
164
|
+
object_arg_4: IOptionalGetter = get.Optional
|
|
165
|
+
return object_arg_4.Field("PublicReleaseDate", string)
|
|
166
|
+
|
|
167
|
+
def _arrow3787(__unit: None=None) -> Array[Publication] | None:
|
|
168
|
+
arg_11: Decoder_1[Array[Publication]] = resize_array(decoder_2)
|
|
169
|
+
object_arg_5: IOptionalGetter = get.Optional
|
|
170
|
+
return object_arg_5.Field("Publications", arg_11)
|
|
171
|
+
|
|
172
|
+
def _arrow3789(__unit: None=None) -> Array[Person] | None:
|
|
173
|
+
arg_13: Decoder_1[Array[Person]] = resize_array(decoder_3)
|
|
174
|
+
object_arg_6: IOptionalGetter = get.Optional
|
|
175
|
+
return object_arg_6.Field("Contacts", arg_13)
|
|
176
|
+
|
|
177
|
+
def _arrow3791(__unit: None=None) -> Array[OntologyAnnotation] | None:
|
|
178
|
+
arg_15: Decoder_1[Array[OntologyAnnotation]] = resize_array(OntologyAnnotation_decoder)
|
|
179
|
+
object_arg_7: IOptionalGetter = get.Optional
|
|
180
|
+
return object_arg_7.Field("StudyDesignDescriptors", arg_15)
|
|
181
|
+
|
|
182
|
+
def _arrow3794(__unit: None=None) -> Array[ArcTable] | None:
|
|
183
|
+
arg_17: Decoder_1[Array[ArcTable]] = resize_array(decoder_4)
|
|
184
|
+
object_arg_8: IOptionalGetter = get.Optional
|
|
185
|
+
return object_arg_8.Field("Tables", arg_17)
|
|
186
|
+
|
|
187
|
+
def _arrow3795(__unit: None=None) -> Datamap | None:
|
|
188
|
+
object_arg_9: IOptionalGetter = get.Optional
|
|
189
|
+
return object_arg_9.Field("Datamap", decoder_5)
|
|
190
|
+
|
|
191
|
+
def _arrow3798(__unit: None=None) -> Array[str] | None:
|
|
192
|
+
arg_21: Decoder_1[Array[str]] = resize_array(string)
|
|
193
|
+
object_arg_10: IOptionalGetter = get.Optional
|
|
194
|
+
return object_arg_10.Field("RegisteredAssayIdentifiers", arg_21)
|
|
195
|
+
|
|
196
|
+
def _arrow3799(__unit: None=None) -> Array[Comment] | None:
|
|
197
|
+
arg_23: Decoder_1[Array[Comment]] = resize_array(decoder_6)
|
|
198
|
+
object_arg_11: IOptionalGetter = get.Optional
|
|
199
|
+
return object_arg_11.Field("Comments", arg_23)
|
|
200
|
+
|
|
201
|
+
return ArcStudy(_arrow3779(), _arrow3781(), _arrow3782(), _arrow3785(), _arrow3786(), _arrow3787(), _arrow3789(), _arrow3791(), _arrow3794(), _arrow3795(), _arrow3798(), _arrow3799())
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
decoder: Decoder_1[ArcStudy] = object(_arrow3802)
|
|
205
|
+
|
|
206
|
+
def encoder_compressed(string_table: Any, oa_table: Any, cell_table: Any, study: ArcStudy) -> IEncodable:
|
|
207
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> tuple[str, IEncodable] | None:
|
|
208
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
209
|
+
return (tupled_arg[0], v_1)
|
|
210
|
+
|
|
211
|
+
return map(mapping, tupled_arg[1])
|
|
212
|
+
|
|
213
|
+
def _arrow3812(__unit: None=None, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
214
|
+
value: str = study.Identifier
|
|
215
|
+
class ObjectExpr3811(IEncodable):
|
|
216
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
217
|
+
return helpers.encode_string(value)
|
|
218
|
+
|
|
219
|
+
return ObjectExpr3811()
|
|
220
|
+
|
|
221
|
+
def _arrow3817(value_1: str, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
222
|
+
class ObjectExpr3816(IEncodable):
|
|
223
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any]) -> Any:
|
|
224
|
+
return helpers_1.encode_string(value_1)
|
|
225
|
+
|
|
226
|
+
return ObjectExpr3816()
|
|
227
|
+
|
|
228
|
+
def _arrow3819(value_3: str, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
229
|
+
class ObjectExpr3818(IEncodable):
|
|
230
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
|
|
231
|
+
return helpers_2.encode_string(value_3)
|
|
232
|
+
|
|
233
|
+
return ObjectExpr3818()
|
|
234
|
+
|
|
235
|
+
def _arrow3822(value_5: str, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
236
|
+
class ObjectExpr3821(IEncodable):
|
|
237
|
+
def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
|
|
238
|
+
return helpers_3.encode_string(value_5)
|
|
239
|
+
|
|
240
|
+
return ObjectExpr3821()
|
|
241
|
+
|
|
242
|
+
def _arrow3824(value_7: str, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
243
|
+
class ObjectExpr3823(IEncodable):
|
|
244
|
+
def Encode(self, helpers_4: IEncoderHelpers_1[Any]) -> Any:
|
|
245
|
+
return helpers_4.encode_string(value_7)
|
|
246
|
+
|
|
247
|
+
return ObjectExpr3823()
|
|
248
|
+
|
|
249
|
+
def _arrow3825(oa: Publication, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
250
|
+
return encoder_5(oa)
|
|
251
|
+
|
|
252
|
+
def _arrow3826(person: Person, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
253
|
+
return encoder_6(person)
|
|
254
|
+
|
|
255
|
+
def _arrow3827(oa_1: OntologyAnnotation, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
256
|
+
return OntologyAnnotation_encoder(oa_1)
|
|
257
|
+
|
|
258
|
+
def _arrow3828(table: ArcTable, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
259
|
+
return encoder_compressed_1(string_table, oa_table, cell_table, table)
|
|
260
|
+
|
|
261
|
+
def _arrow3830(dm: Datamap, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
262
|
+
return encoder_compressed_2(string_table, oa_table, cell_table, dm)
|
|
263
|
+
|
|
264
|
+
def _arrow3835(value_9: str, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
265
|
+
class ObjectExpr3834(IEncodable):
|
|
266
|
+
def Encode(self, helpers_5: IEncoderHelpers_1[Any]) -> Any:
|
|
267
|
+
return helpers_5.encode_string(value_9)
|
|
268
|
+
|
|
269
|
+
return ObjectExpr3834()
|
|
270
|
+
|
|
271
|
+
def _arrow3836(comment: Comment, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> IEncodable:
|
|
272
|
+
return encoder_9(comment)
|
|
273
|
+
|
|
274
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("Identifier", _arrow3812()), try_include("Title", _arrow3817, study.Title), try_include("Description", _arrow3819, study.Description), try_include("SubmissionDate", _arrow3822, study.SubmissionDate), try_include("PublicReleaseDate", _arrow3824, study.PublicReleaseDate), try_include_seq("Publications", _arrow3825, study.Publications), try_include_seq("Contacts", _arrow3826, study.Contacts), try_include_seq("StudyDesignDescriptors", _arrow3827, study.StudyDesignDescriptors), try_include_seq("Tables", _arrow3828, study.Tables), try_include("Datamap", _arrow3830, study.Datamap), try_include_seq("RegisteredAssayIdentifiers", _arrow3835, study.RegisteredAssayIdentifiers), try_include_seq("Comments", _arrow3836, study.Comments)]))
|
|
275
|
+
class ObjectExpr3839(IEncodable):
|
|
276
|
+
def Encode(self, helpers_6: IEncoderHelpers_1[Any], string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table, study: Any=study) -> Any:
|
|
277
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
278
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_6))
|
|
279
|
+
|
|
280
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
281
|
+
return helpers_6.encode_object(arg)
|
|
282
|
+
|
|
283
|
+
return ObjectExpr3839()
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
def decoder_compressed(string_table: Array[str], oa_table: Array[OntologyAnnotation], cell_table: Array[CompositeCell]) -> Decoder_1[ArcStudy]:
|
|
287
|
+
def _arrow3858(get: IGetters, string_table: Any=string_table, oa_table: Any=oa_table, cell_table: Any=cell_table) -> ArcStudy:
|
|
288
|
+
def _arrow3845(__unit: None=None) -> str:
|
|
289
|
+
object_arg: IRequiredGetter = get.Required
|
|
290
|
+
return object_arg.Field("Identifier", string)
|
|
291
|
+
|
|
292
|
+
def _arrow3847(__unit: None=None) -> str | None:
|
|
293
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
294
|
+
return object_arg_1.Field("Title", string)
|
|
295
|
+
|
|
296
|
+
def _arrow3848(__unit: None=None) -> str | None:
|
|
297
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
298
|
+
return object_arg_2.Field("Description", string)
|
|
299
|
+
|
|
300
|
+
def _arrow3849(__unit: None=None) -> str | None:
|
|
301
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
302
|
+
return object_arg_3.Field("SubmissionDate", string)
|
|
303
|
+
|
|
304
|
+
def _arrow3850(__unit: None=None) -> str | None:
|
|
305
|
+
object_arg_4: IOptionalGetter = get.Optional
|
|
306
|
+
return object_arg_4.Field("PublicReleaseDate", string)
|
|
307
|
+
|
|
308
|
+
def _arrow3851(__unit: None=None) -> Array[Publication] | None:
|
|
309
|
+
arg_11: Decoder_1[Array[Publication]] = resize_array(decoder_2)
|
|
310
|
+
object_arg_5: IOptionalGetter = get.Optional
|
|
311
|
+
return object_arg_5.Field("Publications", arg_11)
|
|
312
|
+
|
|
313
|
+
def _arrow3852(__unit: None=None) -> Array[Person] | None:
|
|
314
|
+
arg_13: Decoder_1[Array[Person]] = resize_array(decoder_3)
|
|
315
|
+
object_arg_6: IOptionalGetter = get.Optional
|
|
316
|
+
return object_arg_6.Field("Contacts", arg_13)
|
|
317
|
+
|
|
318
|
+
def _arrow3853(__unit: None=None) -> Array[OntologyAnnotation] | None:
|
|
319
|
+
arg_15: Decoder_1[Array[OntologyAnnotation]] = resize_array(OntologyAnnotation_decoder)
|
|
320
|
+
object_arg_7: IOptionalGetter = get.Optional
|
|
321
|
+
return object_arg_7.Field("StudyDesignDescriptors", arg_15)
|
|
322
|
+
|
|
323
|
+
def _arrow3854(__unit: None=None) -> Array[ArcTable] | None:
|
|
324
|
+
arg_17: Decoder_1[Array[ArcTable]] = resize_array(decoder_compressed_1(string_table, oa_table, cell_table))
|
|
325
|
+
object_arg_8: IOptionalGetter = get.Optional
|
|
326
|
+
return object_arg_8.Field("Tables", arg_17)
|
|
327
|
+
|
|
328
|
+
def _arrow3855(__unit: None=None) -> Datamap | None:
|
|
329
|
+
arg_19: Decoder_1[Datamap] = decoder_compressed_2(string_table, oa_table, cell_table)
|
|
330
|
+
object_arg_9: IOptionalGetter = get.Optional
|
|
331
|
+
return object_arg_9.Field("Datamap", arg_19)
|
|
332
|
+
|
|
333
|
+
def _arrow3856(__unit: None=None) -> Array[str] | None:
|
|
334
|
+
arg_21: Decoder_1[Array[str]] = resize_array(string)
|
|
335
|
+
object_arg_10: IOptionalGetter = get.Optional
|
|
336
|
+
return object_arg_10.Field("RegisteredAssayIdentifiers", arg_21)
|
|
337
|
+
|
|
338
|
+
def _arrow3857(__unit: None=None) -> Array[Comment] | None:
|
|
339
|
+
arg_23: Decoder_1[Array[Comment]] = resize_array(decoder_6)
|
|
340
|
+
object_arg_11: IOptionalGetter = get.Optional
|
|
341
|
+
return object_arg_11.Field("Comments", arg_23)
|
|
342
|
+
|
|
343
|
+
return ArcStudy(_arrow3845(), _arrow3847(), _arrow3848(), _arrow3849(), _arrow3850(), _arrow3851(), _arrow3852(), _arrow3853(), _arrow3854(), _arrow3855(), _arrow3856(), _arrow3857())
|
|
344
|
+
|
|
345
|
+
return object(_arrow3858)
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
def ROCrate_genID(a: ArcStudy) -> str:
|
|
349
|
+
match_value: str = a.Identifier
|
|
350
|
+
if match_value == "":
|
|
351
|
+
return "#EmptyStudy"
|
|
352
|
+
|
|
353
|
+
else:
|
|
354
|
+
return ("studies/" + replace(match_value, " ", "_")) + "/"
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
def ROCrate_encoder(assays: FSharpList[ArcAssay] | None, s: ArcStudy) -> IEncodable:
|
|
359
|
+
file_name: str | None = Study_tryFileNameFromIdentifier(s.Identifier)
|
|
360
|
+
processes: FSharpList[Process] = ARCtrl_ArcTables__ArcTables_GetProcesses(s)
|
|
361
|
+
assays_1: Array[ArcAssay] = Helper_getAssayInformation(assays, s)
|
|
362
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], assays: Any=assays, s: Any=s) -> tuple[str, IEncodable] | None:
|
|
363
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
364
|
+
return (tupled_arg[0], v_1)
|
|
365
|
+
|
|
366
|
+
return map(mapping, tupled_arg[1])
|
|
367
|
+
|
|
368
|
+
def _arrow3862(__unit: None=None, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
369
|
+
value: str = ROCrate_genID(s)
|
|
370
|
+
class ObjectExpr3861(IEncodable):
|
|
371
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
372
|
+
return helpers.encode_string(value)
|
|
373
|
+
|
|
374
|
+
return ObjectExpr3861()
|
|
375
|
+
|
|
376
|
+
class ObjectExpr3863(IEncodable):
|
|
377
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], assays: Any=assays, s: Any=s) -> Any:
|
|
378
|
+
return helpers_1.encode_string("Study")
|
|
379
|
+
|
|
380
|
+
class ObjectExpr3864(IEncodable):
|
|
381
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any], assays: Any=assays, s: Any=s) -> Any:
|
|
382
|
+
return helpers_2.encode_string("Study")
|
|
383
|
+
|
|
384
|
+
def _arrow3866(__unit: None=None, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
385
|
+
value_3: str = s.Identifier
|
|
386
|
+
class ObjectExpr3865(IEncodable):
|
|
387
|
+
def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
|
|
388
|
+
return helpers_3.encode_string(value_3)
|
|
389
|
+
|
|
390
|
+
return ObjectExpr3865()
|
|
391
|
+
|
|
392
|
+
def _arrow3868(value_4: str, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
393
|
+
class ObjectExpr3867(IEncodable):
|
|
394
|
+
def Encode(self, helpers_4: IEncoderHelpers_1[Any]) -> Any:
|
|
395
|
+
return helpers_4.encode_string(value_4)
|
|
396
|
+
|
|
397
|
+
return ObjectExpr3867()
|
|
398
|
+
|
|
399
|
+
def _arrow3870(value_6: str, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
400
|
+
class ObjectExpr3869(IEncodable):
|
|
401
|
+
def Encode(self, helpers_5: IEncoderHelpers_1[Any]) -> Any:
|
|
402
|
+
return helpers_5.encode_string(value_6)
|
|
403
|
+
|
|
404
|
+
return ObjectExpr3869()
|
|
405
|
+
|
|
406
|
+
def _arrow3872(value_8: str, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
407
|
+
class ObjectExpr3871(IEncodable):
|
|
408
|
+
def Encode(self, helpers_6: IEncoderHelpers_1[Any]) -> Any:
|
|
409
|
+
return helpers_6.encode_string(value_8)
|
|
410
|
+
|
|
411
|
+
return ObjectExpr3871()
|
|
412
|
+
|
|
413
|
+
def _arrow3873(oa: OntologyAnnotation, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
414
|
+
return OntologyAnnotation_ROCrate_encoderDefinedTerm(oa)
|
|
415
|
+
|
|
416
|
+
def _arrow3875(value_10: str, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
417
|
+
class ObjectExpr3874(IEncodable):
|
|
418
|
+
def Encode(self, helpers_7: IEncoderHelpers_1[Any]) -> Any:
|
|
419
|
+
return helpers_7.encode_string(value_10)
|
|
420
|
+
|
|
421
|
+
return ObjectExpr3874()
|
|
422
|
+
|
|
423
|
+
def _arrow3877(value_12: str, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
424
|
+
class ObjectExpr3876(IEncodable):
|
|
425
|
+
def Encode(self, helpers_8: IEncoderHelpers_1[Any]) -> Any:
|
|
426
|
+
return helpers_8.encode_string(value_12)
|
|
427
|
+
|
|
428
|
+
return ObjectExpr3876()
|
|
429
|
+
|
|
430
|
+
def _arrow3878(oa_1: Publication, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
431
|
+
return ROCrate_encoder_1(oa_1)
|
|
432
|
+
|
|
433
|
+
def _arrow3879(oa_2: Person, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
434
|
+
return ROCrate_encoder_2(oa_2)
|
|
435
|
+
|
|
436
|
+
def _arrow3881(__unit: None=None, assays: Any=assays, s: Any=s) -> Callable[[Process], IEncodable]:
|
|
437
|
+
study_name: str | None = s.Identifier
|
|
438
|
+
def _arrow3880(oa_3: Process) -> IEncodable:
|
|
439
|
+
return ROCrate_encoder_3(study_name, None, oa_3)
|
|
440
|
+
|
|
441
|
+
return _arrow3880
|
|
442
|
+
|
|
443
|
+
def _arrow3883(__unit: None=None, assays: Any=assays, s: Any=s) -> Callable[[ArcAssay], IEncodable]:
|
|
444
|
+
assay_name_1: str | None = s.Identifier
|
|
445
|
+
def _arrow3882(a_1: ArcAssay) -> IEncodable:
|
|
446
|
+
return ROCrate_encoder_4(assay_name_1, a_1)
|
|
447
|
+
|
|
448
|
+
return _arrow3882
|
|
449
|
+
|
|
450
|
+
def _arrow3884(oa_4: Data, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
451
|
+
return ROCrate_encoder_5(oa_4)
|
|
452
|
+
|
|
453
|
+
def _arrow3885(comment: Comment, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
454
|
+
return ROCrate_encoder_6(comment)
|
|
455
|
+
|
|
456
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("@id", _arrow3862()), ("@type", list_1_1(singleton(ObjectExpr3863()))), ("additionalType", ObjectExpr3864()), ("identifier", _arrow3866()), try_include("filename", _arrow3868, file_name), try_include("title", _arrow3870, s.Title), try_include("description", _arrow3872, s.Description), try_include_seq("studyDesignDescriptors", _arrow3873, s.StudyDesignDescriptors), try_include("submissionDate", _arrow3875, s.SubmissionDate), try_include("publicReleaseDate", _arrow3877, s.PublicReleaseDate), try_include_seq("publications", _arrow3878, s.Publications), try_include_seq("people", _arrow3879, s.Contacts), try_include_list("processSequence", _arrow3881(), processes), try_include_seq("assays", _arrow3883(), assays_1), try_include_list("dataFiles", _arrow3884, get_data(processes)), try_include_seq("comments", _arrow3885, s.Comments), ("@context", context_jsonvalue)]))
|
|
457
|
+
class ObjectExpr3886(IEncodable):
|
|
458
|
+
def Encode(self, helpers_9: IEncoderHelpers_1[Any], assays: Any=assays, s: Any=s) -> Any:
|
|
459
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
460
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_9))
|
|
461
|
+
|
|
462
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
463
|
+
return helpers_9.encode_object(arg)
|
|
464
|
+
|
|
465
|
+
return ObjectExpr3886()
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
def _arrow3897(get: IGetters) -> tuple[ArcStudy, FSharpList[ArcAssay]]:
|
|
469
|
+
def _arrow3887(__unit: None=None) -> str | None:
|
|
470
|
+
object_arg: IOptionalGetter = get.Optional
|
|
471
|
+
return object_arg.Field("filename", string)
|
|
472
|
+
|
|
473
|
+
identifier: str = default_arg(bind(Study_tryIdentifierFromFileName, _arrow3887()), create_missing_identifier())
|
|
474
|
+
assays: FSharpList[ArcAssay] | None
|
|
475
|
+
arg_3: Decoder_1[FSharpList[ArcAssay]] = list_1_2(ROCrate_decoder_1)
|
|
476
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
477
|
+
assays = object_arg_1.Field("assays", arg_3)
|
|
478
|
+
def mapping_1(arg_4: FSharpList[ArcAssay]) -> Array[str]:
|
|
479
|
+
def mapping(a: ArcAssay, arg_4: Any=arg_4) -> str:
|
|
480
|
+
return a.Identifier
|
|
481
|
+
|
|
482
|
+
return list(map_2(mapping, arg_4))
|
|
483
|
+
|
|
484
|
+
assay_identifiers: Array[str] | None = map(mapping_1, assays)
|
|
485
|
+
def mapping_2(ps: FSharpList[Process]) -> Array[ArcTable]:
|
|
486
|
+
return ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D(ps).Tables
|
|
487
|
+
|
|
488
|
+
def _arrow3888(__unit: None=None) -> FSharpList[Process] | None:
|
|
489
|
+
arg_6: Decoder_1[FSharpList[Process]] = list_1_2(ROCrate_decoder_2)
|
|
490
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
491
|
+
return object_arg_2.Field("processSequence", arg_6)
|
|
492
|
+
|
|
493
|
+
tables: Array[ArcTable] | None = map(mapping_2, _arrow3888())
|
|
494
|
+
def _arrow3889(__unit: None=None) -> str | None:
|
|
495
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
496
|
+
return object_arg_3.Field("title", string)
|
|
497
|
+
|
|
498
|
+
def _arrow3890(__unit: None=None) -> str | None:
|
|
499
|
+
object_arg_4: IOptionalGetter = get.Optional
|
|
500
|
+
return object_arg_4.Field("description", string)
|
|
501
|
+
|
|
502
|
+
def _arrow3891(__unit: None=None) -> str | None:
|
|
503
|
+
object_arg_5: IOptionalGetter = get.Optional
|
|
504
|
+
return object_arg_5.Field("submissionDate", string)
|
|
505
|
+
|
|
506
|
+
def _arrow3892(__unit: None=None) -> str | None:
|
|
507
|
+
object_arg_6: IOptionalGetter = get.Optional
|
|
508
|
+
return object_arg_6.Field("publicReleaseDate", string)
|
|
509
|
+
|
|
510
|
+
def _arrow3893(__unit: None=None) -> Array[Publication] | None:
|
|
511
|
+
arg_16: Decoder_1[Array[Publication]] = resize_array(ROCrate_decoder_3)
|
|
512
|
+
object_arg_7: IOptionalGetter = get.Optional
|
|
513
|
+
return object_arg_7.Field("publications", arg_16)
|
|
514
|
+
|
|
515
|
+
def _arrow3894(__unit: None=None) -> Array[Person] | None:
|
|
516
|
+
arg_18: Decoder_1[Array[Person]] = resize_array(ROCrate_decoder_4)
|
|
517
|
+
object_arg_8: IOptionalGetter = get.Optional
|
|
518
|
+
return object_arg_8.Field("people", arg_18)
|
|
519
|
+
|
|
520
|
+
def _arrow3895(__unit: None=None) -> Array[OntologyAnnotation] | None:
|
|
521
|
+
arg_20: Decoder_1[Array[OntologyAnnotation]] = resize_array(OntologyAnnotation_ROCrate_decoderDefinedTerm)
|
|
522
|
+
object_arg_9: IOptionalGetter = get.Optional
|
|
523
|
+
return object_arg_9.Field("studyDesignDescriptors", arg_20)
|
|
524
|
+
|
|
525
|
+
def _arrow3896(__unit: None=None) -> Array[Comment] | None:
|
|
526
|
+
arg_22: Decoder_1[Array[Comment]] = resize_array(ROCrate_decoder_5)
|
|
527
|
+
object_arg_10: IOptionalGetter = get.Optional
|
|
528
|
+
return object_arg_10.Field("comments", arg_22)
|
|
529
|
+
|
|
530
|
+
return (ArcStudy(identifier, _arrow3889(), _arrow3890(), _arrow3891(), _arrow3892(), _arrow3893(), _arrow3894(), _arrow3895(), tables, None, assay_identifiers, _arrow3896()), default_arg(assays, empty()))
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
ROCrate_decoder: Decoder_1[tuple[ArcStudy, FSharpList[ArcAssay]]] = object(_arrow3897)
|
|
534
|
+
|
|
535
|
+
def ISAJson_encoder(id_map: Any | None, assays: FSharpList[ArcAssay] | None, s: ArcStudy) -> IEncodable:
|
|
536
|
+
def f(s_1: ArcStudy, id_map: Any=id_map, assays: Any=assays, s: Any=s) -> IEncodable:
|
|
537
|
+
study: ArcStudy = s_1.Copy(True)
|
|
538
|
+
file_name: str = Study_fileNameFromIdentifier(study.Identifier)
|
|
539
|
+
assays_1: Array[ArcAssay]
|
|
540
|
+
n: Array[ArcAssay] = []
|
|
541
|
+
enumerator: Any = get_enumerator(Helper_getAssayInformation(assays, study))
|
|
542
|
+
try:
|
|
543
|
+
while enumerator.System_Collections_IEnumerator_MoveNext():
|
|
544
|
+
a: ArcAssay = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
545
|
+
assay: ArcAssay = a.Copy()
|
|
546
|
+
enumerator_1: Any = get_enumerator(assay.Performers)
|
|
547
|
+
try:
|
|
548
|
+
while enumerator_1.System_Collections_IEnumerator_MoveNext():
|
|
549
|
+
person_1: Person = Person_setSourceAssayComment(enumerator_1.System_Collections_Generic_IEnumerator_1_get_Current(), assay.Identifier)
|
|
550
|
+
(study.Contacts.append(person_1))
|
|
551
|
+
|
|
552
|
+
finally:
|
|
553
|
+
dispose(enumerator_1)
|
|
554
|
+
|
|
555
|
+
assay.Performers = []
|
|
556
|
+
(n.append(assay))
|
|
557
|
+
|
|
558
|
+
finally:
|
|
559
|
+
dispose(enumerator)
|
|
560
|
+
|
|
561
|
+
assays_1 = n
|
|
562
|
+
processes: FSharpList[Process] = ARCtrl_ArcTables__ArcTables_GetProcesses(study)
|
|
563
|
+
def encoder_1(oa: OntologyAnnotation, s_1: Any=s_1) -> IEncodable:
|
|
564
|
+
return OntologyAnnotation_ISAJson_encoder(id_map, oa)
|
|
565
|
+
|
|
566
|
+
encoded_units: tuple[str, IEncodable | None] = try_include_list("unitCategories", encoder_1, get_units(processes))
|
|
567
|
+
def encoder_2(value_1: Factor, s_1: Any=s_1) -> IEncodable:
|
|
568
|
+
return encoder_10(id_map, value_1)
|
|
569
|
+
|
|
570
|
+
encoded_factors: tuple[str, IEncodable | None] = try_include_list("factors", encoder_2, get_factors(processes))
|
|
571
|
+
def encoder_3(value_3: MaterialAttribute, s_1: Any=s_1) -> IEncodable:
|
|
572
|
+
return encoder_11(id_map, value_3)
|
|
573
|
+
|
|
574
|
+
encoded_characteristics: tuple[str, IEncodable | None] = try_include_list("characteristicCategories", encoder_3, get_characteristics(processes))
|
|
575
|
+
def _arrow3898(ps: FSharpList[Process], s_1: Any=s_1) -> IEncodable:
|
|
576
|
+
return encoder_12(id_map, ps)
|
|
577
|
+
|
|
578
|
+
encoded_materials: tuple[str, IEncodable | None] = try_include("materials", _arrow3898, Option_fromValueWithDefault(empty(), processes))
|
|
579
|
+
encoded_protocols: tuple[str, IEncodable | None]
|
|
580
|
+
value_5: FSharpList[Protocol] = get_protocols(processes)
|
|
581
|
+
def _arrow3900(__unit: None=None, s_1: Any=s_1) -> Callable[[Protocol], IEncodable]:
|
|
582
|
+
study_name: str | None = s_1.Identifier
|
|
583
|
+
def _arrow3899(oa_1: Protocol) -> IEncodable:
|
|
584
|
+
return ISAJson_encoder_1(study_name, None, None, id_map, oa_1)
|
|
585
|
+
|
|
586
|
+
return _arrow3899
|
|
587
|
+
|
|
588
|
+
encoded_protocols = try_include_list("protocols", _arrow3900(), value_5)
|
|
589
|
+
def chooser(tupled_arg: tuple[str, IEncodable | None], s_1: Any=s_1) -> tuple[str, IEncodable] | None:
|
|
590
|
+
def mapping(v_1: IEncodable, tupled_arg: Any=tupled_arg) -> tuple[str, IEncodable]:
|
|
591
|
+
return (tupled_arg[0], v_1)
|
|
592
|
+
|
|
593
|
+
return map(mapping, tupled_arg[1])
|
|
594
|
+
|
|
595
|
+
def _arrow3904(__unit: None=None, s_1: Any=s_1) -> IEncodable:
|
|
596
|
+
value_6: str = ROCrate_genID(study)
|
|
597
|
+
class ObjectExpr3903(IEncodable):
|
|
598
|
+
def Encode(self, helpers: IEncoderHelpers_1[Any]) -> Any:
|
|
599
|
+
return helpers.encode_string(value_6)
|
|
600
|
+
|
|
601
|
+
return ObjectExpr3903()
|
|
602
|
+
|
|
603
|
+
class ObjectExpr3905(IEncodable):
|
|
604
|
+
def Encode(self, helpers_1: IEncoderHelpers_1[Any], s_1: Any=s_1) -> Any:
|
|
605
|
+
return helpers_1.encode_string(file_name)
|
|
606
|
+
|
|
607
|
+
def _arrow3907(__unit: None=None, s_1: Any=s_1) -> IEncodable:
|
|
608
|
+
value_8: str = study.Identifier
|
|
609
|
+
class ObjectExpr3906(IEncodable):
|
|
610
|
+
def Encode(self, helpers_2: IEncoderHelpers_1[Any]) -> Any:
|
|
611
|
+
return helpers_2.encode_string(value_8)
|
|
612
|
+
|
|
613
|
+
return ObjectExpr3906()
|
|
614
|
+
|
|
615
|
+
def _arrow3909(value_9: str, s_1: Any=s_1) -> IEncodable:
|
|
616
|
+
class ObjectExpr3908(IEncodable):
|
|
617
|
+
def Encode(self, helpers_3: IEncoderHelpers_1[Any]) -> Any:
|
|
618
|
+
return helpers_3.encode_string(value_9)
|
|
619
|
+
|
|
620
|
+
return ObjectExpr3908()
|
|
621
|
+
|
|
622
|
+
def _arrow3911(value_11: str, s_1: Any=s_1) -> IEncodable:
|
|
623
|
+
class ObjectExpr3910(IEncodable):
|
|
624
|
+
def Encode(self, helpers_4: IEncoderHelpers_1[Any]) -> Any:
|
|
625
|
+
return helpers_4.encode_string(value_11)
|
|
626
|
+
|
|
627
|
+
return ObjectExpr3910()
|
|
628
|
+
|
|
629
|
+
def _arrow3913(value_13: str, s_1: Any=s_1) -> IEncodable:
|
|
630
|
+
class ObjectExpr3912(IEncodable):
|
|
631
|
+
def Encode(self, helpers_5: IEncoderHelpers_1[Any]) -> Any:
|
|
632
|
+
return helpers_5.encode_string(value_13)
|
|
633
|
+
|
|
634
|
+
return ObjectExpr3912()
|
|
635
|
+
|
|
636
|
+
def _arrow3915(value_15: str, s_1: Any=s_1) -> IEncodable:
|
|
637
|
+
class ObjectExpr3914(IEncodable):
|
|
638
|
+
def Encode(self, helpers_6: IEncoderHelpers_1[Any]) -> Any:
|
|
639
|
+
return helpers_6.encode_string(value_15)
|
|
640
|
+
|
|
641
|
+
return ObjectExpr3914()
|
|
642
|
+
|
|
643
|
+
def _arrow3916(oa_2: Publication, s_1: Any=s_1) -> IEncodable:
|
|
644
|
+
return ISAJson_encoder_2(id_map, oa_2)
|
|
645
|
+
|
|
646
|
+
def _arrow3917(person_2: Person, s_1: Any=s_1) -> IEncodable:
|
|
647
|
+
return ISAJson_encoder_3(id_map, person_2)
|
|
648
|
+
|
|
649
|
+
def _arrow3918(oa_3: OntologyAnnotation, s_1: Any=s_1) -> IEncodable:
|
|
650
|
+
return OntologyAnnotation_ISAJson_encoder(id_map, oa_3)
|
|
651
|
+
|
|
652
|
+
def _arrow3920(__unit: None=None, s_1: Any=s_1) -> Callable[[Process], IEncodable]:
|
|
653
|
+
study_name_1: str | None = s_1.Identifier
|
|
654
|
+
def _arrow3919(oa_4: Process) -> IEncodable:
|
|
655
|
+
return ISAJson_encoder_4(study_name_1, None, id_map, oa_4)
|
|
656
|
+
|
|
657
|
+
return _arrow3919
|
|
658
|
+
|
|
659
|
+
def _arrow3922(__unit: None=None, s_1: Any=s_1) -> Callable[[ArcAssay], IEncodable]:
|
|
660
|
+
study_name_2: str | None = s_1.Identifier
|
|
661
|
+
def _arrow3921(a_2: ArcAssay) -> IEncodable:
|
|
662
|
+
return ISAJson_encoder_5(study_name_2, id_map, a_2)
|
|
663
|
+
|
|
664
|
+
return _arrow3921
|
|
665
|
+
|
|
666
|
+
def _arrow3923(comment: Comment, s_1: Any=s_1) -> IEncodable:
|
|
667
|
+
return ISAJson_encoder_6(id_map, comment)
|
|
668
|
+
|
|
669
|
+
values: FSharpList[tuple[str, IEncodable]] = choose(chooser, of_array([("@id", _arrow3904()), ("filename", ObjectExpr3905()), ("identifier", _arrow3907()), try_include("title", _arrow3909, study.Title), try_include("description", _arrow3911, study.Description), try_include("submissionDate", _arrow3913, study.SubmissionDate), try_include("publicReleaseDate", _arrow3915, study.PublicReleaseDate), try_include_seq("publications", _arrow3916, study.Publications), try_include_seq("people", _arrow3917, study.Contacts), try_include_seq("studyDesignDescriptors", _arrow3918, study.StudyDesignDescriptors), encoded_protocols, encoded_materials, try_include_list("processSequence", _arrow3920(), processes), try_include_seq("assays", _arrow3922(), assays_1), encoded_factors, encoded_characteristics, encoded_units, try_include_seq("comments", _arrow3923, study.Comments)]))
|
|
670
|
+
class ObjectExpr3924(IEncodable):
|
|
671
|
+
def Encode(self, helpers_7: IEncoderHelpers_1[Any], s_1: Any=s_1) -> Any:
|
|
672
|
+
def mapping_1(tupled_arg_1: tuple[str, IEncodable]) -> tuple[str, __A_]:
|
|
673
|
+
return (tupled_arg_1[0], tupled_arg_1[1].Encode(helpers_7))
|
|
674
|
+
|
|
675
|
+
arg: IEnumerable_1[tuple[str, __A_]] = map_1(mapping_1, values)
|
|
676
|
+
return helpers_7.encode_object(arg)
|
|
677
|
+
|
|
678
|
+
return ObjectExpr3924()
|
|
679
|
+
|
|
680
|
+
if id_map is not None:
|
|
681
|
+
def _arrow3925(s_2: ArcStudy, id_map: Any=id_map, assays: Any=assays, s: Any=s) -> str:
|
|
682
|
+
return ROCrate_genID(s_2)
|
|
683
|
+
|
|
684
|
+
return encode(_arrow3925, f, s, id_map)
|
|
685
|
+
|
|
686
|
+
else:
|
|
687
|
+
return f(s)
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
ISAJson_allowedFields: FSharpList[str] = of_array(["@id", "filename", "identifier", "title", "description", "submissionDate", "publicReleaseDate", "publications", "people", "studyDesignDescriptors", "protocols", "materials", "assays", "factors", "characteristicCategories", "unitCategories", "processSequence", "comments", "@type", "@context"])
|
|
692
|
+
|
|
693
|
+
def _arrow3936(get: IGetters) -> tuple[ArcStudy, FSharpList[ArcAssay]]:
|
|
694
|
+
def _arrow3926(__unit: None=None) -> str | None:
|
|
695
|
+
object_arg: IOptionalGetter = get.Optional
|
|
696
|
+
return object_arg.Field("identifier", string)
|
|
697
|
+
|
|
698
|
+
def def_thunk(__unit: None=None) -> str:
|
|
699
|
+
def _arrow3927(__unit: None=None) -> str | None:
|
|
700
|
+
object_arg_1: IOptionalGetter = get.Optional
|
|
701
|
+
return object_arg_1.Field("filename", string)
|
|
702
|
+
|
|
703
|
+
return default_arg(bind(Study_tryIdentifierFromFileName, _arrow3927()), create_missing_identifier())
|
|
704
|
+
|
|
705
|
+
identifier: str = default_arg_with(_arrow3926(), def_thunk)
|
|
706
|
+
def mapping(arg_6: FSharpList[Process]) -> Array[ArcTable]:
|
|
707
|
+
a: ArcTables = ARCtrl_ArcTables__ArcTables_fromProcesses_Static_62A3309D(arg_6)
|
|
708
|
+
return a.Tables
|
|
709
|
+
|
|
710
|
+
def _arrow3928(__unit: None=None) -> FSharpList[Process] | None:
|
|
711
|
+
arg_5: Decoder_1[FSharpList[Process]] = list_1_2(ISAJson_decoder_1)
|
|
712
|
+
object_arg_2: IOptionalGetter = get.Optional
|
|
713
|
+
return object_arg_2.Field("processSequence", arg_5)
|
|
714
|
+
|
|
715
|
+
tables: Array[ArcTable] | None = map(mapping, _arrow3928())
|
|
716
|
+
assays: FSharpList[ArcAssay] | None
|
|
717
|
+
arg_8: Decoder_1[FSharpList[ArcAssay]] = list_1_2(ISAJson_decoder_2)
|
|
718
|
+
object_arg_3: IOptionalGetter = get.Optional
|
|
719
|
+
assays = object_arg_3.Field("assays", arg_8)
|
|
720
|
+
persons_raw: Array[Person] | None
|
|
721
|
+
arg_10: Decoder_1[Array[Person]] = resize_array(ISAJson_decoder_3)
|
|
722
|
+
object_arg_4: IOptionalGetter = get.Optional
|
|
723
|
+
persons_raw = object_arg_4.Field("people", arg_10)
|
|
724
|
+
persons: Array[Person] = []
|
|
725
|
+
if persons_raw is not None:
|
|
726
|
+
enumerator: Any = get_enumerator(value_17(persons_raw))
|
|
727
|
+
try:
|
|
728
|
+
while enumerator.System_Collections_IEnumerator_MoveNext():
|
|
729
|
+
person: Person = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
730
|
+
source_assays: IEnumerable_1[str] = Person_getSourceAssayIdentifiersFromComments(person)
|
|
731
|
+
with get_enumerator(source_assays) as enumerator_1:
|
|
732
|
+
while enumerator_1.System_Collections_IEnumerator_MoveNext():
|
|
733
|
+
assay_identifier: str = enumerator_1.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
734
|
+
with get_enumerator(value_17(assays)) as enumerator_2:
|
|
735
|
+
while enumerator_2.System_Collections_IEnumerator_MoveNext():
|
|
736
|
+
assay: ArcAssay = enumerator_2.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
737
|
+
if assay.Identifier == assay_identifier:
|
|
738
|
+
(assay.Performers.append(person))
|
|
739
|
+
|
|
740
|
+
person.Comments = Person_removeSourceAssayComments(person)
|
|
741
|
+
if is_empty(source_assays):
|
|
742
|
+
(persons.append(person))
|
|
743
|
+
|
|
744
|
+
|
|
745
|
+
finally:
|
|
746
|
+
dispose(enumerator)
|
|
747
|
+
|
|
748
|
+
|
|
749
|
+
def mapping_2(arg_11: FSharpList[ArcAssay]) -> Array[str]:
|
|
750
|
+
def mapping_1(a_1: ArcAssay, arg_11: Any=arg_11) -> str:
|
|
751
|
+
return a_1.Identifier
|
|
752
|
+
|
|
753
|
+
return list(map_2(mapping_1, arg_11))
|
|
754
|
+
|
|
755
|
+
assay_identifiers: Array[str] | None = map(mapping_2, assays)
|
|
756
|
+
def _arrow3929(__unit: None=None) -> str | None:
|
|
757
|
+
object_arg_5: IOptionalGetter = get.Optional
|
|
758
|
+
return object_arg_5.Field("title", string)
|
|
759
|
+
|
|
760
|
+
def _arrow3930(__unit: None=None) -> str | None:
|
|
761
|
+
object_arg_6: IOptionalGetter = get.Optional
|
|
762
|
+
return object_arg_6.Field("description", string)
|
|
763
|
+
|
|
764
|
+
def _arrow3931(__unit: None=None) -> str | None:
|
|
765
|
+
object_arg_7: IOptionalGetter = get.Optional
|
|
766
|
+
return object_arg_7.Field("submissionDate", string)
|
|
767
|
+
|
|
768
|
+
def _arrow3932(__unit: None=None) -> str | None:
|
|
769
|
+
object_arg_8: IOptionalGetter = get.Optional
|
|
770
|
+
return object_arg_8.Field("publicReleaseDate", string)
|
|
771
|
+
|
|
772
|
+
def _arrow3933(__unit: None=None) -> Array[Publication] | None:
|
|
773
|
+
arg_21: Decoder_1[Array[Publication]] = resize_array(ISAJson_decoder_4)
|
|
774
|
+
object_arg_9: IOptionalGetter = get.Optional
|
|
775
|
+
return object_arg_9.Field("publications", arg_21)
|
|
776
|
+
|
|
777
|
+
def _arrow3934(__unit: None=None) -> Array[OntologyAnnotation] | None:
|
|
778
|
+
arg_23: Decoder_1[Array[OntologyAnnotation]] = resize_array(OntologyAnnotation_ISAJson_decoder)
|
|
779
|
+
object_arg_10: IOptionalGetter = get.Optional
|
|
780
|
+
return object_arg_10.Field("studyDesignDescriptors", arg_23)
|
|
781
|
+
|
|
782
|
+
def _arrow3935(__unit: None=None) -> Array[Comment] | None:
|
|
783
|
+
arg_25: Decoder_1[Array[Comment]] = resize_array(ISAJson_decoder_5)
|
|
784
|
+
object_arg_11: IOptionalGetter = get.Optional
|
|
785
|
+
return object_arg_11.Field("comments", arg_25)
|
|
786
|
+
|
|
787
|
+
return (ArcStudy(identifier, _arrow3929(), _arrow3930(), _arrow3931(), _arrow3932(), _arrow3933(), None if (len(persons) == 0) else persons, _arrow3934(), tables, None, assay_identifiers, _arrow3935()), default_arg(assays, empty()))
|
|
788
|
+
|
|
789
|
+
|
|
790
|
+
ISAJson_decoder: Decoder_1[tuple[ArcStudy, FSharpList[ArcAssay]]] = Decode_objectNoAdditionalProperties(ISAJson_allowedFields, _arrow3936)
|
|
791
|
+
|
|
792
|
+
__all__ = ["Helper_getAssayInformation", "encoder", "decoder", "encoder_compressed", "decoder_compressed", "ROCrate_genID", "ROCrate_encoder", "ROCrate_decoder", "ISAJson_encoder", "ISAJson_allowedFields", "ISAJson_decoder"]
|
|
793
|
+
|