cwl

package
v2.0.0-beta-77-g24ffd2... Latest Latest
Warning

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

Go to latest
Published: May 13, 2019 License: BSD-2-Clause Imports: 21 Imported by: 6

Documentation

Index

Constants

View Source
const (
	CWLWorkflow          string = "Workflow"
	CWLCommandLineTool   string = "CommandLineTool"
	CWLWorkflowStepInput 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

ValidClassMap _

View Source
var ValidClasses = []string{"Workflow", "CommandLineTool", "WorkflowStepInput"}

ValidClasses _

View Source
var ValidTypeMap = map[CWLType_Type_Basic]CWLType_Type_Basic{} // lower-case to correct case mapping

ValidTypeMap _

ValidTypes _

Functions

func Add_to_collection_deprecated added in v0.9.67

func Add_to_collection_deprecated(context *WorkflowContext, object_array CWLObjectArray) (err error)

func CreateListing

func CreateListing(original interface{}, context *WorkflowContext) (result interface{}, err error)

func CreateWorkflowStepInputArray

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

func Evaluate_import

func Evaluate_import(obj interface{}, context *WorkflowContext) (new_doc interface{}, ok bool, err error)

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 GetSecondaryFilesArray added in v0.9.67

func GetSecondaryFilesArray(original interface{}, context *WorkflowContext) (array []interface{}, err error)

returns array<File | Directory>

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{}, context *WorkflowContext) (result interface{}, err error)

func NewBaseCommandArray added in v0.9.48

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

func NewCWLObject

func NewCWLObject(original interface{}, injectedRequirements []Requirement, context *WorkflowContext) (obj CWLObject, schemata []CWLType_Type, err error)

func NewCWLObjectArray

func NewCWLObjectArray(original interface{}, context *WorkflowContext) (array CWLObjectArray, schemata []CWLType_Type, err error)

func NewCWLTypeArray added in v0.9.48

func NewCWLTypeArray(native interface{}, parentID string, context *WorkflowContext) (cwlArrayPtr *[]CWLType, err error)

NewCWLTypeArray _

func NewCommandLineTool added in v0.9.45

func NewCommandLineTool(generic interface{}, injectedRequirements []Requirement, context *WorkflowContext) (commandLineTool *CommandLineTool, schemata []CWLType_Type, err error)

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

func NewCommandOutputParameterArray added in v0.9.45

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

NewCommandOutputParameterArray _

func NewCommandOutputParameterType added in v0.9.45

