cwl

package
v0.9.66 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2018 License: BSD-2-Clause Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CWL_Workflow          string = "Workflow"
	CWL_CommandLineTool   string = "CommandLineTool"
	CWL_WorkflowStepInput string = "WorkflowStepInput"
)

CWL Classes (note that type names also are class names)

Variables

View Source
var ValidClassMap = map[string]string{} // lower-case to correct case mapping
View Source
var ValidTypeMap = map[CWLType_Type_Basic]CWLType_Type_Basic{} // lower-case to correct case mapping
View Source
var Valid_Classes = []string{"Workflow", "CommandLineTool", "WorkflowStepInput"}

Functions

func Add_to_collection added in v0.9.62

func Add_to_collection(collection *CWL_collection, object_array CWL_object_array) (err error)

func CreateRequirementArray

func CreateRequirementArray(original interface{}) (new_array_ptr *[]Requirement, err error)

func CreateWorkflowStepInputArray

func CreateWorkflowStepInputArray(original interface{}) (array_ptr *[]WorkflowStepInput, err error)

func CreateWorkflowStepsArray

func CreateWorkflowStepsArray(original interface{}) (err error, array_ptr *[]WorkflowStep)

CreateWorkflowStepsArray

func GetClass added in v0.9.62

func GetClass(native interface{}) (class string, err error)

func GetId added in v0.9.62

func GetId(native interface{}) (id string, err error)

func GetMapElement

func GetMapElement(m map[interface{}]interface{}, key string) (value interface{}, err error)

func GetProcessName added in v0.9.62

func GetProcessName(p interface{}) (process_name string, err error)

func IsValidClass added in v0.9.62

func IsValidClass(native_str string) (result string, ok bool)

func MakeStringMap added in v0.9.62

func MakeStringMap(v interface{}) (result interface{}, err error)

func NewBaseCommandArray added in v0.9.48

func NewBaseCommandArray(original interface{}) (new_array []string, err error)

func NewCWLTypeArray added in v0.9.48

func NewCWLTypeArray(native interface{}, parent_id string) (cwl_array_ptr *[]CWLType, err error)

func NewCommandOutputParameterArray added in v0.9.45

func NewCommandOutputParameterArray(original interface{}) (copa *[]CommandOutputParameter, err error)

func NewExpressionArray added in v0.9.62

func NewExpressionArray(original interface{}) (expressions *[]Expression, err error)

func NewInputParameterType_dep added in v0.9.62

func NewInputParameterType_dep(original interface{}) (ipt_ptr interface{}, err error)

func NewProcess added in v0.9.45

func NewProcess(original interface{}) (process interface{}, err error)

returns CommandLineTool, ExpressionTool or Workflow

func NewWorkflowOutputParameterArray added in v0.9.45

func NewWorkflowOutputParameterArray(original interface{}) (new_array_ptr *[]WorkflowOutputParameter, err error)

WorkflowOutputParameter

func NewWorkflowOutputParameterType added in v0.9.45

func NewWorkflowOutputParameterType(original interface{}) (result interface{}, err error)

func NewWorkflowOutputParameterTypeArray added in v0.9.45

func NewWorkflowOutputParameterTypeArray(original interface{}) (result interface{}, err error)

func Parse_cwl_document

func Parse_cwl_document(yaml_str string) (object_array CWL_object_array, cwl_version CWLVersion, err error)

func TypeIsCorrect added in v0.9.62

func TypeIsCorrect(allowed_types []CWLType_Type, object CWLType) (ok bool, err error)

func TypeIsCorrectSingle added in v0.9.62

func TypeIsCorrectSingle(schema CWLType_Type, object CWLType) (ok bool, err error)

func Unmarshal

func Unmarshal(data_ptr *[]byte, v interface{}) (err error)

Types

type Any

type Any interface {
	CWL_object
}

func NewAny added in v0.9.45

func NewAny(native interface{}) (any Any, err error)

type Array added in v0.9.62

type Array []CWLType

func NewArray added in v0.9.62

func NewArray(id string, native interface{}) (array_ptr *Array, err error)

func (*Array) GetClass added in v0.9.62

func (c *Array) GetClass() string

func (*Array) GetId added in v0.9.62

func (c *Array) GetId() string

func (*Array) GetType added in v0.9.62

func (c *Array) GetType() CWLType_Type

func (*Array) Is_CWL_minimal added in v0.9.62

func (c *Array) Is_CWL_minimal()

func (*Array) SetId added in v0.9.62

func (c *Array) SetId(string)

func (*Array) String added in v0.9.62

func (c *Array) String() string

func NewArray(id string, native interface{}) (array *Array, err error) {

	//array = &Array{CWLType_Impl: CWLType_Impl{Id: id}}
	//array = &Array{}
	//array.Class = "array"
	//schema := NewArraySchema()
	//array.Type = CWL_array
	//array.Type =

	//if id != "" {
	//		array.Id = id
	//	}

	switch native.(type) {
	case map[string]interface{}:
		native_map := native.(map[string]interface{})

		obj_id, has_id := native_map["id"]
		if has_id {
			obj_id_str, ok := obj_id.(string)
			if !ok {
				err = fmt.Errorf("(NewArray) id is not of type string")
				return
			}

			array.Id = obj_id_str
		}

		items, has_items := native_map["items"]
		if has_items {
			var item_array *[]CWLType
			item_array, err = NewCWLTypeArray(items, array.Id)
			if err != nil {
				err = fmt.Errorf("(NewArray) NewCWLTypeArray failed: %s", err.Error())
				return
			}

			array.Items = *item_array

			//type_map := make(map[CWLType_Type]bool)

			// collect info about types used in the array, needed later for verification
			//for _, item := range array.Items {

			//	item_type := item.GetType()
			//	type_map[item_type] = true

			//}

			//for item_type, _ := range type_map {
			//	schema.Items = append(schema.Items, item_type)
			//}

			//a_type := array.Items[0]
			//array.Items_Type = a_type.GetType()
		}

	case []interface{}:
		native_array := native.([]interface{})
		for _, value := range native_array {

			value_cwl, xerr := NewCWLType("", value)
			if xerr != nil {
				err = xerr
				return
			}

			array.Items = append(array.Items, value_cwl)
		}
		//if len(array.Items) > 0 {
		//	array.Items_Type = array.Items[0].GetType()
		//}
		return
	default:
		err = fmt.Errorf("(NewArray) type %s unknown", reflect.TypeOf(native))
		return
	}

	return
}

type ArraySchema added in v0.9.62

