/***
+ * @module rspamd_resolver
* This module allows to resolve DNS names from LUA code. All resolving is executed
* asynchronously. Here is an example of name resolution:
* @example
#include "lua_common.h"
#include "expression.h"
+/***
+ * @module rspamd_expression
+ * This module can be used to implement different logic expressions in lua using
+ * rspamd AST optimizer. There are some examples in individual methods definitions to help understanding of this module.
+ */
+
/***
* @function rspamd_expression.create(line, {parse_func, process_func}, pool)
* Create expression from the line using atom parsing routines and the specified memory pool
#include "utlist.h"
/***
+ * @module rspamd_http
* Rspamd HTTP module represents HTTP asynchronous client available from LUA code.
* This module hides all complexity: DNS resolving, sessions management, zero-copy
* text transfers and so on under the hood.
#include "lua_common.h"
/***
- * `rspamd_ip` is a helper module to simplify IP addresses manipulations.
* @module rspamd_ip
+ * `rspamd_ip` is a helper module to simplify IP addresses manipulations.
* @example
local print_octets = function(ip)
print('Normal order octets:')
#define REDIS_DEFAULT_TIMEOUT 1.0
/***
+ * @module rspamd_redis
* This module implements redis asynchronous client for rspamd LUA API.
* Here is an example of using of this module:
* @example
#include "message.h"
/***
+ * @module rspamd_trie
* Rspamd trie module provides the data structure suitable for searching of many
* patterns in arbitrary texts (or binary chunks). The algorithmic complexity of
* this algorithm is at most O(n + m + z), where `n` is the length of text, `m` is a length of pattern and `z` is a number of patterns in the text.
/***
+ * @module rspamd_upstream_list
* This module implements upstreams manipulation from LUA API. This functionality
* can be used for load balancing using different strategies including:
*