Extract
Extract navigation Query AST values from mold when blocks.
When blocks such as when { $_ ⪪⪪ <item> } build navigation operators at
runtime with $_ as the subject. A sentinel NavQueryTopic
stands in for $_ during extraction so the query can be stored on the mold
for specificity scoring and matching.
class Qwiratry::Query::Extract
class Qwiratry::Query::Extract
Defines Qwiratry::Query::Extract.
Return the shared Extract service instance.
method instance
method instance(--> Qwiratry::Query::Extract)
Documents method instance.
Run C<$when-block> with L<NavQueryTopic> as C<$_> and return a query
operator when the block body is a pure query expression.
method from-when-block
method from-when-block(Block $when-block --> Mu)
Documents method from-when-block.
$when-block
The $when-block parameter.
Return True when C<$when-block> always evaluates to the same query operator
shape (varying only in the C<$_> subject).
method is-pure-query-when
method is-pure-query-when(Block $when-block --> Bool)
Documents method is-pure-query-when.
$when-block
The $when-block parameter.
Split a mold C<when> blockoid AST into navigation query and predicate parts.
method split-from-blockoid
method split-from-blockoid(Mu $blockoid-cap --> Hash)
Documents method split-from-blockoid.
$blockoid-cap
The $blockoid-cap parameter.