type ArraySchema struct {
	Items []CWLType_Type `yaml:"items,omitempty" bson:"items,omitempty" json:"items,omitempty"` // string or []string ([] speficies which types are possible, e.g ["File" , "null"])
	Type  string         `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"`    // must be array
	Label string         `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
}

func NewArraySchema added in v0.9.62

func NewArraySchema() *ArraySchema

func (*ArraySchema) Is_Type added in v0.9.62

func (c *ArraySchema) Is_Type()

func (*ArraySchema) Type2String added in v0.9.62

func (c *ArraySchema) Type2String() string

type BaseRequirement added in v0.9.62

type BaseRequirement struct {
	Class string `yaml:"class,omitempty" json:"class,omitempty" bson:"class,omitempty" mapstructure:"class,omitempty"`
}

func (BaseRequirement) GetClass added in v0.9.62

func (c BaseRequirement) GetClass() string

type Boolean added in v0.9.45

type Boolean bool

func NewBoolean added in v0.9.62

func NewBoolean(id string, value bool) (b *Boolean)

func NewBooleanFromInterface added in v0.9.62

func NewBooleanFromInterface(id string, native interface{}) (b *Boolean, err error)

func NewBooleanFrombool added in v0.9.62

func NewBooleanFrombool(value bool) (b *Boolean)

func (*Boolean) GetClass added in v0.9.45

func (b *Boolean) GetClass() string

func (*Boolean) GetId added in v0.9.45

func (b *Boolean) GetId() string

func (*Boolean) GetType added in v0.9.62

func (b *Boolean) GetType() CWLType_Type

func (*Boolean) Is_CWL_minimal added in v0.9.62

func (b *Boolean) Is_CWL_minimal()

func (*Boolean) SetId added in v0.9.45

func (b *Boolean) SetId(i string)

func (*Boolean) String added in v0.9.45

func (b *Boolean) String() string

type CWLType

type CWLType interface {
	CWL_object // is an interface
	//Is_CommandInputParameterType()
	//Is_CommandOutputParameterType()
	GetType() CWLType_Type
	String() string
}

CWLType - CWL basic types: int, string, boolean, .. etc http://www.commonwl.org/v1.0/CommandLineTool.html#CWLType null, boolean, int, long, float, double, string, File, Directory

func NewCWLType added in v0.9.45

func NewCWLType(id string, native interface{}) (cwl_type CWLType, err error)

func NewCWLTypeByClass added in v0.9.62

func NewCWLTypeByClass(class string, id string, native interface{}) (cwl_type CWLType, err error)

type CWLType_Impl added in v0.9.45

type CWLType_Impl struct {
	CWL_object_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // Provides: Id, Class
	Type            CWLType_Type                                                          `yaml:"-" json:"-" bson:"-" mapstructure:"-"`
}

func (*CWLType_Impl) GetType added in v0.9.62

func (c *CWLType_Impl) GetType() CWLType_Type

func (*CWLType_Impl) Is_CWLType added in v0.9.62

func (c *CWLType_Impl) Is_CWLType()

func (*CWLType_Impl) Is_CWL_minimal added in v0.9.62

func (c *CWLType_Impl) Is_CWL_minimal()

type CWLType_Type added in v0.9.62

type CWLType_Type interface {
	Is_Type()
	Type2String() string
}

type CWLType_Type string

func NewCWLType_Type added in v0.9.62

func NewCWLType_Type(native interface{}, context string) (result CWLType_Type, err error)

func NewCWLType_TypeArray added in v0.9.62

func NewCWLType_TypeArray(native interface{}, context string) (result []CWLType_Type, err error)

func NewCWLType_TypeFromString added in v0.9.62

func NewCWLType_TypeFromString(native string) (result CWLType_Type, err error)

func NewCommandInputParameterType added in v0.9.45

func NewCommandInputParameterType(original interface{}) (result CWLType_Type, err error)

func NewCommandInputParameterTypeArray added in v0.9.62

func NewCommandInputParameterTypeArray(original interface{}) (result []CWLType_Type, err error)

type CWLType_Type_Basic added in v0.9.62

type CWLType_Type_Basic string
const (
	CWL_null      CWLType_Type_Basic = "null"      //no value
	CWL_boolean   CWLType_Type_Basic = "boolean"   //a binary value
	CWL_int       CWLType_Type_Basic = "int"       //32-bit signed integer
	CWL_long      CWLType_Type_Basic = "long"      //64-bit signed integer
	CWL_float     CWLType_Type_Basic = "float"     //single precision (32-bit) IEEE 754 floating-point number
	CWL_double    CWLType_Type_Basic = "double"    //double precision (64-bit) IEEE 754 floating-point number
	CWL_string    CWLType_Type_Basic = "string"    //Unicode character sequence
	CWL_File      CWLType_Type_Basic = "File"      //A File object
	CWL_Directory CWLType_Type_Basic = "Directory" //A Directory object

	CWL_stdout CWLType_Type_Basic = "stdout"
	CWL_stderr CWLType_Type_Basic = "stderr"

	CWL_array  CWLType_Type_Basic = "array"  // unspecific type, only useful as a struct with items
	CWL_record CWLType_Type_Basic = "record" // unspecific type
	CWL_enum   CWLType_Type_Basic = "enum"   // unspecific type
)

CWL Types http://www.commonwl.org/draft-3/CommandLineTool.html#CWLType

func IsValidType added in v0.9.62

func IsValidType(native_str string) (result CWLType_Type_Basic, ok bool)

func (CWLType_Type_Basic) Is_Type added in v0.9.62

func (s CWLType_Type_Basic) Is_Type()

func (CWLType_Type_Basic) Type2String added in v0.9.62

func (s CWLType_Type_Basic) Type2String() string

type CWLVersion

type CWLVersion string

type CWL_array_type added in v0.9.62

type CWL_array_type interface {
	Is_CWL_array_type()
	Get_Array() *[]CWLType
}

type CWL_collection

type CWL_collection struct {
	Workflows          map[string]*Workflow
	WorkflowStepInputs map[string]*WorkflowStepInput
	CommandLineTools   map[string]*CommandLineTool

	Files    map[string]*File
	Strings  map[string]*String
	Ints     map[string]*Int
	Booleans map[string]*Boolean
	All      map[string]*CWL_object // everything goes in here
	//Job_input          *Job_document
	Job_input_map *JobDocMap
}

func NewCWL_collection

func NewCWL_collection() (collection CWL_collection)

func (CWL_collection) Add

func (c CWL_collection) Add(obj CWL_object) (err error)

func (CWL_collection) Evaluate

func (c CWL_collection) Evaluate(raw string) (parsed string)

func (CWL_collection) Get

func (c CWL_collection) Get(id string) (obj *CWL_object, err error)

func (CWL_collection) GetCWLType added in v0.9.62

func (c CWL_collection) GetCWLType(id string) (obj CWLType, err error)

func (CWL_collection) GetCommandLineTool added in v0.9.62

func (c CWL_collection) GetCommandLineTool(id string) (obj *CommandLineTool, err error)

func (CWL_collection) GetFile

func (c CWL_collection) GetFile(id string) (obj *File, err error)

func (CWL_collection) GetInt

func (c CWL_collection) GetInt(id string) (obj *Int, err error)

func (CWL_collection) GetString

func (c CWL_collection) GetString(id string) (obj *String, err error)

func (CWL_collection) GetWorkflow added in v0.9.62

func (c CWL_collection) GetWorkflow(id string) (obj *Workflow, err error)

func (CWL_collection) GetWorkflowStepInput

func (c CWL_collection) GetWorkflowStepInput(id string) (obj *WorkflowStepInput, err error)

type CWL_document_generic

type CWL_document_generic struct {
	CwlVersion CWLVersion    `yaml:"cwlVersion"`
	Graph      []interface{} `yaml:"graph"`
}

this is used by YAML or JSON library for inital parsing

type CWL_location

type CWL_location interface {
	GetLocation() string
}

generic class to represent Files and Directories

type CWL_minimal added in v0.9.45

type CWL_minimal struct{}

func (*CWL_minimal) Is_CWL_minimal added in v0.9.62

func (c *CWL_minimal) Is_CWL_minimal()

type CWL_minimal_interface added in v0.9.45

type CWL_minimal_interface interface {
	Is_CWL_minimal()
}

type CWL_object

type CWL_object interface {
	CWL_minimal_interface
	GetClass() string
	GetId() string
	SetId(string)
}

func New_CWL_object added in v0.9.62

func New_CWL_object(original interface{}, cwl_version CWLVersion) (obj CWL_object, err error)

type CWL_object_Impl added in v0.9.62

type CWL_object_Impl struct {
	Id    string `yaml:"id,omitempty" json:"id,omitempty" bson:"id,omitempty"`
	Class string `yaml:"class,omitempty" json:"class,omitempty" bson:"class,omitempty"`
}

func (*CWL_object_Impl) GetClass added in v0.9.62

func (c *CWL_object_Impl) GetClass() string

func (*CWL_object_Impl) GetId added in v0.9.62

func (c *CWL_object_Impl) GetId() string

func (*CWL_object_Impl) SetId added in v0.9.62

func (c *CWL_object_Impl) SetId(id string)

type CWL_object_array added in v0.9.62

type CWL_object_array []CWL_object

func NewCWL_object_array added in v0.9.62

func NewCWL_object_array(original interface{}) (array CWL_object_array, err error)

type CWL_object_generic

type CWL_object_generic map[string]interface{}

type CommandInputParameter

type CommandInputParameter struct {
	Id             string             `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty"`
	SecondaryFiles []string           `yaml:"secondaryFiles,omitempty" bson:"secondaryFiles,omitempty" json:"secondaryFiles,omitempty"` // TODO string | Expression | array<string | Expression>
	Format         []string           `yaml:"format,omitempty" bson:"format,omitempty" json:"format,omitempty"`
	Streamable     bool               `yaml:"streamable,omitempty" bson:"streamable,omitempty" json:"streamable,omitempty"`
	Type           []CWLType_Type     `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"` // []CommandInputParameterType  CWLType | CommandInputRecordSchema | CommandInputEnumSchema | CommandInputArraySchema | string | array<CWLType | CommandInputRecordSchema | CommandInputEnumSchema | CommandInputArraySchema | string>
	Label          string             `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
	Description    string             `yaml:"description,omitempty" bson:"description,omitempty" json:"description,omitempty"`
	InputBinding   CommandLineBinding `yaml:"inputBinding,omitempty" bson:"inputBinding,omitempty" json:"inputBinding,omitempty"`
	Default        CWLType            `yaml:"default,omitempty" bson:"default,omitempty" json:"default,omitempty"`
}

func CreateCommandInputArray

func CreateCommandInputArray(original interface{}) (err error, new_array []*CommandInputParameter)

keyname will be converted into 'Id'-field array<CommandInputParameter> | map<CommandInputParameter.id, CommandInputParameter.type> | map<CommandInputParameter.id, CommandInputParameter>

func NewCommandInputParameter added in v0.9.45

func NewCommandInputParameter(v interface{}) (input_parameter *CommandInputParameter, err error)

type CommandLineBinding

type CommandLineBinding struct {
	LoadContents  bool        `yaml:"loadContents,omitempty" bson:"loadContents,omitempty" json:"loadContents,omitempty"`
	Position      int         `yaml:"position,omitempty" bson:"position,omitempty" json:"position,omitempty"`
	Prefix        string      `yaml:"prefix,omitempty" bson:"prefix,omitempty" json:"prefix,omitempty"`
	Separate      bool        `yaml:"separate,omitempty" bson:"separate,omitempty" json:"separate,omitempty"`
	ItemSeparator string      `yaml:"itemSeparator,omitempty" bson:"itemSeparator,omitempty" json:"itemSeparator,omitempty"`
	ValueFrom     *Expression `yaml:"valueFrom,omitempty" bson:"valueFrom,omitempty" json:"valueFrom,omitempty"`
	ShellQuote    bool        `yaml:"shellQuote,omitempty" bson:"shellQuote,omitempty" json:"shellQuote,omitempty"`
}

http://www.commonwl.org/v1.0/Workflow.html#CommandLineBinding

func NewCommandLineBinding added in v0.9.48

func NewCommandLineBinding(original interface{}) (clb *CommandLineBinding, err error)

func NewCommandLineBindingArray added in v0.9.48

func NewCommandLineBindingArray(original interface{}) (new_array []CommandLineBinding, err error)

type CommandLineTool

type CommandLineTool struct {
	//Id                 string                   `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty"`
	//Class              string                   `yaml:"class,omitempty" bson:"class,omitempty" json:"class,omitempty"`
	CWL_object_Impl    `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	BaseCommand        []string                 `yaml:"baseCommand,omitempty" bson:"baseCommand,omitempty" json:"baseCommand,omitempty" mapstructure:"baseCommand,omitempty"`
	Inputs             []CommandInputParameter  `yaml:"inputs,omitempty" bson:"inputs,omitempty" json:"inputs,omitempty" mapstructure:"inputs,omitempty"`
	Outputs            []CommandOutputParameter `yaml:"outputs,omitempty" bson:"outputs,omitempty" json:"outputs,omitempty" mapstructure:"outputs,omitempty"`
	Hints              []Requirement            `yaml:"hints,omitempty" bson:"hints,omitempty" json:"hints,omitempty mapstructure:"hints,omitempty""`
	Requirements       []Requirement            `` /* 127-byte string literal not displayed */
	Doc                string                   `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty" mapstructure:"doc,omitempty"`
	Label              string                   `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty" mapstructure:"label,omitempty"`
	Description        string                   `yaml:"description,omitempty" bson:"description,omitempty" json:"description,omitempty" mapstructure:"description,omitempty"`
	CwlVersion         CWLVersion               `yaml:"cwlVersion,omitempty" bson:"cwlVersion,omitempty" json:"cwlVersion,omitempty" mapstructure:"cwlVersion,omitempty"`
	Arguments          []CommandLineBinding     `yaml:"arguments,omitempty" bson:"arguments,omitempty" json:"arguments,omitempty" mapstructure:"arguments,omitempty"`
	Stdin              string                   `yaml:"stdin,omitempty" bson:"stdin,omitempty" json:"stdin,omitempty" mapstructure:"stdin,omitempty"`     // TODO support Expression
	Stdout             string                   `yaml:"stdout,omitempty" bson:"stdout,omitempty" json:"stdout,omitempty" mapstructure:"stdout,omitempty"` // TODO support Expression
	SuccessCodes       []int                    ``                                                                                                        /* 127-byte string literal not displayed */
	TemporaryFailCodes []int                    ``                                                                                                        /* 151-byte string literal not displayed */
	PermanentFailCodes []int                    ``                                                                                                        /* 151-byte string literal not displayed */
}

