A composite object representing a sequence of monadic operations.
More...
#include <Pipeline.hpp>
|
| constexpr | Pipeline (std::tuple< Steps... > steps) |
| | Constructs a pipeline from a tuple of steps.
|
| template<nullable Nullable> |
| constexpr auto | apply (Nullable &&opt) & |
| | Applies nullable input on the pipeline.
|
| template<nullable Nullable> |
| constexpr auto | apply (Nullable &&opt) const & |
| | Applies nullable input on the pipeline.
|
| template<nullable Nullable> |
| constexpr auto | apply (Nullable &&opt) && |
| | Applies nullable input on the pipeline.
|
| template<nullable Nullable> |
| constexpr auto | apply (Nullable &&opt) const && |
| | Applies nullable input on the pipeline.
|
| template<typename... SuffixSteps> |
| constexpr auto | append (Pipeline< SuffixSteps... > suffix) const & |
| | Appends another pipeline to the end of this one.
|
| template<typename... SuffixSteps> |
| constexpr auto | append (Pipeline< SuffixSteps... > suffix) && |
| | Appends another pipeline to the end of this one.
|
|
| template<typename... Others> |
| class | Pipeline |
| template<typename... SuffixSteps> |
| constexpr auto | operator| (Pipeline const &prefix, Pipeline< SuffixSteps... > suffix) |
| | Appends the right-hand-side pipeline to the end of the left-hand-side pipeline.
|
| template<typename... SuffixSteps> |
| constexpr auto | operator| (Pipeline &&prefix, Pipeline< SuffixSteps... > suffix) |
| | Appends the right-hand-side pipeline to the end of the left-hand-side pipeline.
|
|
(Note that these are not member symbols.)
|
| template<nullable Nullable, pipeline Pipeline> |
| constexpr auto | apply (Nullable &&opt, Pipeline &&steps) |
| | Applies nullable input on the pipeline.
|
template<typename... Steps>
class gimo::Pipeline< Steps >
A composite object representing a sequence of monadic operations.
- Template Parameters
-
| Steps | The sequence of algorithm types contained in this pipeline. |
Pipelines are created by chaining algorithms (like transform or and_then) and are executed by calling apply member-function, or gimo::apply.
◆ Pipeline()
template<typename... Steps>
|
|
inlineexplicitnodiscardconstexpr |
Constructs a pipeline from a tuple of steps.
- Parameters
-
| steps | The tuple containing the algorithm instances. |
◆ append() [1/2]
template<typename... Steps>
template<typename... SuffixSteps>
Appends another pipeline to the end of this one.
- Template Parameters
-
| SuffixSteps | The steps of the appended pipeline. |
- Returns
- A new Pipeline containing all steps from both pipelines.
◆ append() [2/2]
template<typename... Steps>
template<typename... SuffixSteps>
Appends another pipeline to the end of this one.
- Template Parameters
-
| SuffixSteps | The steps of the appended pipeline. |
- Returns
- A new Pipeline containing all steps from both pipelines.
◆ apply() [1/4]
template<typename... Steps>
template<nullable Nullable>
Applies nullable input on the pipeline.
- Template Parameters
-
- Parameters
-
| opt | The input value to process. |
- Returns
- The result of the pipeline execution.
◆ apply() [2/4]
template<typename... Steps>
template<nullable Nullable>
Applies nullable input on the pipeline.
- Template Parameters
-
- Parameters
-
| opt | The input value to process. |
- Returns
- The result of the pipeline execution.
◆ apply() [3/4]
template<typename... Steps>
template<nullable Nullable>
Applies nullable input on the pipeline.
- Template Parameters
-
- Parameters
-
| opt | The input value to process. |
- Returns
- The result of the pipeline execution.
◆ apply() [4/4]
template<typename... Steps>
template<nullable Nullable>
Applies nullable input on the pipeline.
- Template Parameters
-
- Parameters
-
| opt | The input value to process. |
- Returns
- The result of the pipeline execution.
◆ Pipeline
template<typename... Steps>
template<typename... Others>
◆ apply()
template<nullable Nullable, pipeline Pipeline>
| auto apply |
( |
Nullable && | opt, |
|
|
Pipeline< Steps > && | steps ) |
|
related |
Applies nullable input on the pipeline.
- Template Parameters
-
| Nullable | The input type. |
| Pipeline | The pipeline type. |
- Parameters
-
| opt | The input value to process. |
| steps | The pipeline to execute. |
- Returns
- The result of the pipeline execution.
◆ operator| [1/2]
template<typename... Steps>
template<typename... SuffixSteps>
| auto operator| |
( |
Pipeline< Steps > && | prefix, |
|
|
Pipeline< SuffixSteps... > | suffix ) |
|
friend |
Appends the right-hand-side pipeline to the end of the left-hand-side pipeline.
- Template Parameters
-
| SuffixSteps | The steps of the appended pipeline. |
- Returns
- A new Pipeline containing all steps from both pipelines.
◆ operator| [2/2]
template<typename... Steps>
template<typename... SuffixSteps>
| auto operator| |
( |
Pipeline< Steps > const & | prefix, |
|
|
Pipeline< SuffixSteps... > | suffix ) |
|
friend |
Appends the right-hand-side pipeline to the end of the left-hand-side pipeline.
- Template Parameters
-
| SuffixSteps | The steps of the appended pipeline. |
- Returns
- A new Pipeline containing all steps from both pipelines.
The documentation for this class was generated from the following file: