varied#

lazy#

template<typename Act>
class varied<lazy<Act>> : public queryosity::dataflow::node, public queryosity::systematic::resolver<lazy<Act>>#

Variations of a lazy action.

A varied lazy action encapsulates independent nominal and variation instances of of a lazy action, which are implicitly propagated through all downstream actions that it participates in. In other words, a varied node behaves functionally identical to a nominal-only one.

Template Parameters:

Action – Action to be performed.

Public Functions

template<typename Col, typename V = Act, std::enable_if_t<queryosity::is_selection_v<V>, bool> = false>
auto filter(Col const &col) -> varied<lazy<selection::node>>#

Compound a cut to this selection. @Col (Varied) lazy input column type. @parma[in] col (Varied) lazy input column used as cut decision.

Returns:

Varied lazy selection.

template<typename Col, typename V = Act, std::enable_if_t<queryosity::is_selection_v<V>, bool> = false>
auto weight(Col const &col) -> varied<lazy<selection::node>>#

Compound a weight to this selection. @Col (Varied) lazy input column type. @parma[in] col (Varied) lazy input column used as cut decision.

Returns:

Varied lazy selection.

todo#

template<typename Helper>
class varied<todo<Helper>> : public queryosity::dataflow::node, private queryosity::systematic::resolver<todo<Helper>>#

Varied version of a todo item.

A todo varied item is functionally equivalent to a todo node with each method being propagated to independent todo nodes corresponding to nominal and systematic variations.

Public Functions

template<typename ...Nodes, typename V = Helper, std::enable_if_t<queryosity::query::is_fillable_v<queryosity::query::booked_t<V>>, bool> = false>
auto fill(Nodes const&... columns) -> varied#

Fill the query with input columns.

Parameters:

columns...[in] Input columns to fill the query with.

Returns:

A new todo query node with input columns filled.

template<typename Node, typename V = Helper, std::enable_if_t<queryosity::query::is_bookable_v<V>, bool> = false>
auto at(Node const &selection) -> varied<lazy<query::booked_t<V>>>#

Book the query at a selection.

Parameters:

selection[in] Lazy selection to book query at.

Returns:

Lazy query booked at selection.

template<typename ...Nodes, typename V = Helper, std::enable_if_t<queryosity::query::is_bookable_v<V>, bool> = false>
auto at(Nodes const&... selections) -> std::array<varied<lazy<query::booked_t<V>>>, sizeof...(Nodes)>#

Book the query at multiple selections.

Parameters:

selection[in] Lazy selection to book queries at.

Returns:

Delayed query containing booked lazy queries.