func NewCommandLineTool added in v0.9.45

func NewCommandLineTool(generic interface{}) (commandLineTool *CommandLineTool, err error)

func NewCommandLineTool(object CWL_object_generic) (commandLineTool *CommandLineTool, err error) {

func (*CommandLineTool) Is_CWL_minimal added in v0.9.62

func (c *CommandLineTool) Is_CWL_minimal()

func (*CommandLineTool) Is_process added in v0.9.62

func (c *CommandLineTool) Is_process()

type CommandOutputArraySchema added in v0.9.45

type CommandOutputArraySchema struct {
	ArraySchema   `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	OutputBinding *CommandOutputBinding `yaml:"outputBinding,omitempty" bson:"outputBinding,omitempty" json:"outputBinding,omitempty"`
}

func NewCommandOutputArraySchema added in v0.9.45

func NewCommandOutputArraySchema() (coas *CommandOutputArraySchema)

func NewCommandOutputArraySchemaFromInterface added in v0.9.62

func NewCommandOutputArraySchemaFromInterface(original interface{}) (coas *CommandOutputArraySchema, err error)

func (*CommandOutputArraySchema) Type2String added in v0.9.62

func (c *CommandOutputArraySchema) Type2String() string

type CommandOutputBinding

type CommandOutputBinding struct {
	Glob         []Expression `yaml:"glob,omitempty" bson:"glob,omitempty" json:"glob,omitempty"`
	LoadContents bool         `yaml:"loadContents,omitempty" bson:"loadContents,omitempty" json:"loadContents,omitempty"`
	OutputEval   Expression   `yaml:"outputEval,omitempty" bson:"outputEval,omitempty" json:"outputEval,omitempty"`
}

http://www.commonwl.org/v1.0/CommandLineTool.html#CommandOutputBinding

func NewCommandOutputBinding added in v0.9.45

func NewCommandOutputBinding(original interface{}) (commandOutputBinding *CommandOutputBinding, err error)

type CommandOutputEnumSchema added in v0.9.45

type CommandOutputEnumSchema struct {
	Symbols       []string              `yaml:"symbols,omitempty" bson:"symbols,omitempty" json:"symbols,omitempty"`
	Type          string                `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"` // must be enum
	Label         string                `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
	OutputBinding *CommandOutputBinding `yaml:"outputbinding,omitempty" bson:"outputbinding,omitempty" json:"outputbinding,omitempty"`
}

http://www.commonwl.org/v1.0/CommandLineTool.html#CommandOutputEnumSchema

func NewCommandOutputEnumSchema added in v0.9.62

func NewCommandOutputEnumSchema(v map[string]interface{}) (schema *CommandOutputEnumSchema, err error)

func (*CommandOutputEnumSchema) Is_Type added in v0.9.62

func (c *CommandOutputEnumSchema) Is_Type()

func (c *CommandOutputEnumSchema) Is_CommandOutputParameterType() {}

func (*CommandOutputEnumSchema) Type2String added in v0.9.62

func (c *CommandOutputEnumSchema) Type2String() string

type CommandOutputParameter

type CommandOutputParameter struct {
	Id             string               `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty"`
	SecondaryFiles []Expression         `yaml:"secondaryFiles,omitempty" bson:"secondaryFiles,omitempty" json:"secondaryFiles,omitempty"` // TODO string | Expression | array<string | Expression>
	Format         string               `yaml:"format,omitempty" bson:"format,omitempty" json:"format,omitempty"`
	Streamable     bool                 `yaml:"streamable,omitempty" bson:"streamable,omitempty" json:"streamable,omitempty"`
	Type           interface{}          `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"` // []CommandOutputParameterType TODO CWLType | CommandInputRecordSchema | CommandInputEnumSchema | CommandInputArraySchema | string | array<CWLType | CommandInputRecordSchema | CommandInputEnumSchema | CommandInputArraySchema | string>
	Label          string               `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
	Description    string               `yaml:"description,omitempty" bson:"description,omitempty" json:"description,omitempty"`
	OutputBinding  CommandOutputBinding `yaml:"outputBinding,omitempty" bson:"outputBinding,omitempty" json:"outputBinding,omitempty"`
}

func NewCommandOutputParameter added in v0.9.45

func NewCommandOutputParameter(original interface{}) (output_parameter *CommandOutputParameter, err error)

type CommandOutputParameterTypeImpl added in v0.9.62

type CommandOutputParameterTypeImpl struct {
	Type string
}

type CommandOutputRecordField added in v0.9.45

type CommandOutputRecordField struct{}

type CommandOutputRecordSchema added in v0.9.45

type CommandOutputRecordSchema struct {
	Type   string                     `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"` // Must be record
	Fields []CommandOutputRecordField `yaml:"fields,omitempty" bson:"fields,omitempty" json:"fields,omitempty"`
	Label  string                     `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
}

func NewCommandOutputRecordSchema added in v0.9.62

func NewCommandOutputRecordSchema(v interface{}) (schema *CommandOutputRecordSchema, err error)

func (*CommandOutputRecordSchema) Is_Type added in v0.9.62

func (c *CommandOutputRecordSchema) Is_Type()

func (c *CommandOutputRecordSchema) Is_CommandOutputParameterType() {}

func (*CommandOutputRecordSchema) Type2String added in v0.9.62

func (c *CommandOutputRecordSchema) Type2String() string

type Directory

type Directory struct {
	CWLType_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	Location     string        `yaml:"location,omitempty" json:"location,omitempty" bson:"location,omitempty" mapstructure:"location,omitempty"`
	Path         string        `yaml:"path,omitempty" json:"path,omitempty" bson:"path,omitempty" mapstructure:"path,omitempty"`
	Basename     string        `yaml:"basename,omitempty" json:"basename,omitempty" bson:"basename,omitempty" mapstructure:"basename,omitempty"`
	Listing      []interface{} `yaml:"listing,omitempty" json:"listing,omitempty" bson:"listing,omitempty" mapstructure:"listing,omitempty"`
}

func NewDirectory added in v0.9.62

func NewDirectory() (d *Directory)

func NewDirectoryFromInterface added in v0.9.62

func NewDirectoryFromInterface(obj interface{}) (d *Directory, err error)

func (Directory) GetClass

func (d Directory) GetClass() string

func (Directory) GetLocation

func (d Directory) GetLocation() string

func (Directory) String

func (d Directory) String() string

type DockerRequirement

type DockerRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"`
	DockerPull      string `yaml:"dockerPull,omitempty" bson:"dockerPull,omitempty" json:"dockerPull,omitempty"`
	DockerLoad      string `yaml:"dockerLoad,omitempty" bson:"dockerLoad,omitempty" json:"dockerLoad,omitempty"`
	DockerFile      string `yaml:"dockerFile,omitempty" bson:"dockerFile,omitempty" json:"dockerFile,omitempty"`
	DockerImport    string `yaml:"dockerImport,omitempty" bson:"dockerImport,omitempty" json:"dockerImport,omitempty"`
	DockerImageId   string `yaml:"dockerImageId,omitempty" bson:"dockerImageId,omitempty" json:"dockerImageId,omitempty"`
}

func NewDockerRequirement added in v0.9.62

func NewDockerRequirement(original interface{}) (r *DockerRequirement, err error)

func (DockerRequirement) GetId

func (c DockerRequirement) GetId() string

type Double added in v0.9.62

type Double float64

func NewDouble added in v0.9.62

func NewDouble(value float64) *Double

func NewDoubleFromInterface added in v0.9.62

func NewDoubleFromInterface(native interface{}) (i *Double, err error)

func NewDoubleFromfloat64 added in v0.9.62

func NewDoubleFromfloat64(value float64) (i *Double)

func (*Double) GetClass added in v0.9.62

func (i *Double) GetClass() string

func (*Double) GetId added in v0.9.62

func (i *Double) GetId() string

func (*Double) GetType added in v0.9.62

func (i *Double) GetType() CWLType_Type

func (*Double) Is_CWL_minimal added in v0.9.62

func (i *Double) Is_CWL_minimal()

func (*Double) SetId added in v0.9.62

func (i *Double) SetId(x string)

func (*Double) String added in v0.9.62

func (i *Double) String() string

type DummyRequirement added in v0.9.62

type DummyRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"`
}

