wfexs_backend.utils.groovy_parsing
#
Module Contents#
Classes#
Functions#
This method was borrowed from pydantic |
|
This method takes as input a parsed groovy tree, and tries finding Nextflow and nextflow.config features |
|
Data#
API#
- wfexs_backend.utils.groovy_parsing.ROOT_RULE = ['compilation_unit', 'script_statements']#
- wfexs_backend.utils.groovy_parsing.INCLUDE_PROCESS_RULE = ['statement', 'statement_expression', 'command_expression']#
- wfexs_backend.utils.groovy_parsing.VAR_RULE = None#
- wfexs_backend.utils.groovy_parsing.IDENTIFIER_RULE = ['primary', 'identifier']#
- wfexs_backend.utils.groovy_parsing.NAME_PART_RULE = ['name_part', 'identifier']#
- wfexs_backend.utils.groovy_parsing.BLOCK_STATEMENTS_RULE = ['block_statements_opt', 'block_statements']#
- wfexs_backend.utils.groovy_parsing.PATHEXP_RULE = ['expression', 'postfix_expression', 'path_expression']#
- wfexs_backend.utils.groovy_parsing.PRE_IDENTIFIER_NAME = None#
- wfexs_backend.utils.groovy_parsing.PRE_CLOSURE_NAME = None#
- wfexs_backend.utils.groovy_parsing.PROCESS_CHILD = None#
- wfexs_backend.utils.groovy_parsing.INCLUDE_CHILD = None#
- wfexs_backend.utils.groovy_parsing.WORKFLOW_CHILD = None#
- wfexs_backend.utils.groovy_parsing.CONTAINER_CHILD = None#
- wfexs_backend.utils.groovy_parsing.CONDA_CHILD = None#
- wfexs_backend.utils.groovy_parsing.TEMPLATE_CHILD = None#
- wfexs_backend.utils.groovy_parsing.MANIFEST_CHILD = None#
- wfexs_backend.utils.groovy_parsing.INCLUDECONFIG_CHILD = None#
- wfexs_backend.utils.groovy_parsing.PLUGINS_CHILD = None#
- wfexs_backend.utils.groovy_parsing.ID_CHILD = None#
- wfexs_backend.utils.groovy_parsing.COMMON_RULE = ['argument_list', 'first_argument_list_element', 'expression_list_element', 'expression', 'postfix_e...#
- wfexs_backend.utils.groovy_parsing.P_RULE = None#
- wfexs_backend.utils.groovy_parsing.CLOSURE_RULE = None#
- wfexs_backend.utils.groovy_parsing.W_RULE = None#
- wfexs_backend.utils.groovy_parsing.NAMELESS_W_RULE = None#
- wfexs_backend.utils.groovy_parsing.extract_strings(node: EmptyNode | LeafNode | RuleNode) Iterator[str] #
- wfexs_backend.utils.groovy_parsing.extract_values_as_pairs(node: EmptyNode | LeafNode | RuleNode) Iterator[LeafPair] #
- class wfexs_backend.utils.groovy_parsing.NfProcess#
Bases:
typing.NamedTuple
- wfexs_backend.utils.groovy_parsing.extract_nextflow_containers(node: EmptyNode | LeafNode | RuleNode) Iterator[str] #
- wfexs_backend.utils.groovy_parsing.extract_nextflow_condas(node: EmptyNode | LeafNode | RuleNode) Iterator[str] #
- wfexs_backend.utils.groovy_parsing.extract_nextflow_templates(node: EmptyNode | LeafNode | RuleNode) Iterator[str] #
- wfexs_backend.utils.groovy_parsing.extract_process_features(t_tree: groovy_parser.parser.RuleNode) Tuple[Sequence[str], Sequence[str], Sequence[str]] #
- wfexs_backend.utils.groovy_parsing.ERROR_PROCESS_NAME = '<error>'#
- wfexs_backend.utils.groovy_parsing.extract_nextflow_process(node: groovy_parser.parser.RuleNode) wfexs_backend.utils.groovy_parsing.NfProcess #
- class wfexs_backend.utils.groovy_parsing.NfInclude#
Bases:
typing.NamedTuple
- wfexs_backend.utils.groovy_parsing.extract_nextflow_includes(node: groovy_parser.parser.RuleNode) Sequence[NfInclude] #
- class wfexs_backend.utils.groovy_parsing.NfIncludeConfig#
Bases:
typing.NamedTuple
- wfexs_backend.utils.groovy_parsing.extract_nextflow_config_includeconfigs(node: groovy_parser.parser.RuleNode) Sequence[NfIncludeConfig] #
- class wfexs_backend.utils.groovy_parsing.NfWorkflow#
Bases:
typing.NamedTuple
- wfexs_backend.utils.groovy_parsing.extract_nextflow_workflow(node: groovy_parser.parser.RuleNode) wfexs_backend.utils.groovy_parsing.NfWorkflow #
- class wfexs_backend.utils.groovy_parsing.NfPlugin#
Bases:
typing.NamedTuple
- wfexs_backend.utils.groovy_parsing.extract_nextflow_config_plugins(node: groovy_parser.parser.RuleNode) Sequence[NfPlugin] #
- wfexs_backend.utils.groovy_parsing.deep_update(mapping: Mapping[KeyType, DeepValType], *updating_mappings: Mapping[KeyType, DeepValType]) Mapping[KeyType, DeepValType] #
This method was borrowed from pydantic
- wfexs_backend.utils.groovy_parsing.extract_nested_assignments(children: Sequence[EmptyNode | LeafNode | RuleNode], only_names: Sequence[str] = []) wfexs_backend.utils.groovy_parsing.ContextAssignments #
- wfexs_backend.utils.groovy_parsing.extract_nextflow_features(t_tree: groovy_parser.parser.RuleNode) Tuple[Sequence[NfProcess], Sequence[NfInclude], Sequence[NfWorkflow], Sequence[NfIncludeConfig], Sequence[NfPlugin]] #
This method takes as input a parsed groovy tree, and tries finding Nextflow and nextflow.config features
- wfexs_backend.utils.groovy_parsing.cached_parse_and_digest_groovy_content(content: str, cache_dir: str | None = None) RuleNode | LeafNode | EmptyNode #
- wfexs_backend.utils.groovy_parsing.analyze_nf_content(content: str, only_names: Sequence[str] = [], cache_dir: str | None = None) Tuple[RuleNode | LeafNode | EmptyNode, Sequence[NfProcess], Sequence[NfInclude], Sequence[NfWorkflow], Sequence[NfIncludeConfig], Sequence[NfPlugin], ContextAssignments] #