src/pocketflow/flow

Types

BatchFlow = ref object of BaseNode
  startNode*: BaseNode
  prepBatchFunc*: BatchPrepCallback
  postBatchFunc*: BatchPostCallback
Flow = ref object of BaseNode
  startNode*: BaseNode
ParallelBatchFlow = ref object of BatchFlow
  maxConcurrency*: int

Procs

proc newBatchFlow(startNode: BaseNode): BatchFlow {....raises: [], tags: [],
    forbids: [].}
proc newFlow(startNode: BaseNode): Flow {....raises: [], tags: [], forbids: [].}
proc newParallelBatchFlow(startNode: BaseNode; maxConcurrency: int = 0): ParallelBatchFlow {.
    ...raises: [], tags: [], forbids: [].}
proc setPostBatch(flow: BatchFlow; f: BatchPostCallback): BatchFlow {.
    discardable, ...raises: [], tags: [], forbids: [].}
proc setPostBatch(flow: ParallelBatchFlow; f: BatchPostCallback): ParallelBatchFlow {.
    discardable, ...raises: [], tags: [], forbids: [].}
proc setPrepBatch(flow: BatchFlow; f: BatchPrepCallback): BatchFlow {.
    discardable, ...raises: [], tags: [], forbids: [].}
proc setPrepBatch(flow: ParallelBatchFlow; f: BatchPrepCallback): ParallelBatchFlow {.
    discardable, ...raises: [], tags: [], forbids: [].}

Methods

method internalRun(flow: BatchFlow; ctx: PfContext): Future[string] {....gcsafe,
    stackTrace: false, raises: [Exception, ValueError], tags: [RootEffect],
    forbids: [].}
method internalRun(flow: Flow; ctx: PfContext): Future[string] {....gcsafe,
    stackTrace: false, raises: [Exception, ValueError, KeyError],
    tags: [RootEffect], forbids: [].}
method internalRun(flow: ParallelBatchFlow; ctx: PfContext): Future[string] {.
    ...gcsafe, stackTrace: false, raises: [Exception, ValueError],
    tags: [RootEffect], forbids: [].}