type Empty

type Empty struct {
	CWLType_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	Class        string `yaml:"class,omitempty" json:"class,omitempty" bson:"class,omitempty"`
}

this is a generic CWL_object. Its only purpose is to retrieve the value of "class"

func NewEmpty added in v0.9.45

func NewEmpty(value interface{}) (obj_empty *Empty, err error)

func (Empty) GetClass

func (e Empty) GetClass() string

func (Empty) String

func (e Empty) String() string

type Enum added in v0.9.62

type Enum struct {
	CWLType_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	Symbols      []string `yaml:"symbols,omitempty" json:"symbols,omitempty" bson:"symbols,omitempty"`
}

func (*Enum) GetClass added in v0.9.62

func (e *Enum) GetClass() string

type EnvVarRequirement added in v0.9.62

type EnvVarRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline"`
	// contains filtered or unexported fields
}

func NewEnvVarRequirement added in v0.9.62

func NewEnvVarRequirement(original interface{}) (r *EnvVarRequirement, err error)

func (EnvVarRequirement) GetId added in v0.9.62

func (c EnvVarRequirement) GetId() string

type EnvironmentDef added in v0.9.62

type EnvironmentDef struct {
	// contains filtered or unexported fields
}

type Expression

type Expression string

func NewExpression added in v0.9.62

