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
|
@@ -0,0 +1,415 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import Any
|
|
4
|
+
from ..fable_library.list import (FSharpList, is_empty, reduce)
|
|
5
|
+
from ..fable_library.map_util import add_to_dict
|
|
6
|
+
from ..fable_library.mutable_map import Dictionary
|
|
7
|
+
from ..fable_library.option import (map, value as value_2, default_arg)
|
|
8
|
+
from ..fable_library.reflection import (TypeInfo, class_type)
|
|
9
|
+
from ..fable_library.seq import (filter, choose, map as map_1, iterate, sort_by, to_list, delay, enumerate_while, singleton)
|
|
10
|
+
from ..fable_library.util import (IEnumerable_1, safe_hash, compare_primitives, is_iterable, get_enumerator, IEnumerator, equals, structural_hash, dispose, is_array_like)
|
|
11
|
+
from .fable_py import (try_get_dynamic_property_helper, get_property_helpers)
|
|
12
|
+
from .hash_codes import (box_hash_key_val_seq_by, hash_1 as hash_1_1, merge_hashes)
|
|
13
|
+
from .property_helper import PropertyHelper
|
|
14
|
+
from .reflection_utils import try_get_static_property_info
|
|
15
|
+
|
|
16
|
+
def _expr27() -> TypeInfo:
|
|
17
|
+
return class_type("DynamicObj.DynamicObj", None, DynamicObj)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class DynamicObj:
|
|
21
|
+
def __init__(self, __unit: None=None) -> None:
|
|
22
|
+
self.properties: Any = dict([])
|
|
23
|
+
|
|
24
|
+
@property
|
|
25
|
+
def Properties(self, __unit: None=None) -> Any:
|
|
26
|
+
this: DynamicObj = self
|
|
27
|
+
return this.properties
|
|
28
|
+
|
|
29
|
+
@Properties.setter
|
|
30
|
+
def Properties(self, value: Any) -> None:
|
|
31
|
+
this: DynamicObj = self
|
|
32
|
+
this.properties = value
|
|
33
|
+
|
|
34
|
+
@staticmethod
|
|
35
|
+
def of_dict(dynamic_properties: Any) -> DynamicObj:
|
|
36
|
+
obj: DynamicObj = DynamicObj()
|
|
37
|
+
obj.Properties = dynamic_properties
|
|
38
|
+
return obj
|
|
39
|
+
|
|
40
|
+
def TryGetStaticPropertyHelper(self, property_name: str) -> PropertyHelper | None:
|
|
41
|
+
this: DynamicObj = self
|
|
42
|
+
return try_get_static_property_info(this, property_name)
|
|
43
|
+
|
|
44
|
+
def TryGetDynamicPropertyHelper(self, property_name: str) -> PropertyHelper | None:
|
|
45
|
+
this: DynamicObj = self
|
|
46
|
+
return try_get_dynamic_property_helper(this, property_name)
|
|
47
|
+
|
|
48
|
+
def TryGetPropertyHelper(self, property_name: str) -> PropertyHelper | None:
|
|
49
|
+
this: DynamicObj = self
|
|
50
|
+
match_value: PropertyHelper | None = this.TryGetStaticPropertyHelper(property_name)
|
|
51
|
+
return this.TryGetDynamicPropertyHelper(property_name) if (match_value is None) else match_value
|
|
52
|
+
|
|
53
|
+
def TryGetPropertyValue(self, property_name: str) -> Any | None:
|
|
54
|
+
this: DynamicObj = self
|
|
55
|
+
def mapping(pi: PropertyHelper) -> Any:
|
|
56
|
+
return pi.GetValue(this)
|
|
57
|
+
|
|
58
|
+
return map(mapping, this.TryGetPropertyHelper(property_name))
|
|
59
|
+
|
|
60
|
+
def GetPropertyValue(self, property_name: str) -> Any:
|
|
61
|
+
this: DynamicObj = self
|
|
62
|
+
match_value: Any | None = this.TryGetPropertyValue(property_name)
|
|
63
|
+
if match_value is None:
|
|
64
|
+
raise Exception(("No dynamic or static property \"" + property_name) + "\" does exist on object.")
|
|
65
|
+
|
|
66
|
+
else:
|
|
67
|
+
return value_2(match_value)
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
def SetProperty(self, property_name: str, property_value: Any=None) -> None:
|
|
71
|
+
this: DynamicObj = self
|
|
72
|
+
match_value: PropertyHelper | None = this.TryGetStaticPropertyHelper(property_name)
|
|
73
|
+
if match_value is None:
|
|
74
|
+
setattr(this,property_name,property_value)
|
|
75
|
+
|
|
76
|
+
else:
|
|
77
|
+
pi: PropertyHelper = match_value
|
|
78
|
+
if pi.IsMutable:
|
|
79
|
+
pi.SetValue(this, property_value)
|
|
80
|
+
|
|
81
|
+
else:
|
|
82
|
+
raise Exception(("Cannot set value for static, immutable property \"" + property_name) + "\"")
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
def RemoveProperty(self, property_name: str) -> bool:
|
|
87
|
+
this: DynamicObj = self
|
|
88
|
+
match_value: PropertyHelper | None = this.TryGetPropertyHelper(property_name)
|
|
89
|
+
if match_value is None:
|
|
90
|
+
return False
|
|
91
|
+
|
|
92
|
+
elif match_value.IsMutable:
|
|
93
|
+
pi_1: PropertyHelper = match_value
|
|
94
|
+
pi_1.RemoveValue(this)
|
|
95
|
+
return True
|
|
96
|
+
|
|
97
|
+
else:
|
|
98
|
+
raise Exception(("Cannot remove value for static, immutable property \"" + property_name) + "\"")
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
def GetPropertyHelpers(self, include_instance_properties: bool) -> IEnumerable_1[PropertyHelper]:
|
|
102
|
+
this: DynamicObj = self
|
|
103
|
+
def predicate_1(p: PropertyHelper) -> bool:
|
|
104
|
+
return p.Name.lower() != "properties"
|
|
105
|
+
|
|
106
|
+
def predicate(pd: PropertyHelper) -> bool:
|
|
107
|
+
if include_instance_properties:
|
|
108
|
+
return True
|
|
109
|
+
|
|
110
|
+
else:
|
|
111
|
+
return pd.IsDynamic
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
return filter(predicate_1, filter(predicate, get_property_helpers(this)))
|
|
115
|
+
|
|
116
|
+
def GetProperties(self, include_instance_properties: bool) -> IEnumerable_1[Any]:
|
|
117
|
+
this: DynamicObj = self
|
|
118
|
+
def chooser(kv: PropertyHelper) -> Any | None:
|
|
119
|
+
if kv.Name != "properties":
|
|
120
|
+
return (kv.Name, kv.GetValue(this))
|
|
121
|
+
|
|
122
|
+
else:
|
|
123
|
+
return None
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
return choose(chooser, this.GetPropertyHelpers(include_instance_properties))
|
|
127
|
+
|
|
128
|
+
def GetPropertyNames(self, include_instance_properties: bool) -> IEnumerable_1[str]:
|
|
129
|
+
this: DynamicObj = self
|
|
130
|
+
def mapping(kv: Any) -> str:
|
|
131
|
+
return kv[0]
|
|
132
|
+
|
|
133
|
+
return map_1(mapping, this.GetProperties(include_instance_properties))
|
|
134
|
+
|
|
135
|
+
def ShallowCopyDynamicPropertiesTo(self, target: Any, over_write: bool | None=None) -> None:
|
|
136
|
+
this: DynamicObj = self
|
|
137
|
+
over_write_1: bool = default_arg(over_write, False)
|
|
138
|
+
def action(kv: Any) -> None:
|
|
139
|
+
match_value: PropertyHelper | None = target.TryGetPropertyHelper(kv[0])
|
|
140
|
+
if match_value is None:
|
|
141
|
+
target.SetProperty(kv[0], kv[1])
|
|
142
|
+
|
|
143
|
+
else:
|
|
144
|
+
def _arrow25(__unit: None=None, kv: Any=kv) -> bool:
|
|
145
|
+
pi: PropertyHelper = match_value
|
|
146
|
+
return over_write_1
|
|
147
|
+
|
|
148
|
+
if _arrow25():
|
|
149
|
+
pi_1: PropertyHelper = match_value
|
|
150
|
+
pi_1.SetValue(target, kv[1])
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
iterate(action, this.GetProperties(False))
|
|
155
|
+
|
|
156
|
+
def ShallowCopyDynamicProperties(self, __unit: None=None) -> DynamicObj:
|
|
157
|
+
this: DynamicObj = self
|
|
158
|
+
target: DynamicObj = DynamicObj()
|
|
159
|
+
this.ShallowCopyDynamicPropertiesTo(target, True)
|
|
160
|
+
return target
|
|
161
|
+
|
|
162
|
+
def DeepCopyPropertiesTo(self, target: Any, over_write: bool | None=None, include_instance_properties: bool | None=None) -> None:
|
|
163
|
+
this: DynamicObj = self
|
|
164
|
+
over_write_1: bool = default_arg(over_write, False)
|
|
165
|
+
include_instance_properties_1: bool = default_arg(include_instance_properties, True)
|
|
166
|
+
def action(kv: Any) -> None:
|
|
167
|
+
match_value: PropertyHelper | None = target.TryGetPropertyHelper(kv[0])
|
|
168
|
+
if match_value is None:
|
|
169
|
+
target.SetProperty(kv[0], CopyUtils_tryDeepCopyObj_75B3D832(kv[1]))
|
|
170
|
+
|
|
171
|
+
else:
|
|
172
|
+
def _arrow26(__unit: None=None, kv: Any=kv) -> bool:
|
|
173
|
+
pi: PropertyHelper = match_value
|
|
174
|
+
return over_write_1
|
|
175
|
+
|
|
176
|
+
if _arrow26():
|
|
177
|
+
pi_1: PropertyHelper = match_value
|
|
178
|
+
pi_1.SetValue(target, CopyUtils_tryDeepCopyObj_75B3D832(kv[1]))
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
iterate(action, this.GetProperties(include_instance_properties_1))
|
|
183
|
+
|
|
184
|
+
def DeepCopyProperties(self, include_instance_properties: bool | None=None) -> Any:
|
|
185
|
+
this: DynamicObj = self
|
|
186
|
+
return CopyUtils_tryDeepCopyObj_75B3D832(this, default_arg(include_instance_properties, True))
|
|
187
|
+
|
|
188
|
+
@staticmethod
|
|
189
|
+
def op_dynamic(lookup: Any, name: str) -> Any:
|
|
190
|
+
match_value: Any | None = lookup.TryGetPropertyValue(name)
|
|
191
|
+
if match_value is None:
|
|
192
|
+
raise Exception()
|
|
193
|
+
|
|
194
|
+
else:
|
|
195
|
+
return value_2(match_value)
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
@staticmethod
|
|
199
|
+
def op_dynamic_assignment(lookup: Any, name: str, value: Any) -> None:
|
|
200
|
+
lookup.SetProperty(name, value)
|
|
201
|
+
|
|
202
|
+
def ReferenceEquals(self, other: DynamicObj) -> bool:
|
|
203
|
+
this: DynamicObj = self
|
|
204
|
+
return this is other
|
|
205
|
+
|
|
206
|
+
def StructurallyEquals(self, other: DynamicObj) -> bool:
|
|
207
|
+
this: DynamicObj = self
|
|
208
|
+
return safe_hash(this) == safe_hash(other)
|
|
209
|
+
|
|
210
|
+
def __hash__(self, __unit: None=None) -> int:
|
|
211
|
+
this: DynamicObj = self
|
|
212
|
+
return HashUtils_deepHash_4E60E31B(this)
|
|
213
|
+
|
|
214
|
+
def __eq__(self, o: Any=None) -> bool:
|
|
215
|
+
this: DynamicObj = self
|
|
216
|
+
return this.StructurallyEquals(o) if isinstance(o, DynamicObj) else False
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
DynamicObj_reflection = _expr27
|
|
220
|
+
|
|
221
|
+
def DynamicObj__ctor(__unit: None=None) -> DynamicObj:
|
|
222
|
+
return DynamicObj(__unit)
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
def _expr28() -> TypeInfo:
|
|
226
|
+
return class_type("DynamicObj.HashUtils", None, HashUtils)
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
class HashUtils:
|
|
230
|
+
...
|
|
231
|
+
|
|
232
|
+
HashUtils_reflection = _expr28
|
|
233
|
+
|
|
234
|
+
def _expr29() -> TypeInfo:
|
|
235
|
+
return class_type("DynamicObj.CopyUtils", None, CopyUtils)
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
class CopyUtils:
|
|
239
|
+
...
|
|
240
|
+
|
|
241
|
+
CopyUtils_reflection = _expr29
|
|
242
|
+
|
|
243
|
+
def HashUtils_deepHash_4E60E31B(o: Any=None) -> int:
|
|
244
|
+
if isinstance(o, DynamicObj):
|
|
245
|
+
def f(o_2: Any=None, o: Any=o) -> int:
|
|
246
|
+
return HashUtils_deepHash_4E60E31B(o_2)
|
|
247
|
+
|
|
248
|
+
def projection(pair: Any, o: Any=o) -> str:
|
|
249
|
+
return pair[0]
|
|
250
|
+
|
|
251
|
+
class ObjectExpr30:
|
|
252
|
+
@property
|
|
253
|
+
def Compare(self) -> Callable[[str, str], int]:
|
|
254
|
+
return compare_primitives
|
|
255
|
+
|
|
256
|
+
return box_hash_key_val_seq_by(f, sort_by(projection, o.GetProperties(True), ObjectExpr30()))
|
|
257
|
+
|
|
258
|
+
elif str(type(o)) == "<class \'str\'>":
|
|
259
|
+
return hash_1_1(o)
|
|
260
|
+
|
|
261
|
+
elif is_iterable(o):
|
|
262
|
+
en: IEnumerator[Any] = get_enumerator(o)
|
|
263
|
+
def _arrow33(__unit: None=None, o: Any=o) -> IEnumerable_1[int]:
|
|
264
|
+
def _arrow31(__unit: None=None) -> bool:
|
|
265
|
+
return en.System_Collections_IEnumerator_MoveNext()
|
|
266
|
+
|
|
267
|
+
def _arrow32(__unit: None=None) -> IEnumerable_1[int]:
|
|
268
|
+
return singleton(HashUtils_deepHash_4E60E31B(en.System_Collections_IEnumerator_get_Current()))
|
|
269
|
+
|
|
270
|
+
return enumerate_while(_arrow31, delay(_arrow32))
|
|
271
|
+
|
|
272
|
+
l: FSharpList[int] = to_list(delay(_arrow33))
|
|
273
|
+
if is_empty(l):
|
|
274
|
+
return 0
|
|
275
|
+
|
|
276
|
+
else:
|
|
277
|
+
def _arrow34(hash_1: int, hash_2: int, o: Any=o) -> int:
|
|
278
|
+
return merge_hashes(hash_1, hash_2)
|
|
279
|
+
|
|
280
|
+
return reduce(_arrow34, l)
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
else:
|
|
284
|
+
return hash_1_1(o)
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
def CopyUtils_tryDeepCopyObj_75B3D832(o: Any=None, include_instance_properties: bool | None=None) -> Any:
|
|
289
|
+
include_instance_properties_1: bool = default_arg(include_instance_properties, True)
|
|
290
|
+
def try_deep_copy_obj(o_1: Any=None, o: Any=o, include_instance_properties: Any=include_instance_properties) -> Any:
|
|
291
|
+
(pattern_matching_result, o_7) = (None, None)
|
|
292
|
+
if str(type(o_1)) == "<class \'bool\'>":
|
|
293
|
+
pattern_matching_result = 0
|
|
294
|
+
|
|
295
|
+
elif str(type(o_1)) == "<fable_modules.fable_library.types.uint8\'>>":
|
|
296
|
+
pattern_matching_result = 0
|
|
297
|
+
|
|
298
|
+
elif str(type(o_1)) == "<class \'fable_modules.fable_library.types.int8\'>":
|
|
299
|
+
pattern_matching_result = 0
|
|
300
|
+
|
|
301
|
+
elif str(type(o_1)) == "<class \'fable_modules.fable_library.types.int16\'>":
|
|
302
|
+
pattern_matching_result = 0
|
|
303
|
+
|
|
304
|
+
elif str(type(o_1)) == "<class \'fable_modules.fable_library.types.uint16\'>":
|
|
305
|
+
pattern_matching_result = 0
|
|
306
|
+
|
|
307
|
+
elif str(type(o_1)) == "<class \'int\'>":
|
|
308
|
+
pattern_matching_result = 0
|
|
309
|
+
|
|
310
|
+
elif str(type(o_1)) == "<class \'fable_modules.fable_library.types.uint32>":
|
|
311
|
+
pattern_matching_result = 0
|
|
312
|
+
|
|
313
|
+
elif str(type(o_1)) == "<class \'fable_modules.fable_library.types.int64\'>":
|
|
314
|
+
pattern_matching_result = 0
|
|
315
|
+
|
|
316
|
+
elif str(type(o_1)) == "<class \'fable_modules.fable_library.types.uint32\'>":
|
|
317
|
+
pattern_matching_result = 0
|
|
318
|
+
|
|
319
|
+
elif str(type(o_1)) == "<class \'float\'>":
|
|
320
|
+
pattern_matching_result = 0
|
|
321
|
+
|
|
322
|
+
elif str(type(o_1)) == "<class \'fable_modules.fable_library.types.float32\'>":
|
|
323
|
+
pattern_matching_result = 0
|
|
324
|
+
|
|
325
|
+
elif str(type(o_1)) == "<class \'str\'>":
|
|
326
|
+
pattern_matching_result = 0
|
|
327
|
+
|
|
328
|
+
elif str(type(o_1)) == "<class \'str\'>":
|
|
329
|
+
pattern_matching_result = 0
|
|
330
|
+
|
|
331
|
+
elif o_1 is None:
|
|
332
|
+
pattern_matching_result = 0
|
|
333
|
+
|
|
334
|
+
elif isinstance(o_1, dict):
|
|
335
|
+
pattern_matching_result = 1
|
|
336
|
+
|
|
337
|
+
elif is_array_like(o_1):
|
|
338
|
+
pattern_matching_result = 2
|
|
339
|
+
|
|
340
|
+
elif isinstance(o_1, FSharpList):
|
|
341
|
+
pattern_matching_result = 3
|
|
342
|
+
|
|
343
|
+
elif isinstance(o_1, DynamicObj):
|
|
344
|
+
if hasattr(o_1, 'System_ICloneable_Clone') and callable(o_1.System_ICloneable_Clone):
|
|
345
|
+
pattern_matching_result = 4
|
|
346
|
+
o_7 = o_1
|
|
347
|
+
|
|
348
|
+
else:
|
|
349
|
+
pattern_matching_result = 5
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
elif hasattr(o_1, 'System_ICloneable_Clone') and callable(o_1.System_ICloneable_Clone):
|
|
353
|
+
pattern_matching_result = 4
|
|
354
|
+
o_7 = o_1
|
|
355
|
+
|
|
356
|
+
else:
|
|
357
|
+
pattern_matching_result = 6
|
|
358
|
+
|
|
359
|
+
if pattern_matching_result == 0:
|
|
360
|
+
return o_1
|
|
361
|
+
|
|
362
|
+
elif pattern_matching_result == 1:
|
|
363
|
+
class ObjectExpr35:
|
|
364
|
+
@property
|
|
365
|
+
def Equals(self) -> Callable[[Any, Any], bool]:
|
|
366
|
+
return equals
|
|
367
|
+
|
|
368
|
+
@property
|
|
369
|
+
def GetHashCode(self) -> Callable[[Any], int]:
|
|
370
|
+
return structural_hash
|
|
371
|
+
|
|
372
|
+
new_dict: Any = Dictionary([], ObjectExpr35())
|
|
373
|
+
enumerator: Any = get_enumerator(o_1)
|
|
374
|
+
try:
|
|
375
|
+
while enumerator.System_Collections_IEnumerator_MoveNext():
|
|
376
|
+
kv: Any = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
377
|
+
add_to_dict(new_dict, try_deep_copy_obj(kv[0]), try_deep_copy_obj(kv[1]))
|
|
378
|
+
|
|
379
|
+
finally:
|
|
380
|
+
dispose(enumerator)
|
|
381
|
+
|
|
382
|
+
return new_dict
|
|
383
|
+
|
|
384
|
+
elif pattern_matching_result == 2:
|
|
385
|
+
def _arrow36(__unit: None=None, o_1: Any=o_1) -> IEnumerable_1[DynamicObj]:
|
|
386
|
+
return map_1(try_deep_copy_obj, o_1)
|
|
387
|
+
|
|
388
|
+
return list(to_list(delay(_arrow36)))
|
|
389
|
+
|
|
390
|
+
elif pattern_matching_result == 3:
|
|
391
|
+
def _arrow37(__unit: None=None, o_1: Any=o_1) -> IEnumerable_1[DynamicObj]:
|
|
392
|
+
return map_1(try_deep_copy_obj, o_1)
|
|
393
|
+
|
|
394
|
+
return to_list(delay(_arrow37))
|
|
395
|
+
|
|
396
|
+
elif pattern_matching_result == 4:
|
|
397
|
+
return o_7.System_ICloneable_Clone()
|
|
398
|
+
|
|
399
|
+
elif pattern_matching_result == 5:
|
|
400
|
+
new_dyn: DynamicObj = DynamicObj()
|
|
401
|
+
with get_enumerator(o_1.GetProperties(include_instance_properties_1)) as enumerator_1:
|
|
402
|
+
while enumerator_1.System_Collections_IEnumerator_MoveNext():
|
|
403
|
+
kv_1: Any = enumerator_1.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
404
|
+
new_dyn.SetProperty(kv_1[0], try_deep_copy_obj(kv_1[1]))
|
|
405
|
+
return new_dyn
|
|
406
|
+
|
|
407
|
+
elif pattern_matching_result == 6:
|
|
408
|
+
return o_1
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
return try_deep_copy_obj(o)
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
__all__ = ["DynamicObj_reflection", "HashUtils_reflection", "CopyUtils_reflection", "HashUtils_deepHash_4E60E31B", "CopyUtils_tryDeepCopyObj_75B3D832"]
|
|
415
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from abc import abstractmethod
|
|
3
|
+
from collections.abc import Callable
|
|
4
|
+
from typing import (Any, Protocol, TypeVar)
|
|
5
|
+
from ..fable_library.array_ import (append, map as map_1)
|
|
6
|
+
from ..fable_library.map_util import add_to_dict
|
|
7
|
+
from ..fable_library.mutable_map import Dictionary
|
|
8
|
+
from ..fable_library.option import value as value_1
|
|
9
|
+
from ..fable_library.reg_exp import (is_match, create)
|
|
10
|
+
from ..fable_library.seq import (iterate, to_array, choose, map)
|
|
11
|
+
from ..fable_library.types import Array
|
|
12
|
+
from ..fable_library.util import (equals, structural_hash, IEnumerable_1, get_enumerator, dispose)
|
|
13
|
+
from .property_helper import PropertyHelper
|
|
14
|
+
|
|
15
|
+
__A_ = TypeVar("__A_")
|
|
16
|
+
|
|
17
|
+
_U = TypeVar("_U")
|
|
18
|
+
|
|
19
|
+
_T = TypeVar("_T")
|
|
20
|
+
|
|
21
|
+
def Dictionary_ofSeq(s: IEnumerable_1[Any]) -> Any:
|
|
22
|
+
class ObjectExpr3:
|
|
23
|
+
@property
|
|
24
|
+
def Equals(self) -> Callable[[__A_, __A_], bool]:
|
|
25
|
+
return equals
|
|
26
|
+
|
|
27
|
+
@property
|
|
28
|
+
def GetHashCode(self) -> Callable[[__A_], int]:
|
|
29
|
+
return structural_hash
|
|
30
|
+
|
|
31
|
+
d: Any = Dictionary([], ObjectExpr3())
|
|
32
|
+
def action(kv: Any, s: Any=s) -> None:
|
|
33
|
+
add_to_dict(d, kv[0], kv[1])
|
|
34
|
+
|
|
35
|
+
iterate(action, s)
|
|
36
|
+
return d
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def Dictionary_choose(f: Callable[[_T], _U | None], d: Any) -> Any:
|
|
40
|
+
class ObjectExpr4:
|
|
41
|
+
@property
|
|
42
|
+
def Equals(self) -> Callable[[__A_, __A_], bool]:
|
|
43
|
+
return equals
|
|
44
|
+
|
|
45
|
+
@property
|
|
46
|
+
def GetHashCode(self) -> Callable[[__A_], int]:
|
|
47
|
+
return structural_hash
|
|
48
|
+
|
|
49
|
+
nd: Any = Dictionary([], ObjectExpr4())
|
|
50
|
+
enumerator: Any = get_enumerator(d)
|
|
51
|
+
try:
|
|
52
|
+
while enumerator.System_Collections_IEnumerator_MoveNext():
|
|
53
|
+
kv: Any = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
54
|
+
match_value: _U | None = f(kv[1])
|
|
55
|
+
if match_value is None:
|
|
56
|
+
pass
|
|
57
|
+
|
|
58
|
+
else:
|
|
59
|
+
add_to_dict(nd, kv[0], value_1(match_value))
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
finally:
|
|
63
|
+
dispose(enumerator)
|
|
64
|
+
|
|
65
|
+
return nd
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
class PropertyObject(Protocol):
|
|
69
|
+
@property
|
|
70
|
+
@abstractmethod
|
|
71
|
+
def fget(self) -> Any:
|
|
72
|
+
...
|
|
73
|
+
|
|
74
|
+
@property
|
|
75
|
+
@abstractmethod
|
|
76
|
+
def fset(self) -> Any:
|
|
77
|
+
...
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
def PropertyObjectModule_getGetter(o: PropertyObject) -> Callable[[Any], Any]:
|
|
81
|
+
match_value: Callable[[Any], Any] | None = o.fget
|
|
82
|
+
if match_value is None:
|
|
83
|
+
def _arrow5(o_1: Any=None, o: Any=o) -> Any:
|
|
84
|
+
raise Exception("Property does not contain getter")
|
|
85
|
+
|
|
86
|
+
return _arrow5
|
|
87
|
+
|
|
88
|
+
else:
|
|
89
|
+
return match_value
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
def PropertyObjectModule_getSetter(o: PropertyObject) -> Callable[[Any, Any], None]:
|
|
94
|
+
match_value: Callable[[Any, Any], None] | None = o.fset
|
|
95
|
+
if match_value is None:
|
|
96
|
+
def _arrow7(s: Any=None, o: Any=o) -> Callable[[Any], None]:
|
|
97
|
+
def _arrow6(o_1: Any=None) -> None:
|
|
98
|
+
raise Exception("Property does not contain setter")
|
|
99
|
+
|
|
100
|
+
return _arrow6
|
|
101
|
+
|
|
102
|
+
return _arrow7
|
|
103
|
+
|
|
104
|
+
else:
|
|
105
|
+
return match_value
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
def PropertyObjectModule_containsGetter(o: PropertyObject) -> bool:
|
|
110
|
+
match_value: Callable[[Any], Any] | None = o.fget
|
|
111
|
+
if match_value is None:
|
|
112
|
+
return False
|
|
113
|
+
|
|
114
|
+
else:
|
|
115
|
+
return True
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
def PropertyObjectModule_containsSetter(o: PropertyObject) -> bool:
|
|
120
|
+
match_value: Callable[[Any, Any], None] | None = o.fset
|
|
121
|
+
if match_value is None:
|
|
122
|
+
return False
|
|
123
|
+
|
|
124
|
+
else:
|
|
125
|
+
return True
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
def PropertyObjectModule_isWritable(o: PropertyObject) -> bool:
|
|
130
|
+
return PropertyObjectModule_containsSetter(o)
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
def PropertyObjectModule_tryProperty(o: Any=None) -> PropertyObject | None:
|
|
134
|
+
if isinstance(o, property):
|
|
135
|
+
return o
|
|
136
|
+
|
|
137
|
+
else:
|
|
138
|
+
return None
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
def create_getter(prop_name: str, o: Any=None) -> Any:
|
|
143
|
+
return getattr(o,prop_name)
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
def create_setter(prop_name: str, o: Any=None, value: Any=None) -> None:
|
|
147
|
+
setattr(o,prop_name,value)
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
def get_static_property_objects(o: Any=None) -> Any:
|
|
151
|
+
def f(o_2: Any=None, o: Any=o) -> PropertyObject | None:
|
|
152
|
+
return PropertyObjectModule_tryProperty(o_2)
|
|
153
|
+
|
|
154
|
+
def _arrow8(__unit: None=None, o: Any=o) -> Any:
|
|
155
|
+
o_1: Any = o.__class__
|
|
156
|
+
return vars(o_1).items()
|
|
157
|
+
|
|
158
|
+
return Dictionary_choose(f, _arrow8())
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
def remove_static_property_value(o: Any, prop_name: str) -> None:
|
|
162
|
+
setattr(o,prop_name,None)
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
def create_remover(prop_name: str, is_static: bool) -> Callable[[Any], None]:
|
|
166
|
+
if is_static:
|
|
167
|
+
def _arrow9(o: Any=None, prop_name: Any=prop_name, is_static: Any=is_static) -> None:
|
|
168
|
+
remove_static_property_value(o, prop_name)
|
|
169
|
+
|
|
170
|
+
return _arrow9
|
|
171
|
+
|
|
172
|
+
else:
|
|
173
|
+
def _arrow10(o_1: Any=None, prop_name: Any=prop_name, is_static: Any=is_static) -> None:
|
|
174
|
+
delattr(o_1,prop_name)
|
|
175
|
+
|
|
176
|
+
return _arrow10
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
def try_get_property_object(o: Any, prop_name: str) -> PropertyObject | None:
|
|
181
|
+
match_value: PropertyObject | None = PropertyObjectModule_tryProperty(o.__dict__.get(prop_name))
|
|
182
|
+
if match_value is None:
|
|
183
|
+
return None
|
|
184
|
+
|
|
185
|
+
else:
|
|
186
|
+
return match_value
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
def try_get_dynamic_property_helper(o: Any, prop_name: str) -> PropertyHelper | None:
|
|
191
|
+
match_value: Any | None = o.__dict__.get(prop_name)
|
|
192
|
+
if match_value is None:
|
|
193
|
+
return None
|
|
194
|
+
|
|
195
|
+
else:
|
|
196
|
+
def _arrow11(o_1: Any=None, o: Any=o, prop_name: Any=prop_name) -> Any:
|
|
197
|
+
return create_getter(prop_name, o_1)
|
|
198
|
+
|
|
199
|
+
def _arrow12(o_2: Any=None, value: Any=None, o: Any=o, prop_name: Any=prop_name) -> None:
|
|
200
|
+
create_setter(prop_name, o_2, value)
|
|
201
|
+
|
|
202
|
+
def _arrow13(o_3: Any=None, o: Any=o, prop_name: Any=prop_name) -> None:
|
|
203
|
+
delattr(o_3,prop_name)
|
|
204
|
+
|
|
205
|
+
return PropertyHelper(prop_name, False, True, True, False, _arrow11, _arrow12, _arrow13)
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
def try_get_static_property_helper(o: Any, prop_name: str) -> PropertyHelper | None:
|
|
210
|
+
match_value: PropertyObject | None = try_get_property_object(o.__class__, prop_name)
|
|
211
|
+
if match_value is None:
|
|
212
|
+
return None
|
|
213
|
+
|
|
214
|
+
else:
|
|
215
|
+
is_writable: bool = PropertyObjectModule_isWritable(match_value)
|
|
216
|
+
def _arrow14(o_1: Any=None, o: Any=o, prop_name: Any=prop_name) -> Any:
|
|
217
|
+
return create_getter(prop_name, o_1)
|
|
218
|
+
|
|
219
|
+
def _arrow15(o_2: Any=None, value: Any=None, o: Any=o, prop_name: Any=prop_name) -> None:
|
|
220
|
+
create_setter(prop_name, o_2, value)
|
|
221
|
+
|
|
222
|
+
def _arrow16(o_3: Any=None, o: Any=o, prop_name: Any=prop_name) -> None:
|
|
223
|
+
remove_static_property_value(o_3, prop_name)
|
|
224
|
+
|
|
225
|
+
return PropertyHelper(prop_name, True, False, is_writable, not is_writable, _arrow14, _arrow15, _arrow16)
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
transpiled_property_regex: str = "^([a-zA-Z]+_)+[0-9]+$"
|
|
230
|
+
|
|
231
|
+
def is_transpiled_property_helper(property_name: str) -> bool:
|
|
232
|
+
return is_match(create(transpiled_property_regex), property_name)
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
def get_dynamic_property_helpers(o: Any=None) -> Array[PropertyHelper]:
|
|
236
|
+
def chooser(kv: Any, o: Any=o) -> PropertyHelper | None:
|
|
237
|
+
n: str = kv[0]
|
|
238
|
+
if is_transpiled_property_helper(n):
|
|
239
|
+
return None
|
|
240
|
+
|
|
241
|
+
else:
|
|
242
|
+
def _arrow17(o_1: Any=None, kv: Any=kv) -> Any:
|
|
243
|
+
return create_getter(n, o_1)
|
|
244
|
+
|
|
245
|
+
def _arrow18(o_2: Any=None, value: Any=None, kv: Any=kv) -> None:
|
|
246
|
+
create_setter(n, o_2, value)
|
|
247
|
+
|
|
248
|
+
def _arrow19(o_3: Any=None, kv: Any=kv) -> None:
|
|
249
|
+
delattr(o_3,n)
|
|
250
|
+
|
|
251
|
+
return PropertyHelper(n, False, True, True, False, _arrow17, _arrow18, _arrow19)
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
return to_array(choose(chooser, vars(o).items()))
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
def get_static_property_helpers(o: Any=None) -> Array[PropertyHelper]:
|
|
258
|
+
def mapping(kv: Any, o: Any=o) -> PropertyHelper:
|
|
259
|
+
n: str = kv[0]
|
|
260
|
+
po: PropertyObject = kv[1]
|
|
261
|
+
def _arrow20(o_1: Any=None, kv: Any=kv) -> Any:
|
|
262
|
+
return create_getter(n, o_1)
|
|
263
|
+
|
|
264
|
+
def _arrow21(o_2: Any=None, value: Any=None, kv: Any=kv) -> None:
|
|
265
|
+
create_setter(n, o_2, value)
|
|
266
|
+
|
|
267
|
+
def _arrow22(o_3: Any=None, kv: Any=kv) -> None:
|
|
268
|
+
remove_static_property_value(o_3, n)
|
|
269
|
+
|
|
270
|
+
return PropertyHelper(n, True, False, PropertyObjectModule_isWritable(po), not PropertyObjectModule_isWritable(po), _arrow20, _arrow21, _arrow22)
|
|
271
|
+
|
|
272
|
+
return to_array(map(mapping, get_static_property_objects(o)))
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
def get_property_helpers(o: Any=None) -> Array[PropertyHelper]:
|
|
276
|
+
array_1: Array[PropertyHelper] = get_dynamic_property_helpers(o)
|
|
277
|
+
return append(get_static_property_helpers(o), array_1, None)
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
def get_property_names(o: Any=None) -> Array[str]:
|
|
281
|
+
def mapping(h: PropertyHelper, o: Any=o) -> str:
|
|
282
|
+
return h.Name
|
|
283
|
+
|
|
284
|
+
return map_1(mapping, get_property_helpers(o), None)
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
__all__ = ["Dictionary_ofSeq", "Dictionary_choose", "PropertyObjectModule_getGetter", "PropertyObjectModule_getSetter", "PropertyObjectModule_containsGetter", "PropertyObjectModule_containsSetter", "PropertyObjectModule_isWritable", "PropertyObjectModule_tryProperty", "create_getter", "create_setter", "get_static_property_objects", "remove_static_property_value", "create_remover", "try_get_property_object", "try_get_dynamic_property_helper", "try_get_static_property_helper", "transpiled_property_regex", "is_transpiled_property_helper", "get_dynamic_property_helpers", "get_static_property_helpers", "get_property_helpers", "get_property_names"]
|
|
288
|
+
|