func NewCommandOutputParameterType(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (result interface{}, err error)

func NewCommandOutputParameterTypeArray added in v0.9.45

func NewCommandOutputParameterTypeArray(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (result_array []interface{}, err error)

func NewExpressionArray added in v0.9.62

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

func NewExpressionToolOutputParameterArray added in v0.9.67

func NewExpressionToolOutputParameterArray(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (newArrayPtr *[]ExpressionToolOutputParameter, err error)

NewExpressionToolOutputParameterArray _

func NewFDArray

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

Array of Files and/or Directories

func NewNamedCWLObject_array

func NewNamedCWLObject_array(original interface{}, context *WorkflowContext) (array []NamedCWLObject, schemata []CWLType_Type, err error)

func NewNamedCWLObject_from_interface

func NewNamedCWLObject_from_interface(original interface{}, context *WorkflowContext) (x NamedCWLObject, schemata []CWLType_Type, err error)

func NewWorkflow added in v0.9.45

func NewWorkflow(original interface{}, injectedRequirements []Requirement, context *WorkflowContext) (workflow_ptr *Workflow, schemata []CWLType_Type, err error)

func NewWorkflowOutputParameterArray added in v0.9.45

func NewWorkflowOutputParameterArray(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (newArrayPtr *[]WorkflowOutputParameter, err error)

NewWorkflowOutputParameterArray _

func NewWorkflowOutputParameterType added in v0.9.45

func NewWorkflowOutputParameterType(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (result interface{}, err error)

func NewWorkflowOutputParameterTypeArray added in v0.9.45

func NewWorkflowOutputParameterTypeArray(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (result interface{}, err error)

func NewWorkflowStepFromInterface

func NewWorkflowStepFromInterface(original interface{}, injectedRequirements []Requirement, context *WorkflowContext) (w *WorkflowStep, schemata []CWLType_Type, err error)

func NormalizeOutputParameter_deprecated

func NormalizeOutputParameter_deprecated(original_map map[string]interface{}, context *WorkflowContext) (err error)

func Parse_cwl_document

func Parse_cwl_document(yaml_str string, inputfile_path string) (object_array []NamedCWLObject, schemata []CWLType_Type, context *WorkflowContext, schemas []interface{}, err error)

func Parse_cwl_graph_document

func Parse_cwl_graph_document(yaml_str string, context *WorkflowContext) (object_array []NamedCWLObject, schemata []CWLType_Type, schemas []interface{}, err error)

func Parse_cwl_simple_document

func Parse_cwl_simple_document(yaml_str string, context *WorkflowContext) (object_array []NamedCWLObject, schemata []CWLType_Type, schemas []interface{}, err error)

func TypeIsCorrect added in v0.9.62

func TypeIsCorrect(allowedTypes []CWLType_Type, object CWLType, context *WorkflowContext) (ok bool, err error)

TypeIsCorrect _

func TypeIsCorrectSingle added in v0.9.62

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

TypeIsCorrectSingle _

func Unmarshal

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

Types

type Any

type Any interface {
	CWL_class
}

Any _

func NewAny added in v0.9.45

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

NewAny _

type Array added in v0.9.62

type Array []CWLType

Array _

func NewArray added in v0.9.62

func NewArray(id string, native interface{}, context *WorkflowContext) (arrayPtr *Array, err error)

NewArray _

func (*Array) GetClass added in v0.9.62

func (c *Array) GetClass() string

GetClass _

func (*Array) GetID

func (c *Array) GetID() string

GetID _

func (*Array) GetType added in v0.9.62

func (c *Array) GetType() CWLType_Type

GetType _

func (*Array) IsCWLMinimal

func (c *Array) IsCWLMinimal()

IsCWLMinimal _

func (*Array) IsCWLObject

func (c *Array) IsCWLObject()

IsCWLObject _

func (*Array) Len

func (c *Array) Len() int

Len _

func (*Array) SetID

func (c *Array) SetID(string)

SetID _

func (*Array) String added in v0.9.62

func (c *Array) String() string

String _

type ArraySchema added in v0.9.62

type ArraySchema struct {
	Schema `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"` // provides Type, Label
	Items  []CWLType_Type                                                        `yaml:"items,omitempty" bson:"items,omitempty" json:"items,omitempty" mapstructure:"items,omitempty"` // string or []string ([] speficies which types are possible, e.g ["File" , "null"])
}

ArraySchema _

func NewArraySchema added in v0.9.62

func NewArraySchema() (as *ArraySchema)

func NewArraySchemaFromMap

func NewArraySchemaFromMap(original_map map[string]interface{}, schemata []CWLType_Type, context_p string, context *WorkflowContext) (as *ArraySchema, err error)

func (*ArraySchema) GetID

func (c *ArraySchema) GetID() string

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 ArrayType

type ArrayType interface {
	IsArrayType()
	Get_Array() *[]CWLType
}

ArrayType _

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) Evaluate

func (c BaseRequirement) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

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

func (b *Boolean) GetID() string

func (*Boolean) GetType added in v0.9.62

func (b *Boolean) GetType() CWLType_Type

func (*Boolean) IsCWLMinimal

func (b *Boolean) IsCWLMinimal()

func (*Boolean) IsCWLObject

func (b *Boolean) IsCWLObject()

func (*Boolean) SetID

func (b *Boolean) SetID(i string)

func (*Boolean) String added in v0.9.45

func (b *Boolean) String() string

type CWLObject

type CWLObject interface {
	IsCWLObject()
}

func NewListingFromInterface added in v0.9.67

func NewListingFromInterface(original interface{}, context *WorkflowContext) (obj CWLObject, err error)

type CWLObjectArray

type CWLObjectArray []CWLObject

type CWLObjectGeneric

type CWLObjectGeneric map[string]interface{}

type CWLObjectImpl

type CWLObjectImpl struct{}

func (*CWLObjectImpl) IsCWLObject

func (c *CWLObjectImpl) IsCWLObject()

type CWLType

type CWLType interface {
	CWLObject
	CWL_class // 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{}, context *WorkflowContext) (cwlType CWLType, err error)

NewCWLType _

func NewCWLTypeByClass added in v0.9.62

func NewCWLTypeByClass(class string, id string, native interface{}, context *WorkflowContext) (cwlType CWLType, err error)

NewCWLTypeByClass _

type CWLType_Impl added in v0.9.45

type CWLType_Impl struct {
	CWLObjectImpl  `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"` // provides: IsCWLObject()
	CWL_class_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) IsCWLMinimal

func (c *CWLType_Impl) IsCWLMinimal()

func (*CWLType_Impl) Is_CWLType added in v0.9.62

func (c *CWLType_Impl) Is_CWLType()

type CWLType_Type added in v0.9.62

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

func CreateWorkflowStepsArray

func CreateWorkflowStepsArray(original interface{}, injectedRequirements []Requirement, context *WorkflowContext) (schemata []CWLType_Type, array_ptr *[]WorkflowStep, err error)

CreateWorkflowStepsArray

func GetProcess added in v0.9.67

func GetProcess(original interface{}, context *WorkflowContext) (process interface{}, schemata []CWLType_Type, err error)

func NewCWLType_Type added in v0.9.62

func NewCWLType_Type(schemata []CWLType_Type, native interface{}, context_p string, context *WorkflowContext) (result CWLType_Type, err error)

func NewCWLType_TypeArray added in v0.9.62

func NewCWLType_TypeArray(native interface{}, schemata []CWLType_Type, context_p string, pass_schemata_along bool, context *WorkflowContext) (result []CWLType_Type, err error)

func NewCWLType_TypeFromString added in v0.9.62

func NewCWLType_TypeFromString(schemata []CWLType_Type, native string, context string) (result CWLType_Type, err error)

func NewCommandInputParameterTypeArray added in v0.9.62

func NewCommandInputParameterTypeArray(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (result []CWLType_Type, err error)

func NewProcess added in v0.9.45

func NewProcess(original interface{}, injectedRequirements []Requirement, context *WorkflowContext) (process interface{}, schemata []CWLType_Type, err error)

returns CommandLineTool, ExpressionTool or Workflow

type CWLType_Type_Basic added in v0.9.62

type CWLType_Type_Basic string
const (
	CWLNull      CWLType_Type_Basic = "null"      //no value
	CWLBoolean   CWLType_Type_Basic = "boolean"   //a binary value
	CWLInt       CWLType_Type_Basic = "int"       //32-bit signed integer
	CWLLong      CWLType_Type_Basic = "long"      //64-bit signed integer
	CWLFloat     CWLType_Type_Basic = "float"     //single precision (32-bit) IEEE 754 floating-point number
	CWLDouble    CWLType_Type_Basic = "double"    //double precision (64-bit) IEEE 754 floating-point number
	CWLString    CWLType_Type_Basic = "string"    //Unicode character sequence
	CWLFile      CWLType_Type_Basic = "File"      //A File object
	CWLDirectory CWLType_Type_Basic = "Directory" //A Directory object
	CWLAny       CWLType_Type_Basic = "Any"       //A Any object

	CWLStdin  CWLType_Type_Basic = "stdin"
	CWLStdout CWLType_Type_Basic = "stdout"
	CWLStderr CWLType_Type_Basic = "stderr"

	CWLArray   CWLType_Type_Basic = "array"   // unspecific type, only useful as a struct with items
	CWLRecord  CWLType_Type_Basic = "record"  // unspecific type
	CWLEnum    CWLType_Type_Basic = "enum"    // unspecific type
	CWLPointer CWLType_Type_Basic = "pointer" // 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) GetID

func (s CWLType_Type_Basic) GetID() string

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

func NewCWLVersion

func NewCWLVersion(version string) CWLVersion

type CWL_class added in v0.9.67

type CWL_class interface {
	//CWL_minimal_interface
	GetClass() string
}

type CWL_class_Impl added in v0.9.67

type CWL_class_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_class_Impl) GetClass added in v0.9.67

func (c *CWL_class_Impl) GetClass() string

type CWL_document

type CWL_document struct {
	CwlVersion CWLVersion        `yaml:"cwlVersion,omitempty" json:"cwlVersion,omitempty" bson:"cwlVersion,omitempty" mapstructure:"cwlVersion,omitempty"`
	Base       interface{}       `yaml:"$base,omitempty" json:"$base,omitempty" bson:"base,omitempty" mapstructure:"$base,omitempty"`
	Graph      []interface{}     `yaml:"$graph" json:"$graph" bson:"graph" mapstructure:"$graph"` // can only be used for reading, yaml has problems writing interface objetcs
	Namespaces map[string]string `yaml:"$namespaces,omitempty" json:"$namespaces,omitempty" bson:"namespaces,omitempty" mapstructure:"$namespaces,omitempty"`
	Schemas    []interface{}     `yaml:"$schemas,omitempty" json:"$schemas,omitempty" bson:"schemas,omitempty" mapstructure:"$schemas,omitempty"`
}

this is used by YAML or JSON library for inital parsing

type CWL_id added in v0.9.67

type CWL_id interface {
	//CWL_bbject_interface
	//GetClass() string
	GetID() string
	SetID(string)
}

type CWL_id_Impl added in v0.9.67

type CWL_id_Impl struct {
	Id string `yaml:"id,omitempty" json:"id,omitempty" bson:"id,omitempty"`
}

func (*CWL_id_Impl) GetID

func (c *CWL_id_Impl) GetID() string

func (*CWL_id_Impl) SetID

func (c *CWL_id_Impl) SetID(id string)

type CommandInputArraySchema added in v0.9.67

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

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

func NewCommandInputArraySchema added in v0.9.67

func NewCommandInputArraySchema() (coas *CommandInputArraySchema)

func NewCommandInputArraySchemaFromInterface added in v0.9.67

func NewCommandInputArraySchemaFromInterface(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (coas *CommandInputArraySchema, err error)

func (*CommandInputArraySchema) GetID

func (c *CommandInputArraySchema) GetID() string

func (*CommandInputArraySchema) Type2String added in v0.9.67

func (c *CommandInputArraySchema) Type2String() string

type CommandInputEnumSchema

type CommandInputEnumSchema struct {
	EnumSchema `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Symbols, Type, Label, Name
	//Name         string                                                                `yaml:"name,omitempty" json:"name,omitempty" bson:"name,omitempty" mapstructure:"name,omitempty"`
	InputBinding *CommandLineBinding `` /* 127-byte string literal not displayed */
}

https://www.commonwl.org/v1.1.0-dev1/CommandLineTool.html#CommandInputEnumSchema

func NewCommandInputEnumSchemaFromInterface

func NewCommandInputEnumSchemaFromInterface(original interface{}, context *WorkflowContext) (cies *CommandInputEnumSchema, err error)

type CommandInputParameter

type CommandInputParameter struct {
	CWLObjectImpl  `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"` // provides IsCWLObject
	Id             string                                                                `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty" mapstructure:"id,omitempty"`
	SecondaryFiles interface{}                                                           `` // TODO string | Expression | array<string | Expression>
	/* 135-byte string literal not displayed */
	Format       []string            `yaml:"format,omitempty" bson:"format,omitempty" json:"format,omitempty" mapstructure:"format,omitempty"`
	Streamable   bool                `yaml:"streamable,omitempty" bson:"streamable,omitempty" json:"streamable,omitempty" mapstructure:"streamable,omitempty"`
	Type         []CWLType_Type      `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty" mapstructure:"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" mapstructure:"label,omitempty"`
	Description  string              `yaml:"description,omitempty" bson:"description,omitempty" json:"description,omitempty" mapstructure:"description,omitempty"`
	InputBinding *CommandLineBinding `` /* 127-byte string literal not displayed */
	Default      CWLType             `yaml:"default,omitempty" bson:"default,omitempty" json:"default,omitempty" mapstructure:"default,omitempty"`
}

func CreateCommandInputArray

func CreateCommandInputArray(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (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{}, schemata []CWLType_Type, context *WorkflowContext) (input_parameter *CommandInputParameter, err error)

type CommandInputRecordField added in v0.9.67

type CommandInputRecordField struct {
	RecordField  `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // name type, doc , label
	InputBinding *CommandLineBinding                                                   `yaml:"inputBinding,omitempty" json:"inputBinding,omitempty" bson:"inputBinding,omitempty"`
}

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

func CreateCommandInputRecordFieldArray added in v0.9.67

func CreateCommandInputRecordFieldArray(native []interface{}, schemata []CWLType_Type, context *WorkflowContext) (irfa []CommandInputRecordField, err error)

func NewCommandInputRecordField added in v0.9.67

func NewCommandInputRecordField(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (crf *CommandInputRecordField, err error)

type CommandInputRecordSchema added in v0.9.67

type CommandInputRecordSchema struct {
	RecordSchema `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Type, Label, Name
	Fields       []CommandInputRecordField                                             `yaml:"fields,omitempty" json:"fields,omitempty" bson:"fields,omitempty"`
}

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

func NewCommandInputRecordSchema added in v0.9.67

func NewCommandInputRecordSchema(nativeMap map[string]interface{}) (cirs *CommandInputRecordSchema, err error)

func NewCommandInputRecordSchemaFromInterface added in v0.9.67

func NewCommandInputRecordSchemaFromInterface(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (cirs *CommandInputRecordSchema, err error)

type CommandLineBinding

type CommandLineBinding struct {
	LoadContents  bool        `` /* 127-byte string literal not displayed */
	Position      *int        `yaml:"position,omitempty" bson:"position,omitempty" json:"position,omitempty" mapstructure:"position,omitempty"`
	Prefix        string      `yaml:"prefix,omitempty" bson:"prefix,omitempty" json:"prefix,omitempty" mapstructure:"prefix,omitempty"`
	Separate      *bool       `yaml:"separate,omitempty" bson:"separate,omitempty" json:"separate,omitempty" mapstructure:"separate,omitempty"`
	ItemSeparator string      `` /* 131-byte string literal not displayed */
	ValueFrom     *Expression `yaml:"valueFrom,omitempty" bson:"valueFrom,omitempty" json:"valueFrom,omitempty" mapstructure:"valueFrom,omitempty"`
	ShellQuote    *bool       `yaml:"shellQuote,omitempty" bson:"shellQuote,omitempty" json:"shellQuote,omitempty" mapstructure:"shellQuote,omitempty"`
}

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

func NewCommandLineBinding added in v0.9.48

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

func NewCommandLineBindingArray added in v0.9.48

func NewCommandLineBindingArray(original interface{}, context *WorkflowContext) (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"`
	CWLObjectImpl      `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	CWL_class_Impl     `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	CWL_id_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" bson:"inputs" json:"inputs" mapstructure:"inputs"`
	Outputs            []CommandOutputParameter `yaml:"outputs" bson:"outputs" json:"outputs" mapstructure:"outputs"`
	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
	Stderr             string                   `yaml:"stderr,omitempty" bson:"stderr,omitempty" json:"stderr,omitempty" mapstructure:"stderr,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 */
	Namespaces         map[string]string        ``                                                                                                        /* 130-byte string literal not displayed */
}

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

func (*CommandLineTool) Evaluate

func (c *CommandLineTool) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

func (*CommandLineTool) IsCWLMinimal

func (c *CommandLineTool) IsCWLMinimal()

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"` //provides Type, Label, Items
	OutputBinding *CommandOutputBinding                                                 `` /* 131-byte string literal not displayed */
}

https://www.commonwl.org/draft-3/CommandLineTool.html#CommandOutputArraySchema

func NewCommandOutputArraySchema added in v0.9.45

func NewCommandOutputArraySchema() (coas *CommandOutputArraySchema)

func NewCommandOutputArraySchemaFromInterface added in v0.9.62

func NewCommandOutputArraySchemaFromInterface(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (coas *CommandOutputArraySchema, err error)

func (*CommandOutputArraySchema) GetID

func (c *CommandOutputArraySchema) GetID() string

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         `` /* 128-byte string literal not displayed */
	OutputEval   *Expression  `yaml:"outputEval,omitempty" bson:"outputEval,omitempty" json:"outputEval,omitempty" mapstructure:"outputEval,omitempty"`
}

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

func NewCommandOutputBinding added in v0.9.45

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

type CommandOutputEnumSchema added in v0.9.45

type CommandOutputEnumSchema struct {
	EnumSchema    `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Symbols, Type, Label
	OutputBinding *CommandOutputBinding                                                 `` /* 131-byte string literal not displayed */
}

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) GetID

func (c *CommandOutputEnumSchema) GetID() string

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 {
	OutputParameter `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Id, Label, SecondaryFiles, Format, Streamable, OutputBinding, Type

	Description string `yaml:"description,omitempty" bson:"description,omitempty" json:"description,omitempty" mapstructure:"description,omitempty"`
}

CommandOutputParameter https://www.commonwl.org/v1.0/CommandLineTool.html#CommandOutputParameter

func NewCommandOutputParameter added in v0.9.45

func NewCommandOutputParameter(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (output_parameter *CommandOutputParameter, err error)

NewCommandOutputParameter _

type CommandOutputRecordField added in v0.9.45

type CommandOutputRecordField struct {
	RecordField   `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // name type, doc , label
	OutputBinding *CommandOutputBinding                                                 `yaml:"outputBinding,omitempty" json:"outputBinding,omitempty" bson:"outputBinding,omitempty"`
}

https://www.commonwl.org/v1.0/CommandLineTool.html#CommandOutputRecordField

func CreateCommandOutputRecordFieldArray

func CreateCommandOutputRecordFieldArray(native []interface{}, schemata []CWLType_Type, context *WorkflowContext) (irfa []CommandOutputRecordField, err error)

func NewCommandOutputRecordField

func NewCommandOutputRecordField(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (crf *CommandOutputRecordField, err error)

type CommandOutputRecordSchema added in v0.9.45

type CommandOutputRecordSchema struct {
	RecordSchema `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Type, Label, Name
	//Type   string                     `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty" mapstructure:"type,omitempty"` // Must be record
	Fields []CommandOutputRecordField `yaml:"fields,omitempty" bson:"fields,omitempty" json:"fields,omitempty" mapstructure:"fields,omitempty"`
}

func NewCommandOutputRecordSchema added in v0.9.62

func NewCommandOutputRecordSchema() (schema *CommandOutputRecordSchema, err error)

func NewCommandOutputRecordSchemaFromInterface

func NewCommandOutputRecordSchemaFromInterface(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (cirs *CommandOutputRecordSchema, err error)

func (*CommandOutputRecordSchema) GetID

func (c *CommandOutputRecordSchema) GetID() string

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"` // Provides: Id, Class, Type

	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"` //the basename property defines the name of the File or Subdirectory when staged to disk
	Listing  []CWLType `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{}, context *WorkflowContext) (d *Directory, err error)

func (Directory) GetClass

func (d Directory) GetClass() string

func (Directory) String

func (d Directory) String() string

type Dirent added in v0.9.67

type Dirent struct {
	CWLType_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	Entry        interface{} `yaml:"entry" json:"entry" bson:"entry" mapstructure:"entry"`                 // string, Expression
	Entryname    interface{} `yaml:"entryname" json:"entryname" bson:"entryname" mapstructure:"entryname"` // string, Expression
	Writable     bool        `yaml:"writable" json:"writable" bson:"writable" mapstructure:"writable"`
}

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

func NewDirentFromInterface added in v0.9.67

func NewDirentFromInterface(id string, original interface{}) (dirent *Dirent, err error)

func (*Dirent) Evaluate

func (d *Dirent) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

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" mapstructure:"dockerPull,omitempty"`
	DockerLoad            string `yaml:"dockerLoad,omitempty" bson:"dockerLoad,omitempty" json:"dockerLoad,omitempty" mapstructure:"dockerLoad,omitempty"`
	DockerFile            string `yaml:"dockerFile,omitempty" bson:"dockerFile,omitempty" json:"dockerFile,omitempty" mapstructure:"dockerFile,omitempty"`
	DockerImport          string `` /* 127-byte string literal not displayed */
	DockerImageId         string `` /* 131-byte string literal not displayed */
	DockerOutputDirectory string `` /* 163-byte string literal not displayed */
}

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

func (i *Double) GetID() string

func (*Double) GetType added in v0.9.62

func (i *Double) GetType() CWLType_Type

func (*Double) IsCWLMinimal

func (i *Double) IsCWLMinimal()

func (*Double) IsCWLObject

func (i *Double) IsCWLObject()

func (*Double) SetID

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"`
	Id           string `yaml:"id,omitempty" json:"id,omitempty" bson:"id,omitempty"`
	Class        string `yaml:"class,omitempty" json:"class,omitempty" bson:"class,omitempty"`
}

this is a generic CWLObject. 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) GetID

func (e Empty) GetID() string

func (Empty) String

func (e Empty) String() string

type Enum added in v0.9.62

type Enum string

func NewEnum added in v0.9.67

func NewEnum(id string, value string) (s *Enum)

func NewEnumFromInterface added in v0.9.67

func NewEnumFromInterface(id string, native interface{}) (s *Enum, err error)

func NewEnumFromstring added in v0.9.67

func NewEnumFromstring(value string) (s *Enum)

func (*Enum) GetClass added in v0.9.62

func (s *Enum) GetClass() string

func (*Enum) GetID

func (s *Enum) GetID() string

func (*Enum) GetType added in v0.9.67

func (s *Enum) GetType() CWLType_Type

func (*Enum) IsCWLMinimal

func (s *Enum) IsCWLMinimal()

func (*Enum) IsCWLObject

func (s *Enum) IsCWLObject()

func (*Enum) SetID

func (s *Enum) SetID(i string)

func (*Enum) String added in v0.9.67

func (s *Enum) String() string

type EnumSchema added in v0.9.67

type EnumSchema struct {
	Symbols []string `yaml:"symbols,omitempty" bson:"symbols,omitempty" json:"symbols,omitempty" mapstructure:"symbols,omitempty"`
	Type    string   `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty" mapstructure:"type,omitempty"` // must be enum
	Label   string   `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty" mapstructure:"label,omitempty"`
	Name    string   `yaml:"name,omitempty" bson:"name,omitempty" json:"name,omitempty" mapstructure:"name,omitempty"`
}

func NewEnumSchemaFromInterface added in v0.9.67

func NewEnumSchemaFromInterface(original interface{}, context *WorkflowContext) (es EnumSchema, err error)

func (EnumSchema) GetID

func (s EnumSchema) GetID() string

func (EnumSchema) Is_Type added in v0.9.67

func (s EnumSchema) Is_Type()

func (EnumSchema) Type2String added in v0.9.67

func (s EnumSchema) Type2String() string

type EnvVarRequirement added in v0.9.62

type EnvVarRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"`
	EnvDef          []EnvironmentDef `yaml:"envDef,omitempty" bson:"envDef,omitempty" json:"envDef,omitempty" mapstructure:"envDef,omitempty"`
}

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

func NewEnvVarRequirement added in v0.9.62

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

func (*EnvVarRequirement) Evaluate

func (r *EnvVarRequirement) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

func (EnvVarRequirement) GetID

func (c EnvVarRequirement) GetID() string

type EnvironmentDef added in v0.9.62

type EnvironmentDef struct {
	EnvName  string      `yaml:"envName,omitempty" bson:"envName,omitempty" json:"envName,omitempty" mapstructure:"envName,omitempty"`
	EnvValue interface{} `yaml:"envValue,omitempty" bson:"envValue,omitempty" json:"envValue,omitempty" mapstructure:"envValue,omitempty"`
}

func GetEnfDefArray added in v0.9.67

func GetEnfDefArray(original interface{}) (array []EnvironmentDef, err error)

func NewEnvironmentDefFromInterface added in v0.9.67

func NewEnvironmentDefFromInterface(original interface{}) (enfDev EnvironmentDef, err error)

func (*EnvironmentDef) Evaluate

func (d *EnvironmentDef) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

type Expression

type Expression string

func NewExpression added in v0.9.62

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

func NewExpressionFromString added in v0.9.67

func NewExpressionFromString(original string) (expression *Expression)

var CWL_Expression CWLType_Type = "expression"

func (Expression) EvaluateExpression

func (e Expression) EvaluateExpression(self interface{}, inputs interface{}, context *WorkflowContext) (result interface{}, err error)

func (Expression) String

func (e Expression) String() string

type ExpressionTool added in v0.9.67

type ExpressionTool struct {
	CWLObjectImpl  `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	CWL_class_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	CWL_id_Impl    `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"`
	Inputs         []InputParameter                `yaml:"inputs" bson:"inputs" json:"inputs" mapstructure:"inputs"`
	Outputs        []ExpressionToolOutputParameter `yaml:"outputs" bson:"outputs" json:"outputs" mapstructure:"outputs"`
	Expression     Expression                      `yaml:"expression,omitempty" bson:"expression,omitempty" json:"expression,omitempty" mapstructure:"expression,omitempty"`
	Requirements   []Requirement                   `` /* 127-byte string literal not displayed */
	Hints          []Requirement                   `yaml:"hints,omitempty" bson:"hints,omitempty" json:"hints,omitempty" mapstructure:"hints,omitempty"`
	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"`
	CwlVersion     CWLVersion                      `yaml:"cwlVersion,omitempty" bson:"cwlVersion,omitempty" json:"cwlVersion,omitempty" mapstructure:"cwlVersion,omitempty"`
	Namespaces     map[string]string               `` /* 130-byte string literal not displayed */
}

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

func NewExpressionTool added in v0.9.67

func NewExpressionTool(original interface{}, schemata []CWLType_Type, injectedRequirements []Requirement, context *WorkflowContext) (et *ExpressionTool, err error)

TODO pass along workflow InlineJavascriptRequirement

func (*ExpressionTool) Evaluate

func (et *ExpressionTool) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

type ExpressionToolOutputParameter added in v0.9.67

type ExpressionToolOutputParameter struct {
	OutputParameter `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Id, Label, SecondaryFiles, Format, Streamable, OutputBinding, Type
}

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

func NewExpressionToolOutputParameter added in v0.9.67

func NewExpressionToolOutputParameter(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (wop *ExpressionToolOutputParameter, err error)

NewExpressionToolOutputParameter _

type File

type File struct {
	CWLType_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // Provides: Id, Class, Type
	//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 []interface{} `` /* 135-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(obj interface{}, context *WorkflowContext, external_id string) (file File, err error)

func NewFile added in v0.9.45

func NewFile() (f *File)

func NewFileFromInterface

func NewFileFromInterface(obj interface{}, context *WorkflowContext, external_id string) (file File, err error)

func (*File) Exists

func (file *File) Exists(inputfile_path string) (ok bool, err error)

func (*File) GetType added in v0.9.62

func (f *File) GetType() CWLType_Type

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

func (*File) IsCWLMinimal

func (f *File) IsCWLMinimal()

func (*File) Is_CWLType added in v0.9.62

func (f *File) Is_CWLType()

func (*File) SetPath

func (file *File) SetPath(path_str string)

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 }

func (*File) UpdateComponents

func (file *File) UpdateComponents(filename string)

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

func (i *Float) GetID() string

func (*Float) GetType added in v0.9.62

func (i *Float) GetType() CWLType_Type

func (*Float) IsCWLMinimal

func (i *Float) IsCWLMinimal()

func (*Float) IsCWLObject

func (i *Float) IsCWLObject()

func (*Float) SetID

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         interface{} `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{}, context *WorkflowContext) (r *InitialWorkDirRequirement, err error)

func (*InitialWorkDirRequirement) Evaluate

func (r *InitialWorkDirRequirement) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

Listing: array<File | Directory | Dirent | string | Expression> | string | Expression

func (InitialWorkDirRequirement) GetID

type InlineJavascriptRequirement added in v0.9.62

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

func NewInlineJavascriptRequirement added in v0.9.62

func NewInlineJavascriptRequirement() InlineJavascriptRequirement

func NewInlineJavascriptRequirementFromInterface added in v0.9.67

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

func (InlineJavascriptRequirement) GetID

type InputArraySchema added in v0.9.62

type InputArraySchema struct {
	ArraySchema  `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // Type, Label
	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{}, schemata []CWLType_Type, context *WorkflowContext) (coas *InputArraySchema, err error)

func (*InputArraySchema) GetID

func (c *InputArraySchema) GetID() string

func (*InputArraySchema) Type2String added in v0.9.62

func (c *InputArraySchema) Type2String() string

type InputEnumSchema added in v0.9.67

type InputEnumSchema struct {
	EnumSchema `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Symbols, Type, Label, Name
	//Name         string                                                                `yaml:"name,omitempty" json:"name,omitempty" bson:"name,omitempty" mapstructure:"name,omitempty"`
	InputBinding *CommandLineBinding `` /* 127-byte string literal not displayed */
}

func NewInputEnumSchemaFromInterface added in v0.9.67

func NewInputEnumSchemaFromInterface(original interface{}, context *WorkflowContext) (ies *InputEnumSchema, err error)

type InputParameter

type InputParameter struct {
	CWLObjectImpl  `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"` // provides IsCWLObject
	Id             string                                                                `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty" mapstructure:"id,omitempty"`
	Label          string                                                                `yaml:"label,omitempty" bson:"label,omitempty" json:"label,omitempty" mapstructure:"label,omitempty"`
	SecondaryFiles interface{}                                                           `` // TODO string | Expression | array<string | Expression>
	/* 135-byte string literal not displayed */
	Format       []string            `yaml:"format,omitempty" bson:"format,omitempty" json:"format,omitempty" mapstructure:"format,omitempty"`
	Streamable   bool                `yaml:"streamable,omitempty" bson:"streamable,omitempty" json:"streamable,omitempty" mapstructure:"streamable,omitempty"`
	Doc          string              `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty" mapstructure:"doc,omitempty"`
	InputBinding *CommandLineBinding `` //TODO
	/* 127-byte string literal not displayed */
	Default CWLType        `yaml:"default,omitempty" bson:"default,omitempty" json:"default,omitempty" mapstructure:"default,omitempty"`
	Type    []CWLType_Type `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty" mapstructure:"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{}, schemata []CWLType_Type, context *WorkflowContext) (input_parameter *InputParameter, err error)

func NewInputParameterArray added in v0.9.45

func NewInputParameterArray(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (new_array []InputParameter, err error)

InputParameter

func (InputParameter) GetClass

func (i InputParameter) GetClass() string

func (InputParameter) GetID

func (i InputParameter) GetID() string

func (InputParameter) IsCWLMinimal

func (i InputParameter) IsCWLMinimal()

func (InputParameter) SetID

func (i InputParameter) SetID(id string)

type InputParameterType added in v0.9.45

type InputParameterType string

type InputRecordField added in v0.9.67

type InputRecordField struct {
	RecordField  `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides: name, type, doc, label
	InputBinding *CommandLineBinding                                                   `yaml:"inputBinding,omitempty" json:"inputBinding,omitempty" bson:"inputBinding,omitempty"`
}

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

func CreateInputRecordFieldArray added in v0.9.67

func CreateInputRecordFieldArray(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (irfa []InputRecordField, err error)

func NewInputRecordField added in v0.9.67

func NewInputRecordField(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (irf *InputRecordField, err error)

type InputRecordSchema added in v0.9.67

type InputRecordSchema struct {
	RecordSchema `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Type, Label, Name
	Fields       []InputRecordField                                                    `yaml:"fields,omitempty" json:"fields,omitempty" bson:"fields,omitempty"`
}

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

func NewInputRecordSchema added in v0.9.67

func NewInputRecordSchema(irs_map map[string]interface{}) (irs *InputRecordSchema, err error)

func NewInputRecordSchemaFromInterface added in v0.9.67

func NewInputRecordSchemaFromInterface(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (irs *InputRecordSchema, err error)

type Int

type Int int

func NewInt added in v0.9.62

func NewInt(value int, context *WorkflowContext) (i *Int, err error)

func NewIntFromInterface added in v0.9.62

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

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) IsCWLMinimal

func (i *Int) IsCWLMinimal()

func (*Int) IsCWLObject

func (i *Int) IsCWLObject()

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{}, context *WorkflowContext) (job *Job_document, err error)

func NewJob_documentFromNamedTypes added in v0.9.62

func NewJob_documentFromNamedTypes(original interface{}, context *WorkflowContext) (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) Add

func (j *Job_document) Add(id string, value CWLType) (new_doc *Job_document)

func (*Job_document) Get

func (j *Job_document) Get(id string) (value CWLType, ok bool)

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 Long added in v0.9.67

type Long int64

func NewLong added in v0.9.67

func NewLong(value int64) (i *Long)

func NewLongFromInterface added in v0.9.67

func NewLongFromInterface(id string, native interface{}) (i *Long, err error)

func (*Long) GetClass added in v0.9.67

func (i *Long) GetClass() string

func (*Long) GetID

func (i *Long) GetID() string

func (*Long) GetType added in v0.9.67

func (i *Long) GetType() CWLType_Type

func (*Long) IsCWLMinimal

func (i *Long) IsCWLMinimal()

func (*Long) IsCWLObject

func (i *Long) IsCWLObject()

func (*Long) SetID

func (i *Long) SetID(x string)

func (*Long) String added in v0.9.67

func (i *Long) String() string

type MultipleInputFeatureRequirement added in v0.9.62

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

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

type NamedCWLObject

type NamedCWLObject struct {
	CWL_id_Impl `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides id
	Value       CWLObject                                                             `yaml:"value,omitempty" bson:"value,omitempty" json:"value,omitempty" mapstructure:"value,omitempty"`
}

func NewNamedCWLObject

func NewNamedCWLObject(id string, value CWLObject) NamedCWLObject

type NamedCWLType added in v0.9.62

type NamedCWLType struct {
	CWL_id_Impl `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"` // provides id
	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{}, context *WorkflowContext) (cwl_obj_named NamedCWLType, err error)

type NamedSchema

type NamedSchema struct {
	Schema `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"` // provides Type and Label
	Name   string                                                                `yaml:"name,omitempty" json:"name,omitempty" bson:"name,omitempty"`
}

type Null added in v0.9.62

type Null string

func NewNull added in v0.9.62

func NewNull() (n *Null)

func (*Null) GetBSON added in v0.9.67

func (n *Null) GetBSON() (result interface{}, err error)

func (*Null) GetClass added in v0.9.62

func (i *Null) GetClass() string

func (*Null) GetID

func (i *Null) GetID() string

func (*Null) GetType added in v0.9.67

func (i *Null) GetType() CWLType_Type

func (*Null) IsCWLMinimal

func (i *Null) IsCWLMinimal()

func (*Null) IsCWLObject

func (i *Null) IsCWLObject()

func (*Null) MarshalJSON added in v0.9.67

func (n *Null) MarshalJSON() (b []byte, err error)

func (*Null) MarshalYAML added in v0.9.67

func (n *Null) MarshalYAML() (i interface{}, err error)

No, use this: https://godoc.org/gopkg.in/yaml.v2#Marshaler

func (*Null) SetID

func (i *Null) SetID(x string)

func (*Null) String added in v0.9.62

func (i *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

func (s *Number) GetID() string

func (*Number) GetType added in v0.9.62

func (s *Number) GetType() CWLType_Type

func (*Number) IsCWLMinimal

func (s *Number) IsCWLMinimal()

func (*Number) SetID

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{}, schemata []CWLType_Type, context *WorkflowContext) (coas *OutputArraySchema, err error)

func (OutputArraySchema) GetID

func (c OutputArraySchema) GetID() string

func (OutputArraySchema) Is_Type added in v0.9.67

func (c OutputArraySchema) Is_Type()

func (OutputArraySchema) Type2String added in v0.9.62

func (c OutputArraySchema) Type2String() string

type OutputEnumSchema added in v0.9.45

type OutputEnumSchema struct {
	EnumSchema    `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Symbols, Type, Label
	OutputBinding *CommandOutputBinding                                                 `` /* 131-byte string literal not displayed */
}

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

func NewOutputEnumSchemaFromInterface

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

func (*OutputEnumSchema) GetID

func (c *OutputEnumSchema) GetID() string

func (*OutputEnumSchema) Is_Type

func (c *OutputEnumSchema) Is_Type()

func (*OutputEnumSchema) Type2String

func (c *OutputEnumSchema) Type2String() string

type OutputParameter added in v0.9.67

type OutputParameter 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"`
	OutputBinding  *CommandOutputBinding `yaml:"outputBinding,omitempty" bson:"outputBinding,omitempty" json:"outputBinding,omitempty"`
	Type           interface{}           `yaml:"type,omitempty" bson:"type,omitempty" json:"type,omitempty"`
}

used for ExpressionToolOutputParameter, WorkflowOutputParameter, CommandOutputParameter

func NewOutputParameterFromInterface

func NewOutputParameterFromInterface(original interface{}, schemata []CWLType_Type, context_p string, context *WorkflowContext) (output_parameter *OutputParameter, err error)

func (*OutputParameter) IsOptional

func (op *OutputParameter) IsOptional() (optional bool)

type OutputRecordField

type OutputRecordField struct {
	RecordField   `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // name type, doc , label
	OutputBinding *CommandOutputBinding                                                 `yaml:"outputBinding,omitempty" json:"outputBinding,omitempty" bson:"outputBinding,omitempty"`
}

https://www.commonwl.org/v1.0/Workflow.html#OutputRecordField

func CreateOutputRecordFieldArray

func CreateOutputRecordFieldArray(native []interface{}, schemata []CWLType_Type, context *WorkflowContext) (irfa []OutputRecordField, err error)

func NewOutputRecordField

func NewOutputRecordField(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (crf *OutputRecordField, err error)

type OutputRecordSchema added in v0.9.45

type OutputRecordSchema struct {
	RecordSchema `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Type, Label, Name
	Fields       []OutputRecordField                                                   `yaml:"fields,omitempty" json:"fields,omitempty" bson:"fields,omitempty"`
}

func NewOutputRecordSchema

func NewOutputRecordSchema(irs_map map[string]interface{}) (ors *OutputRecordSchema, err error)

func NewOutputRecordSchemaFromInterface

func NewOutputRecordSchemaFromInterface(native interface{}, schemata []CWLType_Type, context *WorkflowContext) (ors *OutputRecordSchema, err error)

type ParsingContext

type ParsingContext struct {
	If_objects map[string]interface{}
	Objects    map[string]CWLObject
}

type Pointer added in v0.9.67

type Pointer string

func NewPointer added in v0.9.67

func NewPointer(id string, value string) (s *Pointer)

func NewPointerFromInterface added in v0.9.67

func NewPointerFromInterface(id string, native interface{}) (s *Pointer, err error)

func NewPointerFromstring added in v0.9.67

func NewPointerFromstring(value string) (s *Pointer)

func (*Pointer) GetID

func (s *Pointer) GetID() string

func (*Pointer) Is_Type added in v0.9.67

func (c *Pointer) Is_Type()

func (s *Pointer) SetID(i string) {}

func (*Pointer) Type2String added in v0.9.67

func (c *Pointer) Type2String() string

type Process added in v0.9.45

type Process interface {
	CWLObject
	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

func (p *ProcessPointer) GetID() string

func (*ProcessPointer) IsCWLMinimal

func (p *ProcessPointer) IsCWLMinimal()

func (*ProcessPointer) Is_process added in v0.9.62

func (p *ProcessPointer) Is_process()

func (*ProcessPointer) SetID

func (p *ProcessPointer) SetID(string)

type Record added in v0.9.62

type Record map[string]CWLType

func NewRecord added in v0.9.62

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

func (*Record) GetClass added in v0.9.62

func (r *Record) GetClass() string

func (*Record) GetID

func (r *Record) GetID() string

func (*Record) GetType added in v0.9.67

func (r *Record) GetType() CWLType_Type

func (*Record) IsCWLMinimal

func (r *Record) IsCWLMinimal()

func (*Record) IsCWLObject

func (r *Record) IsCWLObject()

func (*Record) Is_Type added in v0.9.67

func (r *Record) Is_Type()

func (*Record) SetID

func (r *Record) SetID(id string)

func (Record) String added in v0.9.62

func (c Record) String() string

func (*Record) Type2String added in v0.9.67

func (r *Record) Type2String() string

type RecordField added in v0.9.67

type RecordField struct {
	Name string         `yaml:"name,omitempty" json:"name,omitempty" bson:"name,omitempty"`
	Type []CWLType_Type `yaml:"type,omitempty" json:"type,omitempty" bson:"type,omitempty"` // CWLType | InputRecordSchema | InputEnumSchema | InputArraySchema | string | array<CWLType | InputRecordSchema | InputEnumSchema | InputArraySchema | string>
	Doc  string         `yaml:"doc,omitempty" json:"doc,omitempty" bson:"doc,omitempty"`

	Label string `yaml:"label,omitempty" json:"label,omitempty" bson:"label,omitempty"`
}

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

func NewRecordFieldFromInterface added in v0.9.67

func NewRecordFieldFromInterface(native interface{}, schemata []CWLType_Type, context_p string, context *WorkflowContext) (rf *RecordField, err error)

type RecordSchema added in v0.9.67

type RecordSchema struct {
	NamedSchema `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"` // provides Type, Label, Name
}

func NewRecordSchema added in v0.9.67

func NewRecordSchema(nativeMap map[string]interface{}) (rs *RecordSchema, err error)

func (*RecordSchema) GetID

func (r *RecordSchema) GetID() string

func (*RecordSchema) Is_Type added in v0.9.67

func (r *RecordSchema) Is_Type()

func (*RecordSchema) Type2String added in v0.9.67

func (r *RecordSchema) Type2String() string

type Requirement

type Requirement interface {
	GetClass() string
	Evaluate(inputs interface{}, context *WorkflowContext) error
}

func AddRequirement added in v0.9.67

func AddRequirement(new_r Requirement, old_array_ptr []Requirement) (new_array_ptr []Requirement, err error)

func CreateHintsArray

func CreateHintsArray(original interface{}, injectedRequirements []Requirement, inputs interface{}, context *WorkflowContext) (hints_array []Requirement, err error)

func CreateRequirementArray

func CreateRequirementArray(original interface{}, optional bool, inputs interface{}, context *WorkflowContext) (new_array []Requirement, err error)

hints are optional, requirements are not

func CreateRequirementArrayAndInject

func CreateRequirementArrayAndInject(original interface{}, injectedRequirements []Requirement, inputs interface{}, context *WorkflowContext) (requirements_array []Requirement, err error)

Tools inherit Requirements, but should not overwrite !

func DeleteRequirement added in v0.9.67

func DeleteRequirement(requirement_class string, old_array_ptr []Requirement) (new_array_ptr []Requirement, err error)

func GetRequirement added in v0.9.67

func GetRequirement(r_name string, array_ptr []Requirement) (requirement *Requirement, err error)

func NewRequirement

func NewRequirement(class string, obj interface{}, inputs interface{}, context *WorkflowContext) (r Requirement, err error)

func NewRequirementFromInterface

func NewRequirementFromInterface(obj interface{}, inputs interface{}, context *WorkflowContext) (r Requirement, err error)

type ResourceRequirement added in v0.9.67

type ResourceRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"`
	CoresMin        interface{} `yaml:"coresMin,omitempty" bson:"coresMin,omitempty" json:"coresMin,omitempty"`    //long | string | Expression
	CoresMax        interface{} `yaml:"coresMax,omitempty" bson:"coresMax,omitempty" json:"coresMax,omitempty"`    // int | string | Expression
	RamMin          interface{} `yaml:"ramMin,omitempty" bson:"ramMin,omitempty" json:"ramMin,omitempty"`          //long | string | Expression
	RamMax          interface{} `yaml:"ramMax,omitempty" bson:"ramMax,omitempty" json:"ramMax,omitempty"`          //long | string | Expression
	TmpdirMin       interface{} `yaml:"tmpdirMin,omitempty" bson:"tmpdirMin,omitempty" json:"tmpdirMin,omitempty"` //long | string | Expression
	TmpdirMax       interface{} `yaml:"tmpdirMax,omitempty" bson:"tmpdirMax,omitempty" json:"tmpdirMax,omitempty"` //long | string | Expression
	OutdirMin       interface{} `yaml:"outdirMin,omitempty" bson:"outdirMin,omitempty" json:"outdirMin,omitempty"` //long | string | Expression
	OutdirMax       interface{} `yaml:"outdirMax,omitempty" bson:"outdirMax,omitempty" json:"outdirMax,omitempty"` //long | string | Expression
}

func NewResourceRequirement added in v0.9.67

func NewResourceRequirement(original interface{}, inputs interface{}, context *WorkflowContext) (r *ResourceRequirement, err error)

func (*ResourceRequirement) Evaluate

func (r *ResourceRequirement) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

func (ResourceRequirement) GetID

func (r ResourceRequirement) GetID() string

type ScatterFeatureRequirement added in v0.9.62

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

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

type Schema

type Schema struct {
	Type  CWLType_Type `yaml:"type,omitempty" json:"type,omitempty" bson:"type,omitempty"`
	Label string       `yaml:"label,omitempty" json:"label,omitempty" bson:"label,omitempty"`
}

type SchemaDefRequirement added in v0.9.67

type SchemaDefRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline" mapstructure:",squash"` // provides class
	Types           []interface{}                                                         `yaml:"types,omitempty" json:"types,omitempty" bson:"types,omitempty"` // array<InputRecordSchema | InputEnumSchema | InputArraySchema>
}

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

func GetSchemaDefRequirement

func GetSchemaDefRequirement(original interface{}, context *WorkflowContext) (r *SchemaDefRequirement, ok bool, err error)

GetSchemaDefRequirement _

func NewSchemaDefRequirement added in v0.9.67

func NewSchemaDefRequirement(original interface{}, context *WorkflowContext) (r *SchemaDefRequirement, err error)

NewSchemaDefRequirement _

func (SchemaDefRequirement) GetID

func (c SchemaDefRequirement) GetID() string

GetID _

type ShellCommandRequirement added in v0.9.67

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

https://www.commonwl.org/v1.0/CommandLineTool.html#ShellCommandRequirement

func NewShellCommandRequirement added in v0.9.67

func NewShellCommandRequirement(original interface{}) (r *ShellCommandRequirement, err error)

func (ShellCommandRequirement) GetID

func (c ShellCommandRequirement) GetID() string

type ShockRequirement

type ShockRequirement struct {
	BaseRequirement `bson:",inline" yaml:",inline" json:",inline" `
	Shock_api_url   string `` /* 131-byte string literal not displayed */
}

func GetShockRequirement added in v0.9.67

func GetShockRequirement(array_ptr []Requirement) (shock_requirement *ShockRequirement, err error)

func NewShockRequirement added in v0.9.62

func NewShockRequirement(url string) (requirement_ptr *ShockRequirement, err error)

func NewShockRequirementFromInterface added in v0.9.67

func NewShockRequirementFromInterface(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" mapstructure:",squash"`
}

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(value string) (s *String)

func NewStringFromInterface added in v0.9.62

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

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) IsCWLMinimal

func (s *String) IsCWLMinimal()

func (*String) IsCWLObject

func (s *String) IsCWLObject()

func (*String) SetID

func (s *String) SetID(i string)

func (*String) String

func (s *String) String() string

type Workflow

type Workflow struct {
	CWLObjectImpl  `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"` // provides IsCWLObject
	CWL_class_Impl `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"` // provides Id and Class fields
	CWL_id_Impl    `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"`
	Inputs         []InputParameter          `yaml:"inputs,omitempty" bson:"inputs,omitempty" json:"inputs,omitempty" mapstructure:"inputs,omitempty"`
	Outputs        []WorkflowOutputParameter `yaml:"outputs,omitempty" bson:"outputs,omitempty" json:"outputs,omitempty" mapstructure:"outputs,omitempty"`
	Steps          []WorkflowStep            `yaml:"steps,omitempty" bson:"steps,omitempty" json:"steps,omitempty" mapstructure:"steps,omitempty"`
	Requirements   []Requirement             `` //[]Requirement
	/* 127-byte string literal not displayed */
	Hints      []Requirement          `yaml:"hints,omitempty" bson:"hints,omitempty" json:"hints,omitempty" mapstructure:"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" mapstructure:"label,omitempty"`
	Doc        string                 `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty" mapstructure:"doc,omitempty"`
	CwlVersion CWLVersion             `yaml:"cwlVersion,omitempty" bson:"cwlVersion,omitempty" json:"cwlVersion,omitempty" mapstructure:"cwlVersion,omitempty"`
	Metadata   map[string]interface{} `yaml:"metadata,omitempty" bson:"metadata,omitempty" json:"metadata,omitempty" mapstructure:"metadata,omitempty"`
	Namespaces map[string]string      `` /* 130-byte string literal not displayed */
}

func NewWorkflowEmpty added in v0.9.67

func NewWorkflowEmpty() (w Workflow)

func (*Workflow) Evaluate

func (wf *Workflow) Evaluate(inputs interface{}, context *WorkflowContext) (err error)

func (*Workflow) GetClass

func (w *Workflow) GetClass() string

func (*Workflow) GetStep

func (wf *Workflow) GetStep(name string) (step *WorkflowStep, err error)

func (*Workflow) Is_process added in v0.9.62

func (w *Workflow) Is_process()

func (w *Workflow) GetID() string { return w.Id } func (w *Workflow) SetID(id string) { w.Id = id } func (w *Workflow) IsCWLMinimal() {} func (w *Workflow) Is_Any() {}

type WorkflowContext

type WorkflowContext struct {
	rwmutex.RWMutex
	CWL_document `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // fields: CwlVersion, Base, Graph, Namespaces, Schemas (all interface-based !)
	Path         string
	//Namespaces   map[string]string
	//CWLVersion
	//CwlVersion CWLVersion    `yaml:"cwl_version"  json:"cwl_version" bson:"cwl_version" mapstructure:"cwl_version"`
	//CWL_graph  []interface{} `yaml:"cwl_graph"  json:"cwl_graph" bson:"cwl_graph" mapstructure:"cwl_graph"`
	// old ParsingContext
	If_objects map[string]interface{} `yaml:"-"  json:"-" bson:"-" mapstructure:"-"` // graph objects
	Objects    map[string]CWLObject   `yaml:"-"  json:"-" bson:"-" mapstructure:"-"` // graph objects , stores all objects (replaces All ???)

	//Workflows          map[string]*Workflow          `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	//InputParameter     map[string]*InputParameter    `yaml:"-"  json:"-" bson:"-" mapstructure:"-"` // WorkflowInput
	//WorkflowStepInputs map[string]*WorkflowStepInput `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	//CommandLineTools   map[string]*CommandLineTool   `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	//ExpressionTools    map[string]*ExpressionTool    `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	//Files              map[string]*File              `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	//Strings            map[string]*String            `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	//Ints               map[string]*Int               `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	//Booleans           map[string]*Boolean           `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	All map[string]CWLObject `yaml:"-"  json:"-" bson:"-" mapstructure:"-"` // everything goes in here

	WorkflowCount int `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`

	Schemata    map[string]CWLType_Type `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	Initialized bool                    `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
	Initialzing bool                    `yaml:"-"  json:"-" bson:"-" mapstructure:"-"` // collect objects in ths phase

	Name string `yaml:"-"  json:"-" bson:"-" mapstructure:"-"`
}

global object for each job submission

func NewWorkflowContext

func NewWorkflowContext() (context *WorkflowContext)

func (*WorkflowContext) Add

func (c *WorkflowContext) Add(id string, obj CWLObject, caller string) (err error)

func (*WorkflowContext) AddArray

func (c *WorkflowContext) AddArray(object_array []NamedCWLObject) (err error)

func (*WorkflowContext) AddSchemata

func (c *WorkflowContext) AddSchemata(obj []CWLType_Type, writeLock bool) (err error)

func (*WorkflowContext) Evaluate

func (c *WorkflowContext) Evaluate(raw string) (parsed string)

func (*WorkflowContext) Get

func (c *WorkflowContext) Get(id string, do_read_lock bool) (obj CWLObject, ok bool, err error)

func (*WorkflowContext) GetCommandLineTool

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

func (*WorkflowContext) GetExpressionTool

func (c *WorkflowContext) GetExpressionTool(id string) (obj *ExpressionTool, err error)

func (*WorkflowContext) GetFile

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

func (*WorkflowContext) GetInt

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

func (*WorkflowContext) GetSchemata

func (c *WorkflowContext) GetSchemata() (obj []CWLType_Type, err error)

func (*WorkflowContext) GetString

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

func (*WorkflowContext) GetType

func (c *WorkflowContext) GetType(id string) (obj_type string, err error)

func (*WorkflowContext) GetWorkflow

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

func (*WorkflowContext) GetWorkflowStepInput

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

func (*WorkflowContext) Init

func (context *WorkflowContext) Init(entrypoint string) (err error)

search for #main and create objects recursively

func (*WorkflowContext) InitBasic

func (context *WorkflowContext) InitBasic()

type WorkflowOutputParameter

type WorkflowOutputParameter struct {
	OutputParameter `yaml:",inline" json:",inline" bson:",inline" mapstructure:",squash"` // provides Id, Label, SecondaryFiles, Format, Streamable, OutputBinding, Type
	Doc             string                                                                `yaml:"doc,omitempty" bson:"doc,omitempty" json:"doc,omitempty"`
	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"`
}

https://www.commonwl.org/v1.0/Workflow.html#WorkflowOutputParameter

func NewWorkflowOutputParameter added in v0.9.45

func NewWorkflowOutputParameter(original interface{}, schemata []CWLType_Type, context *WorkflowContext) (wop *WorkflowOutputParameter, err error)

type WorkflowStep

type WorkflowStep struct {
	CWLObjectImpl `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"`
	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"` //  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() (w *WorkflowStep)

func (WorkflowStep) GetOutput

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

func (*WorkflowStep) GetProcess

func (ws *WorkflowStep) GetProcess(context *WorkflowContext) (process interface{}, schemata []CWLType_Type, err error)

func (*WorkflowStep) GetProcessType

func (ws *WorkflowStep) GetProcessType(context *WorkflowContext) (process_type string, err error)

func (*WorkflowStep) Init

func (ws *WorkflowStep) Init(context *WorkflowContext) (err error)

type WorkflowStepInput

type WorkflowStepInput struct {
	CWLObjectImpl `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"`
	Id            string           `yaml:"id,omitempty" bson:"id,omitempty" json:"id,omitempty" mapstructure:"id,omitempty"`
	Source        interface{}      `yaml:"source,omitempty" bson:"source,omitempty" json:"source,omitempty" mapstructure:"source,omitempty"` // MultipleInputFeatureRequirement, multiple inbound data links listed in the source field
	Source_index  int              ``                                                                                                        /* 127-byte string literal not displayed */
	LinkMerge     *LinkMergeMethod `yaml:"linkMerge,omitempty" bson:"linkMerge,omitempty" json:"linkMerge,omitempty" mapstructure:"linkMerge,omitempty"`
	Default       interface{}      `yaml:"default,omitempty" bson:"default,omitempty" json:"default,omitempty" mapstructure:"default,omitempty"`         // type Any does not make sense
	ValueFrom     Expression       `yaml:"valueFrom,omitempty" bson:"valueFrom,omitempty" json:"valueFrom,omitempty" mapstructure:"valueFrom,omitempty"` // StepInputExpressionRequirement
	Ready         bool             `yaml:"-" bson:"-" json:"-" mapstructure:"-"`
}

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

func NewWorkflowStepInput added in v0.9.45

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

func (WorkflowStepInput) GetClass

func (w WorkflowStepInput) GetClass() string

func (WorkflowStepInput) GetID

func (w WorkflowStepInput) GetID() string

func (WorkflowStepInput) IsCWLMinimal

func (w WorkflowStepInput) IsCWLMinimal()

func (WorkflowStepInput) SetID

func (w WorkflowStepInput) SetID(id string)

type WorkflowStepOutput

type WorkflowStepOutput struct {
	CWLObjectImpl `yaml:",inline" bson:",inline" json:",inline" mapstructure:",squash"` // provides IsCWLObject
	Id            string                                                                `yaml:"id" bson:"id" json:"id" mapstructure:"id"`
}

func NewWorkflowStepOutput added in v0.9.62

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

func NewWorkflowStepOutputArray added in v0.9.62

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

Source Files

Jump to

Keyboard shortcuts

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