func NewExpression(original interface{}) (expression *Expression, err error)

func (Expression) String

func (e Expression) String() string

type File

type File struct {
	CWLType_Impl   `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	Type           CWLType_Type   `yaml:"-" json:"-" bson:"-" mapstructure:"-"`
	Location       string         `yaml:"location,omitempty" json:"location,omitempty bson:"location,omitempty" mapstructure:"location,omitempty"` // An IRI that identifies the file resource.
	Location_url   *url.URL       `yaml:"-" json:"-" bson:"-" mapstructure:"-"`                                                                    // only for internal purposes
	Path           string         `yaml:"path,omitempty" json:"path,omitempty bson:"path,omitempty" mapstructure:"path,omitempty"`                 // dirname + '/' + basename == path This field must be set by the implementation.
	Basename       string         `yaml:"basename,omitempty" json:"basename,omitempty bson:"basename,omitempty" mapstructure:"basename,omitempty"` // dirname + '/' + basename == path // if not defined, take from location
	Dirname        string         `yaml:"dirname,omitempty" json:"dirname,omitempty bson:"dirname,omitempty" mapstructure:"dirname,omitempty"`     // dirname + '/' + basename == path
	Nameroot       string         `yaml:"nameroot,omitempty" json:"nameroot,omitempty bson:"nameroot,omitempty" mapstructure:"nameroot,omitempty"`
	Nameext        string         `yaml:"nameext,omitempty" json:"nameext,omitempty bson:"nameext,omitempty" mapstructure:"nameext,omitempty"`
	Checksum       string         `yaml:"checksum,omitempty" json:"checksum,omitempty bson:"checksum,omitempty" mapstructure:"checksum,omitempty"`
	Size           int32          `yaml:"size,omitempty" json:"size,omitempty bson:"size,omitempty" mapstructure:"size,omitempty"`
	SecondaryFiles []CWL_location `` /* 134-byte string literal not displayed */
	Format         string         `yaml:"format,omitempty" json:"format,omitempty bson:"format,omitempty" mapstructure:"format,omitempty"`
	Contents       string         `yaml:"contents,omitempty" json:"contents,omitempty bson:"contents,omitempty" mapstructure:"contents,omitempty"`
	// Shock node
	Host   string `yaml:"-" json:"-" bson:"-" mapstructure:"-"`
	Node   string `yaml:"-" json:"-" bson:"-" mapstructure:"-"`
	Bearer string `yaml:"-" json:"-" bson:"-" mapstructure:"-"`
	Token  string `yaml:"-" json:"-" bson:"-" mapstructure:"-"`
}

http://www.commonwl.org/v1.0/Workflow.html#File

func MakeFile

func MakeFile(id string, obj interface{}) (file File, err error)

func NewFile added in v0.9.45

func NewFile(id string, obj interface{}) (file File, err error)

func (*File) GetLocation

func (f *File) GetLocation() string

