doot.workflow.structs.task_name

Classes

TaskNameHeadMarks_e

Markers used in a Strang's head

TaskNameBodyMarks_e

Markers Used in a base Strang's body

TaskNameProcessor

A processor for basic strangs,

TaskName

A Task Name.

Module Contents

class doot.workflow.structs.task_name.TaskNameHeadMarks_e[source]

Bases: jgdv.structs.strang._interface.StrangMarkAbstract_e

Markers used in a Strang’s head

basic = '$basic$'
class doot.workflow.structs.task_name.TaskNameBodyMarks_e[source]

Bases: jgdv.structs.strang._interface.StrangMarkAbstract_e

Markers Used in a base Strang’s body

head = '$head$'
cleanup = '$cleanup$'
partial = '$partial$'
data = '$data$'
empty = ''
hide = '_'
extend = '+'
customised = '$+$'
classmethod default() jgdv.Maybe[str][source]

The mark used if no mark is found

Return type:

jgdv.Maybe[str]

classmethod implicit() set[str][source]

Marks that arent in the form $mark$

Return type:

set[str]

classmethod skip() jgdv.Maybe[str][source]

The mark placed in empty words

Return type:

jgdv.Maybe[str]

classmethod idempotent() set[str][source]

marks you can’t have more than one of

Return type:

set[str]

classmethod generated() set[str][source]
Return type:

set[str]

class doot.workflow.structs.task_name.TaskNameProcessor[source]

Bases: jgdv.structs.strang.processor.StrangBasicProcessor

A processor for basic strangs, the instance is assigned into Strang._processor

If the strang type implements _{call}_h, the processor uses that for a stage instead

pre_process(
cls: type[T],
input: Any,
*args: Any,
strict: bool = False,
**kwargs: Any,
) jgdv._abstract.pre_processable.PreProcessResult[source]

Remove ‘tasks’ as a prefix, and strip quotes

Parameters:
  • cls (type[T])

  • input (Any)

  • args (Any)

  • strict (bool)

  • kwargs (Any)

Return type:

jgdv._abstract.pre_processable.PreProcessResult

_implicit_mark(
val: str,
*,
sec: jgdv.structs.strang._interface.Sec_d,
data: dict,
index: int,
maxcount: int,
) jgdv.Maybe[jgdv.structs.strang._interface.StrangMarkAbstract_e][source]

Builds certain marks that are not in the form $mark$.

In particular, pass marks that are empty words between two case chars: group::a.b..c And meta marks for tasks like job and hide: group::+._.a.b.c

Parameters:
  • val (str)

  • sec (jgdv.structs.strang._interface.Sec_d)

  • data (dict)

  • index (int)

  • maxcount (int)

Return type:

jgdv.Maybe[jgdv.structs.strang._interface.StrangMarkAbstract_e]

class doot.workflow.structs.task_name.TaskName(*args: Any, **kwargs: Any)[source]

Bases: jgdv.structs.strang.Strang

A Task Name.

Parameters:
  • args (Any)

  • kwargs (Any)

Marks: ClassVar
_processor: ClassVar
_sections: ClassVar
with_cleanup() Self[source]

Generate a $cleanup$ task name. the UUID of the source is carried with it

Return type:

Self

with_head() Self[source]

generate a $head$ task name, carrying the uuid along with it

Return type:

Self

is_cleanup() bool[source]
Return type:

bool

is_head() bool[source]
Return type:

bool

pop_generated() Self[source]
Return type:

Self