in src/parser/WDL/entities/WDLWorkflow.js [27:65]
constructor(wfNode, context, initialName = null, isSubWorkflow = false, parentNamespace = '') {
this.elementsParsingProcessors = {
declaration: this.parseDeclarationElement,
meta: this.parseMetaElement,
parametermeta: this.parseMetaElement,
call: this.parseCallElement,
scatter: this.parseScatterElement,
if: this.parseIfElement,
whileloop: this.parseWhileElement,
};
this.bindingsParsingProcessors = {
declaration: this.parseDeclarationBindings,
workflowoutputs: this.parseWfOutputsBindings,
call: this.parseCallBindings,
scatter: this.parseScatterBindings,
if: this.parseIfBindings,
whileloop: this.parseWhileBindings,
};
this.scatterIndex = 0;
this.loopIndex = 0;
this.ifIndex = 0;
this.context = context;
this.name = wfNode.name.source_string;
this.workflowStep = new Workflow(this.name, { initialName: initialName || null, isSubWorkflow });
if (isSubWorkflow) {
this.isSubWorkflow = isSubWorkflow;
}
if (parentNamespace) {
this.parentNamespace = parentNamespace;
}
if (!isSubWorkflow && this.context.imports && this.context.imports.imports && this.context.imports.imports.length) {
this.workflowStep.imports = this.context.imports.imports;
}
this.parseBodyElements(wfNode.body.list, 'workflow');
this.parseBodyBindings(wfNode.body.list, 'workflow');
}