func (*File) GetType added in v0.9.62

func (f *File) GetType() CWLType_Type

func (f *File) GetClass() string { return "File" }

func (*File) Is_CWLType added in v0.9.62

func (f *File) Is_CWLType()

func (*File) Is_CWL_minimal added in v0.9.62

func (f *File) Is_CWL_minimal()

func (*File) String

func (f *File) String() string

func (f *File) GetId() string { return f.Id } func (f *File) SetId(id string) { f.Id = id }

type Float added in v0.9.62

type Float float32

func NewFloat added in v0.9.62

func NewFloat(value float32) *Float

func NewFloatFromInterface added in v0.9.62

func NewFloatFromInterface(native interface{}) (i *Float, err error)

func NewFloatFromfloat32 added in v0.9.62

func NewFloatFromfloat32(value float32) (i *Float)

func (*Float) GetClass added in v0.9.62

func (i *Float) GetClass() string

func (*Float) GetId added in v0.9.62

func (i *Float) GetId() string

func (*Float) GetType added in v0.9.62

func (i *Float) GetType() CWLType_Type

func (*Float) Is_CWL_minimal added in v0.9.62

func (i *Float) Is_CWL_minimal()

func (*Float) SetId added in v0.9.62

func (i *Float) SetId(x string)

func (*Float) String added in v0.9.62

func (i *Float) String() string

type InitialWorkDirRequirement added in v0.9.62

type InitialWorkDirRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"`
	Listing         CWLType `yaml:"listing,omitempty" bson:"listing,omitempty" json:"listing,omitempty" mapstructure:"listing,omitempty"` // TODO: array<File | Directory | Dirent | string | Expression> | string | Expression
}

http://www.commonwl.org/v1.0/CommandLineTool.html#InitialWorkDirRequirement

func NewInitialWorkDirRequirement added in v0.9.62

func NewInitialWorkDirRequirement(original interface{}) (r *InitialWorkDirRequirement, err error)

func (InitialWorkDirRequirement) GetId added in v0.9.62

type InlineJavascriptRequirement added in v0.9.62

type InlineJavascriptRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline"`
	ExpressionLib   []string `yaml:"expressionLib,omitempty" bson:"expressionLib,omitempty" json:"expressionLib,omitempty"`
}

func NewInlineJavascriptRequirement added in v0.9.62

func NewInlineJavascriptRequirement(original interface{}) (r *InlineJavascriptRequirement, err error)

func (InlineJavascriptRequirement) GetId added in v0.9.62

type InputArraySchema added in v0.9.62

type InputArraySchema struct {
	ArraySchema  `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	InputBinding *CommandLineBinding `yaml:"inputBinding,omitempty" bson:"inputBinding,omitempty" json:"inputBinding,omitempty"`
}

func NewInputArraySchema added in v0.9.62

func NewInputArraySchema() (coas *InputArraySchema)

func NewInputArraySchemaFromInterface added in v0.9.62

func NewInputArraySchemaFromInterface(original interface{}) (coas *InputArraySchema, err error)

func (*InputArraySchema) Type2String added in v0.9.62

func (c *InputArraySchema) Type2String() string

type InputParameter

type InputParameter struct {
	Id             string             `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty"`
	Label          string             `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
	SecondaryFiles []string           `yaml:"secondaryFiles,omitempty" bson:"secondaryFiles,omitempty" json:"secondaryFiles,omitempty"` // TODO string | Expression | array<string | Expression>
	Format         string             `yaml:"format,omitempty" bson:"format,omitempty" json:"format,omitempty"`
	Streamable     bool               `yaml:"streamable,omitempty" bson:"streamable,omitempty" json:"streamable,omitempty"`
	Doc            string             `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty"`
	InputBinding   CommandLineBinding `yaml:"inputBinding,omitempty" bson:"inputBinding,omitempty" json:"inputBinding,omitempty"` //TODO
	Default        Any                `yaml:"default,omitempty" bson:"default,omitempty" json:"default,omitempty"`
	Type           []CWLType_Type     `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"` // TODO CWLType | InputRecordSchema | InputEnumSchema | InputArraySchema | string | array<CWLType | InputRecordSchema | InputEnumSchema | InputArraySchema | string>
}

func NewInputParameter added in v0.9.45

func NewInputParameter(original interface{}) (input_parameter *InputParameter, err error)

func NewInputParameterArray added in v0.9.45

func NewInputParameterArray(original interface{}) (err error, new_array []InputParameter)

InputParameter

func (InputParameter) GetClass

func (i InputParameter) GetClass() string

func (InputParameter) GetId

func (i InputParameter) GetId() string

func (InputParameter) Is_CWL_minimal added in v0.9.62

func (i InputParameter) Is_CWL_minimal()

func (InputParameter) SetId

func (i InputParameter) SetId(id string)

type InputParameterType added in v0.9.45

type InputParameterType string

type Int

type Int int

func NewInt added in v0.9.62

func NewInt(id string, value int) *Int

func NewIntFromInterface added in v0.9.62

func NewIntFromInterface(id string, native interface{}) (i *Int, err error)

func NewIntFromint added in v0.9.62

func NewIntFromint(value int) (i *Int)

func (*Int) GetClass

func (i *Int) GetClass() string

func (*Int) GetId

func (i *Int) GetId() string

func (*Int) GetType added in v0.9.62

func (i *Int) GetType() CWLType_Type

func (*Int) Is_CWL_minimal added in v0.9.62

func (i *Int) Is_CWL_minimal()

func (*Int) SetId

func (i *Int) SetId(x string)

func (*Int) String

func (i *Int) String() string

type JobDocMap added in v0.9.62

type JobDocMap map[string]CWLType

func (JobDocMap) GetArray added in v0.9.62

func (jd_map JobDocMap) GetArray() (result Job_document, err error)

type Job_document

type Job_document []NamedCWLType // JobDocArray

type Job_document map[string]interface{}

func NewJob_document added in v0.9.45

func NewJob_document(original interface{}) (job *Job_document, err error)

func NewJob_documentFromNamedTypes added in v0.9.62

func NewJob_documentFromNamedTypes(original interface{}) (job *Job_document, err error)

func ParseJob

func ParseJob(job_byte_ptr *[]byte) (job_input *Job_document, err error)

func ParseJobFile added in v0.9.62

func ParseJobFile(job_file string) (job_input *Job_document, err error)

func (*Job_document) GetMap added in v0.9.62

func (job_input *Job_document) GetMap() (job_input_map JobDocMap)

type LinkMergeMethod

type LinkMergeMethod string // merge_nested or merge_flattened

type MultipleInputFeatureRequirement added in v0.9.62

type MultipleInputFeatureRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline"`
}

Indicates that the workflow platform must support multiple inbound data links listed in the source field of WorkflowStepInput.

