NAME App::ENumberUtils - Utilities related to E Numbers (European Union Food Additive codes) VERSION This document describes version 20230301.0.2 of App::ENumberUtils (from Perl distribution App-ENumberUtils), released on 2023-03-01. DESCRIPTION This distribution contains the following CLIs: 1. list-enumber-ranges 2. list-enumbers FUNCTIONS list_enumber_ranges Usage: list_enumber_ranges(%args) -> [$status_code, $reason, $payload, \%result_meta] List E Number ranges. This function is not exported by default, but exportable. Arguments ('*' denotes required arguments): * description => *str* Only return records where the 'description' field equals specified value. * description.contains => *str* Only return records where the 'description' field contains specified text. * description.in => *array[str]* Only return records where the 'description' field is in the specified values. * description.is => *str* Only return records where the 'description' field equals specified value. * description.isnt => *str* Only return records where the 'description' field does not equal specified value. * description.matches => *str* Only return records where the 'description' field matches specified regular expression pattern. * description.max => *str* Only return records where the 'description' field is less than or equal to specified value. * description.min => *str* Only return records where the 'description' field is greater than or equal to specified value. * description.not_contains => *str* Only return records where the 'description' field does not contain specified text. * description.not_in => *array[str]* Only return records where the 'description' field is not in the specified values. * description.not_matches => *str* Only return records where the 'description' field does not match specified regular expression. * description.xmax => *str* Only return records where the 'description' field is less than specified value. * description.xmin => *str* Only return records where the 'description' field is greater than specified value. * detail => *bool* (default: 0) Return array of full records instead of just ID fields. By default, only the key (ID) field is returned per result entry. * exclude_fields => *array[str]* Select fields to return. * fields => *array[str]* Select fields to return. * queries => *array[str]* Search. This will search all searchable fields with one or more specified queries. Each query can be in the form of "-FOO" (dash prefix notation) to require that the fields do not contain specified string, or "/FOO/" to use regular expression. All queries must match if the "query_boolean" option is set to "and"; only one query should match if the "query_boolean" option is set to "or". * query_boolean => *str* (default: "and") Whether records must match all search queries ('and') or just one ('or'). If set to "and", all queries must match; if set to "or", only one query should match. See the "queries" option for more details on searching. * random => *bool* (default: 0) Return records in random order. * range => *str* Only return records where the 'range' field equals specified value. * range.contains => *str* Only return records where the 'range' field contains specified text. * range.in => *array[str]* Only return records where the 'range' field is in the specified values. * range.is => *str* Only return records where the 'range' field equals specified value. * range.isnt => *str* Only return records where the 'range' field does not equal specified value. * range.matches => *str* Only return records where the 'range' field matches specified regular expression pattern. * range.max => *str* Only return records where the 'range' field is less than or equal to specified value. * range.min => *str* Only return records where the 'range' field is greater than or equal to specified value. * range.not_contains => *str* Only return records where the 'range' field does not contain specified text. * range.not_in => *array[str]* Only return records where the 'range' field is not in the specified values. * range.not_matches => *str* Only return records where the 'range' field does not match specified regular expression. * range.xmax => *str* Only return records where the 'range' field is less than specified value. * range.xmin => *str* Only return records where the 'range' field is greater than specified value. * result_limit => *int* Only return a certain number of records. * result_start => *int* (default: 1) Only return starting from the n'th record. * sort => *array[str]* Order records according to certain field(s). A list of field names separated by comma. Each field can be prefixed with '-' to specify descending order instead of the default ascending. * subrange => *str* Only return records where the 'subrange' field equals specified value. * subrange.contains => *str* Only return records where the 'subrange' field contains specified text. * subrange.in => *array[str]* Only return records where the 'subrange' field is in the specified values. * subrange.is => *str* Only return records where the 'subrange' field equals specified value. * subrange.isnt => *str* Only return records where the 'subrange' field does not equal specified value. * subrange.matches => *str* Only return records where the 'subrange' field matches specified regular expression pattern. * subrange.max => *str* Only return records where the 'subrange' field is less than or equal to specified value. * subrange.min => *str* Only return records where the 'subrange' field is greater than or equal to specified value. * subrange.not_contains => *str* Only return records where the 'subrange' field does not contain specified text. * subrange.not_in => *array[str]* Only return records where the 'subrange' field is not in the specified values. * subrange.not_matches => *str* Only return records where the 'subrange' field does not match specified regular expression. * subrange.xmax => *str* Only return records where the 'subrange' field is less than specified value. * subrange.xmin => *str* Only return records where the 'subrange' field is greater than specified value. * with_field_names => *bool* Return field names in each record (as hash/associative array). When enabled, function will return each record as hash/associative array (field name => value pairs). Otherwise, function will return each record as list/array (field value, field value, ...). Returns an enveloped result (an array). First element ($status_code) is an integer containing HTTP-like status code (200 means OK, 4xx caller error, 5xx function error). Second element ($reason) is a string containing error message, or something like "OK" if status is 200. Third element ($payload) is the actual result, but usually not present when enveloped result is an error response ($status_code is not 2xx). Fourth element (%result_meta) is called result metadata and is optional, a hash that contains extra information, much like how HTTP response headers provide additional metadata. Return value: (any) list_enumbers Usage: list_enumbers(%args) -> [$status_code, $reason, $payload, \%result_meta] List E Numbers. This function is not exported by default, but exportable. Arguments ('*' denotes required arguments): * code => *str* Only return records where the 'code' field equals specified value. * code.contains => *str* Only return records where the 'code' field contains specified text. * code.in => *array[str]* Only return records where the 'code' field is in the specified values. * code.is => *str* Only return records where the 'code' field equals specified value. * code.isnt => *str* Only return records where the 'code' field does not equal specified value. * code.matches => *str* Only return records where the 'code' field matches specified regular expression pattern. * code.max => *str* Only return records where the 'code' field is less than or equal to specified value. * code.min => *str* Only return records where the 'code' field is greater than or equal to specified value. * code.not_contains => *str* Only return records where the 'code' field does not contain specified text. * code.not_in => *array[str]* Only return records where the 'code' field is not in the specified values. * code.not_matches => *str* Only return records where the 'code' field does not match specified regular expression. * code.xmax => *str* Only return records where the 'code' field is less than specified value. * code.xmin => *str* Only return records where the 'code' field is greater than specified value. * color_index => *int* Only return records where the 'color_index' field equals specified value. * color_index.in => *array[int]* Only return records where the 'color_index' field is in the specified values. * color_index.is => *int* Only return records where the 'color_index' field equals specified value. * color_index.isnt => *int* Only return records where the 'color_index' field does not equal specified value. * color_index.max => *int* Only return records where the 'color_index' field is less than or equal to specified value. * color_index.min => *int* Only return records where the 'color_index' field is greater than or equal to specified value. * color_index.not_in => *array[int]* Only return records where the 'color_index' field is not in the specified values. * color_index.xmax => *int* Only return records where the 'color_index' field is less than specified value. * color_index.xmin => *int* Only return records where the 'color_index' field is greater than specified value. * colour => *str* Only return records where the 'colour' field equals specified value. * colour.contains => *str* Only return records where the 'colour' field contains specified text. * colour.in => *array[str]* Only return records where the 'colour' field is in the specified values. * colour.is => *str* Only return records where the 'colour' field equals specified value. * colour.isnt => *str* Only return records where the 'colour' field does not equal specified value. * colour.matches => *str* Only return records where the 'colour' field matches specified regular expression pattern. * colour.max => *str* Only return records where the 'colour' field is less than or equal to specified value. * colour.min => *str* Only return records where the 'colour' field is greater than or equal to specified value. * colour.not_contains => *str* Only return records where the 'colour' field does not contain specified text. * colour.not_in => *array[str]* Only return records where the 'colour' field is not in the specified values. * colour.not_matches => *str* Only return records where the 'colour' field does not match specified regular expression. * colour.xmax => *str* Only return records where the 'colour' field is less than specified value. * colour.xmin => *str* Only return records where the 'colour' field is greater than specified value. * detail => *bool* (default: 0) Return array of full records instead of just ID fields. By default, only the key (ID) field is returned per result entry. * exclude_fields => *array[str]* Select fields to return. * fields => *array[str]* Select fields to return. * names => *str* Only return records where the 'names' field equals specified value. * names.contains => *str* Only return records where the 'names' field contains specified text. * names.in => *array[str]* Only return records where the 'names' field is in the specified values. * names.is => *str* Only return records where the 'names' field equals specified value. * names.isnt => *str* Only return records where the 'names' field does not equal specified value. * names.matches => *str* Only return records where the 'names' field matches specified regular expression pattern. * names.max => *str* Only return records where the 'names' field is less than or equal to specified value. * names.min => *str* Only return records where the 'names' field is greater than or equal to specified value. * names.not_contains => *str* Only return records where the 'names' field does not contain specified text. * names.not_in => *array[str]* Only return records where the 'names' field is not in the specified values. * names.not_matches => *str* Only return records where the 'names' field does not match specified regular expression. * names.xmax => *str* Only return records where the 'names' field is less than specified value. * names.xmin => *str* Only return records where the 'names' field is greater than specified value. * purpose => *str* Only return records where the 'purpose' field equals specified value. * purpose.contains => *str* Only return records where the 'purpose' field contains specified text. * purpose.in => *array[str]* Only return records where the 'purpose' field is in the specified values. * purpose.is => *str* Only return records where the 'purpose' field equals specified value. * purpose.isnt => *str* Only return records where the 'purpose' field does not equal specified value. * purpose.matches => *str* Only return records where the 'purpose' field matches specified regular expression pattern. * purpose.max => *str* Only return records where the 'purpose' field is less than or equal to specified value. * purpose.min => *str* Only return records where the 'purpose' field is greater than or equal to specified value. * purpose.not_contains => *str* Only return records where the 'purpose' field does not contain specified text. * purpose.not_in => *array[str]* Only return records where the 'purpose' field is not in the specified values. * purpose.not_matches => *str* Only return records where the 'purpose' field does not match specified regular expression. * purpose.xmax => *str* Only return records where the 'purpose' field is less than specified value. * purpose.xmin => *str* Only return records where the 'purpose' field is greater than specified value. * queries => *array[str]* Search. This will search all searchable fields with one or more specified queries. Each query can be in the form of "-FOO" (dash prefix notation) to require that the fields do not contain specified string, or "/FOO/" to use regular expression. All queries must match if the "query_boolean" option is set to "and"; only one query should match if the "query_boolean" option is set to "or". * query_boolean => *str* (default: "and") Whether records must match all search queries ('and') or just one ('or'). If set to "and", all queries must match; if set to "or", only one query should match. See the "queries" option for more details on searching. * random => *bool* (default: 0) Return records in random order. * result_limit => *int* Only return a certain number of records. * result_start => *int* (default: 1) Only return starting from the n'th record. * sort => *array[str]* Order records according to certain field(s). A list of field names separated by comma. Each field can be prefixed with '-' to specify descending order instead of the default ascending. * status => *str* Only return records where the 'status' field equals specified value. * status.contains => *str* Only return records where the 'status' field contains specified text. * status.in => *array[str]* Only return records where the 'status' field is in the specified values. * status.is => *str* Only return records where the 'status' field equals specified value. * status.isnt => *str* Only return records where the 'status' field does not equal specified value. * status.matches => *str* Only return records where the 'status' field matches specified regular expression pattern. * status.max => *str* Only return records where the 'status' field is less than or equal to specified value. * status.min => *str* Only return records where the 'status' field is greater than or equal to specified value. * status.not_contains => *str* Only return records where the 'status' field does not contain specified text. * status.not_in => *array[str]* Only return records where the 'status' field is not in the specified values. * status.not_matches => *str* Only return records where the 'status' field does not match specified regular expression. * status.xmax => *str* Only return records where the 'status' field is less than specified value. * status.xmin => *str* Only return records where the 'status' field is greater than specified value. * with_field_names => *bool* Return field names in each record (as hash/associative array). When enabled, function will return each record as hash/associative array (field name => value pairs). Otherwise, function will return each record as list/array (field value, field value, ...). Returns an enveloped result (an array). First element ($status_code) is an integer containing HTTP-like status code (200 means OK, 4xx caller error, 5xx function error). Second element ($reason) is a string containing error message, or something like "OK" if status is 200. Third element ($payload) is the actual result, but usually not present when enveloped result is an error response ($status_code is not 2xx). Fourth element (%result_meta) is called result metadata and is optional, a hash that contains extra information, much like how HTTP response headers provide additional metadata. Return value: (any) HOMEPAGE Please visit the project's homepage at . SOURCE Source repository is at . SEE ALSO AUTHOR perlancar CONTRIBUTING To contribute, you can send patches by email/via RT, or send pull requests on GitHub. Most of the time, you don't need to build the distribution yourself. You can simply modify the code, then test via: % prove -l If you want to build the distribution (e.g. to try to install it locally on your system), you can install Dist::Zilla, Dist::Zilla::PluginBundle::Author::PERLANCAR, Pod::Weaver::PluginBundle::Author::PERLANCAR, and sometimes one or two other Dist::Zilla- and/or Pod::Weaver plugins. Any additional steps required beyond that are considered a bug and can be reported to me. COPYRIGHT AND LICENSE This software is copyright (c) 2023 by perlancar . This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. BUGS Please report any bugs or feature requests on the bugtracker website When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.