NAME
App::ElasticSearch::Utilities::QueryString::Plugin - Moo::Role for implementing QueryString Plugins
VERSION
version 8.3
ATTRIBUTES
name
Name of the plugin, used in debug reporting.
priority
Priority is an integer which determmines the order tokens are parsed in low->high order.
INTERFACE
handle_token()
The handle_token() routine receives a single token from the command line, often a single word and returns a hash reference specifying
The token expansion plugins can return undefined, which is basically a noop on the token. The plugin can return a hash reference, which marks that token as handled and no other plugins receive that token. The hash reference may contain:
query_string
This is the rewritten bits that will be reassembled in to the final query string.
condition
This is usually a hash reference representing the condition going into the bool query. For instance:
{ terms => { field => [qw(alice bob charlie)] } }
Or
{ prefix => { user_agent => 'Go ' } }
These conditions will wind up in the must or must_not section of the bool query depending on the state of the the invert flag.
invert
This is used by the bareword "not" to track whether the token invoked a flip from the must to the must_not state. After each token is processed, if it didn't set this flag, the flag is reset.
dangles
This is used for bare words like "not", "or", and "and" to denote that these terms cannot dangle from the beginning or end of the query_string. This allows the final pass of the query_string builder to strip these words to prevent syntax errors.
AUTHOR
Brad Lhotsky <brad@divisionbyzero.net>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2022 by Brad Lhotsky.
This is free software, licensed under:
The (three-clause) BSD License