func NewMultipleInputFeatureRequirement added in v0.9.62

func NewMultipleInputFeatureRequirement(original interface{}) (r *MultipleInputFeatureRequirement, err error)

func (MultipleInputFeatureRequirement) GetId added in v0.9.62

type NamedCWLType added in v0.9.62

type NamedCWLType struct {
	Id    string  `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty" mapstructure:"id,omitempty"`
	Value CWLType `yaml:"value,omitempty" bson:"value,omitempty" json:"value,omitempty" mapstructure:"value,omitempty"`
}

func NewNamedCWLType added in v0.9.62

func NewNamedCWLType(id string, value CWLType) NamedCWLType

func NewNamedCWLTypeFromInterface added in v0.9.62

func NewNamedCWLTypeFromInterface(native interface{}) (cwl_obj_named NamedCWLType, err error)

type Null added in v0.9.62

type Null struct {
	CWLType_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
}

func NewNull added in v0.9.62

func NewNull(id string) *Null

func (*Null) GetClass added in v0.9.62

func (n *Null) GetClass() string

func (*Null) String added in v0.9.62

func (n *Null) String() string

type Number added in v0.9.62

type Number string

func NewNumber added in v0.9.62

func NewNumber(id string, value string) (s *Number)

func NewNumberFromInterface added in v0.9.62

func NewNumberFromInterface(id string, native interface{}) (s *Number, err error)

func NewNumberFromstring added in v0.9.62

func NewNumberFromstring(value string) (s *Number)

func (*Number) GetClass added in v0.9.62

func (s *Number) GetClass() string

func (*Number) GetId added in v0.9.62

func (s *Number) GetId() string

func (*Number) GetType added in v0.9.62

func (s *Number) GetType() CWLType_Type

func (*Number) Is_CWL_minimal added in v0.9.62

func (s *Number) Is_CWL_minimal()

func (*Number) SetId added in v0.9.62

func (s *Number) SetId(i string)

func (*Number) String added in v0.9.62

func (s *Number) String() string

type OutputArraySchema added in v0.9.45

type OutputArraySchema struct {
	ArraySchema   `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	OutputBinding *CommandOutputBinding `yaml:"outputBinding,omitempty" bson:"outputBinding,omitempty" json:"outputBinding,omitempty"`
}

func NewOutputArraySchema added in v0.9.62

func NewOutputArraySchema() (coas *OutputArraySchema)

func NewOutputArraySchemaFromInterface added in v0.9.62

func NewOutputArraySchemaFromInterface(original interface{}) (coas *OutputArraySchema, err error)

func (*OutputArraySchema) Type2String added in v0.9.62

func (c *OutputArraySchema) Type2String() string

type OutputEnumSchema added in v0.9.45

type OutputEnumSchema struct{}

type OutputRecordSchema added in v0.9.45

type OutputRecordSchema struct{}

type Process added in v0.9.45

type Process interface {
	CWL_object
	Is_process()
}

type ProcessPointer added in v0.9.45

type ProcessPointer struct {
	Id    string
	Value string
}

func NewProcessPointer added in v0.9.62

func NewProcessPointer(original interface{}) (pp *ProcessPointer, err error)

func (*ProcessPointer) GetClass added in v0.9.45

func (p *ProcessPointer) GetClass() string

func (*ProcessPointer) GetId added in v0.9.45

func (p *ProcessPointer) GetId() string

func (*ProcessPointer) Is_CWL_minimal added in v0.9.62

func (p *ProcessPointer) Is_CWL_minimal()

func (*ProcessPointer) Is_process added in v0.9.62

func (p *ProcessPointer) Is_process()

func (*ProcessPointer) SetId added in v0.9.45

func (p *ProcessPointer) SetId(string)

type Record added in v0.9.62

type Record struct {
	CWLType_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	Fields       []CWLType `yaml:"fields,omitempty" json:"fields,omitempty" bson:"fields,omitempty"`
}

func NewRecord added in v0.9.62

func NewRecord(id string, native interface{}) (record *Record, err error)

func (*Record) GetClass added in v0.9.62

func (r *Record) GetClass() string

func (*Record) Is_CWL_minimal added in v0.9.62

func (r *Record) Is_CWL_minimal()

func (*Record) String added in v0.9.62

func (c *Record) String() string

type Requirement

type Requirement interface {
	GetClass() string
}

func NewRequirement

func NewRequirement(class string, obj interface{}) (r Requirement, err error)

type ScatterFeatureRequirement added in v0.9.62

type ScatterFeatureRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline"`
}

Indicates that the workflow platform must support the scatter and scatterMethod fields of WorkflowStep.

func NewScatterFeatureRequirement added in v0.9.62

func NewScatterFeatureRequirement(original interface{}) (r *ScatterFeatureRequirement, err error)

func (ScatterFeatureRequirement) GetId added in v0.9.62

type ShockRequirement

type ShockRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline"`
	Host            string `yaml:"host,omitempty" bson:"host,omitempty" json:"host,omitempty"`
}

func NewShockRequirement added in v0.9.62

func NewShockRequirement(original interface{}) (r *ShockRequirement, err error)

func (ShockRequirement) GetId

func (s ShockRequirement) GetId() string

type StepInputExpressionRequirement

type StepInputExpressionRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline"`
}

http://www.commonwl.org/v1.0/Workflow.html#StepInputExpressionRequirement

func NewStepInputExpressionRequirement added in v0.9.62

func NewStepInputExpressionRequirement(original interface{}) (r *StepInputExpressionRequirement, err error)

func (StepInputExpressionRequirement) GetId

type String

type String string

func NewString added in v0.9.62

func NewString(id string, value string) (s *String)

func NewStringFromInterface added in v0.9.62

func NewStringFromInterface(id string, native interface{}) (s *String, err error)

func NewStringFromstring added in v0.9.62

func NewStringFromstring(value string) (s *String)

func (*String) GetClass

func (s *String) GetClass() string

func (*String) GetId

func (s *String) GetId() string

func (*String) GetType added in v0.9.62

func (s *String) GetType() CWLType_Type

func (*String) Is_CWL_minimal added in v0.9.62

func (s *String) Is_CWL_minimal()

func (*String) SetId

func (s *String) SetId(i string)

func (*String) String

func (s *String) String() string

type Workflow

