diff --git a/cwl_utils/parser/__init__.py b/cwl_utils/parser/__init__.py index 13e62a07..3d0868e6 100644 --- a/cwl_utils/parser/__init__.py +++ b/cwl_utils/parser/__init__.py @@ -1,6 +1,7 @@ # SPDX-License-Identifier: Apache-2.0 import os +from abc import ABC from collections.abc import MutableMapping, MutableSequence from pathlib import Path from typing import Any, Optional, Union, cast @@ -12,6 +13,11 @@ from ..errors import GraphTargetMissingException from . import cwl_v1_0, cwl_v1_1, cwl_v1_2 + +class NoType(ABC): + pass + + LoadingOptions = Union[ cwl_v1_0.LoadingOptions, cwl_v1_1.LoadingOptions, cwl_v1_2.LoadingOptions ] @@ -81,6 +87,14 @@ cwl_v1_0.WorkflowStep, cwl_v1_1.WorkflowStep, cwl_v1_2.WorkflowStep ] """Type union for a CWL v1.x WorkflowStep object.""" +ScatterWorkflowStep = Union[ + cwl_v1_0.WorkflowStep, + cwl_v1_1.WorkflowStep, + cwl_v1_2.WorkflowStep, +] +"""Type union for a CWL v1.x ScatterWorkflowStep object.""" +LoopWorkflowStep = NoType +"""Type union for a CWL v1.x LoopWorkflowStep object.""" WorkflowStepInput = Union[ cwl_v1_0.WorkflowStepInput, cwl_v1_1.WorkflowStepInput, cwl_v1_2.WorkflowStepInput ]