<commit_before><commit_msg>adding cwl_workunit<commit_after>package core

import ()

type CWL_workunit struct {
	Job_input          *cwl.Job_document
	Job_input_filename string
	CWL_tool           *cwl.CommandLineTool
	CWL_tool_filename  string
	Tool_results       *cwl.Job_document
	OutputsExpected    *cwl.WorkflowStepOutput // this is the subset of outputs that are needed by the workflow
}

func NewCWL_workunit() *CWL_workunit {
	return &CWL_workunit{
		Job_input:       nil,
		CWL_tool:        nil,
		Tool_results:    nil,
		OutputsExpected: nil,
	}

}

func NewCWL_workunit_from_interface(native interface{}) (workunit *CWL_workunit, err error) {

	workunit = NewCWL_workunit()

	switch native.(type) {

	case map[string]interface{}:

	default:
		err = fmt.Errorf("(NewCWL_workunit_from_interface) wrong type, map expected")
		return

	}

	return

}
{'fraction_non_alphanumeric': 0.08060747663551401, 'fraction_numerical': 0.0, 'mean_word_length': 4.041176470588235, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '779352', 'n_tokens_mistral': 309, 'n_tokens_neox': 295, 'n_words': 66}