type Workflow struct {
	CWL_object_Impl `bson:",inline" json:",inline" mapstructure:",squash"` // provides Id and Class fields
	Inputs          []InputParameter                                       `yaml:"inputs,omitempty" bson:"inputs,omitempty" json:"inputs,omitempty"`
	Outputs         []WorkflowOutputParameter                              `yaml:"outputs,omitempty" bson:"outputs,omitempty" json:"outputs,omitempty"`
	Steps           []WorkflowStep                                         `yaml:"steps,omitempty" bson:"steps,omitempty" json:"steps,omitempty"`
	Requirements    []interface{}                                          `yaml:"requirements,omitempty" bson:"requirements,omitempty" json:"requirements,omitempty"` //[]Requirement
	Hints           []interface{}                                          `yaml:"hints,omitempty" bson:"hints,omitempty" json:"hints,omitempty"`                      // []Requirement TODO Hints may contain non-requirement objects. Give warning in those cases.
	Label           string                                                 `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
	Doc             string                                                 `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty"`
	CwlVersion      CWLVersion                                             `yaml:"cwlVersion,omitempty" bson:"cwlVersion,omitempty" json:"cwlVersion,omitempty"`
	Metadata        map[string]interface{}                                 `yaml:"metadata,omitempty" bson:"metadata,omitempty" json:"metadata,omitempty"`
}

func NewWorkflow added in v0.9.45

func NewWorkflow(original interface{}) (workflow_ptr *Workflow, err error)

func (*Workflow) GetClass

func (w *Workflow) GetClass() string

func (*Workflow) GetId

func (w *Workflow) GetId() string

func (*Workflow) Is_Any added in v0.9.62

func (w *Workflow) Is_Any()

func (*Workflow) Is_CWL_minimal added in v0.9.62

func (w *Workflow) Is_CWL_minimal()

func (*Workflow) Is_process added in v0.9.62

func (w *Workflow) Is_process()

func (*Workflow) SetId

func (w *Workflow) SetId(id string)

type WorkflowOutputParameter

type WorkflowOutputParameter struct {
	Id             string                `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty"`
	Label          string                `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty"`
	SecondaryFiles []Expression          `yaml:"secondaryFiles,omitempty" bson:"secondaryFiles,omitempty" json:"secondaryFiles,omitempty"` // TODO string | Expression | array<string | Expression>
	Format         []Expression          `yaml:"format,omitempty" bson:"format,omitempty" json:"format,omitempty"`
	Streamable     bool                  `yaml:"streamable,omitempty" bson:"streamable,omitempty" json:"streamable,omitempty"`
	Doc            string                `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty"`
	OutputBinding  *CommandOutputBinding `yaml:"outputBinding,omitempty" bson:"outputBinding,omitempty" json:"outputBinding,omitempty"` //TODO
	OutputSource   interface{}           `yaml:"outputSource,omitempty" bson:"outputSource,omitempty" json:"outputSource,omitempty"`    //string or []string
	LinkMerge      LinkMergeMethod       `yaml:"linkMerge,omitempty" bson:"linkMerge,omitempty" json:"linkMerge,omitempty"`
	Type           []interface{}         `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"` //WorkflowOutputParameterType TODO CWLType | OutputRecordSchema | OutputEnumSchema | OutputArraySchema | string | array<CWLType | OutputRecordSchema | OutputEnumSchema | OutputArraySchema | string>
}

func NewWorkflowOutputParameter added in v0.9.45

func NewWorkflowOutputParameter(original interface{}) (wop *WorkflowOutputParameter, err error)

type WorkflowStep

type WorkflowStep struct {
	Id           string               `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty" mapstructure:"id,omitempty"`
	In           []WorkflowStepInput  `yaml:"in,omitempty" bson:"in,omitempty" json:"in,omitempty" mapstructure:"in,omitempty"` // array<WorkflowStepInput> | map<WorkflowStepInput.id, WorkflowStepInput.source> | map<WorkflowStepInput.id, WorkflowStepInput>
	Out          []WorkflowStepOutput `yaml:"out,omitempty" bson:"out,omitempty" json:"out,omitempty" mapstructure:"out,omitempty"`
	Run          interface{}          `yaml:"run,omitempty" bson:"run,omitempty" json:"run,omitempty" mapstructure:"run,omitempty"` // (*Process) Specification unclear: string | CommandLineTool | ExpressionTool | Workflow
	Requirements []interface{}        ``                                                                                            //[]Requirement
	/* 127-byte string literal not displayed */
	Hints         []interface{} `yaml:"hints,omitempty" bson:"hints,omitempty" json:"hints,omitempty" mapstructure:"hints,omitempty"` //[]Requirement
	Label         string        `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty" mapstructure:"label,omitempty"`
	Doc           string        `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty" mapstructure:"doc,omitempty"`
	Scatter       []string      `yaml:"scatter,omitempty" bson:"scatter,omitempty" json:"scatter,omitempty" mapstructure:"scatter,omitempty"` // ScatterFeatureRequirement
	ScatterMethod string        ``                                                                                                            // ScatterFeatureRequirement
	/* 131-byte string literal not displayed */
}

func NewWorkflowStep added in v0.9.45

func NewWorkflowStep(original interface{}) (w *WorkflowStep, err error)

func (WorkflowStep) GetOutput

func (w WorkflowStep) GetOutput(id string) (output *WorkflowStepOutput, err error)

type WorkflowStepInput

type WorkflowStepInput struct {
	Id        string           `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty"`
	Source    interface{}      `yaml:"source,omitempty" bson:"source,omitempty" json:"source,omitempty"` // MultipleInputFeatureRequirement
	LinkMerge *LinkMergeMethod `yaml:"linkMerge,omitempty" bson:"linkMerge,omitempty" json:"linkMerge,omitempty"`
	Default   interface{}      `yaml:"default,omitempty" bson:"default,omitempty" json:"default,omitempty"`       // type Any does not make sense
	ValueFrom Expression       `yaml:"valueFrom,omitempty" bson:"valueFrom,omitempty" json:"valueFrom,omitempty"` // StepInputExpressionRequirement
	Ready     bool             `yaml:"-" bson:"-" json:"-"`
}

http://www.commonwl.org/v1.0/Workflow.html#WorkflowStepInput

func NewWorkflowStepInput added in v0.9.45

func NewWorkflowStepInput(original interface{}) (input_parameter_ptr *WorkflowStepInput, err error)

func (WorkflowStepInput) GetClass

func (w WorkflowStepInput) GetClass() string

func (WorkflowStepInput) GetId

func (w WorkflowStepInput) GetId() string

func (WorkflowStepInput) Is_CWL_minimal added in v0.9.62

func (w WorkflowStepInput) Is_CWL_minimal()

func (WorkflowStepInput) SetId

func (w WorkflowStepInput) SetId(id string)

type WorkflowStepOutput

type WorkflowStepOutput struct {
	Id string `yaml:"id" bson:"id" json:"id" mapstructure:"id"`
}

func NewWorkflowStepOutput added in v0.9.62

func NewWorkflowStepOutput(original interface{}) (wso_ptr *WorkflowStepOutput, err error)

func NewWorkflowStepOutputArray added in v0.9.62

func NewWorkflowStepOutputArray(original interface{}) (new_array []WorkflowStepOutput, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL