Boost.Redis: Reference

Boost.Redis 1.84.0 A redis client library

Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations | Functions | Variables
Reference

## Classes
struct | boost::redis::address
| Address of a Redis server. More...
class | boost::redis::any_adapter
| A type-erased reference to a response. More...
class | boost::redis::basic_connection< Executor >
| A SSL connection to the Redis server. More...
struct | boost::redis::resp3::basic_node< String >
| A node in the response tree. More...
struct | boost::redis::config
| Configure parameters used by the connection classes. More...
class | boost::redis::connection
| A basic_connection that type erases the executor. More...
struct | boost::redis::adapter::error
| Stores any resp3 error. More...
struct | boost::redis::adapter::ignore
| An adapter that ignores responses. More...
class | boost::redis::logger
| Logger class. More...
class | boost::redis::request
| Creates Redis requests. More...
struct | boost::redis::usage
| Connection usage information. More...

## Typedefs
using | boost::redis::generic_response = adapter::result<std::vector<resp3::node>>
| A generic response to a request.
using | boost::redis::ignore_t = std::decay_t<decltype(std::ignore)>
| Type used to ignore responses.
using | boost::redis::resp3::node = basic_node<std::string>
| A node in the response tree that owns its data.
using | boost::redis::resp3::node_view = basic_node<std::string_view>
| A node view in the response tree.
template<class... Ts>
using | boost::redis::response = std::tuple<adapter::result<Ts>...>
| Response with compile-time size.
template<class Value >
using | boost::redis::adapter::result = system::result<Value, error>
| Stores response to individual Redis commands.

## Enumerations
enum class | boost::redis::error
| Generic errors. More...
enum class | boost::redis::logger::level
| Syslog-like log levels. More...
enum class | boost::redis::operation
| Connection operations that can be cancelled. More...
enum class | boost::redis::resp3::type
| RESP3 data types. More...

## Functions
| boost::redis::logger::logger (level l=level::debug)
| Constructor.
void | boost::redis::logger::on_connect (system::error_code const &ec, asio::ip::tcp::endpoint const &ep)
| Called when the connect operation completes.
void | boost::redis::logger::on_hello (system::error_code const &ec, generic_response const &resp)
| Called when the `HELLO` request completes.
void | boost::redis::logger::on_read (system::error_code const &ec, std::size_t n)
| Called when the read operation completes.
void | boost::redis::logger::on_resolve (system::error_code const &ec, asio::ip::tcp::resolver::results_type const &res)
| Called when the resolve operation completes.
void | boost::redis::logger::on_ssl_handshake (system::error_code const &ec)
| Called when the ssl handshake operation completes.
void | boost::redis::logger::on_write (system::error_code const &ec, std::string const &payload)
| Called when the write operation completes.
auto | boost::redis::resp3::operator<< (std::ostream &os, type t) -> std::ostream &
| Writes the type to the output stream.
void | boost::redis::logger::set_prefix (std::string_view prefix)
| Sets a prefix to every log message.
auto | boost::redis::resp3::to_string (type t) noexcept -> char const *
| Converts the data type to a string.

## Variables
ignore_t | boost::redis::ignore
| Global ignore object.

## Detailed Description

This page contains the documentation of the Aedis high-level API.

## Class Documentation

## ◆ boost::redis::address

struct boost::redis::address

## ◆ boost::redis::config

struct boost::redis::config

## ◆ boost::redis::usage

struct boost::redis::usage

## Typedef Documentation

## ◆ generic_response

using boost::redis::generic_response = adapter::result<std::vector<resp3::node>>

A generic response to a request.

This response type can store any type of RESP3 data structure. It contains the pre-order view of the response tree.

Definition at line 35 of file response.hpp.

## ◆ ignore_t

using boost::redis::ignore_t = std::decay_t<decltype(std::ignore)>

Type used to ignore responses.

For example

response<ignore_t, std::string, ignore_t> resp;
boost::redis::response
std::tuple< adapter::result< Ts >... > response
Response with compile-time size.
Definition response.hpp:25

will ignore the first and third responses. RESP3 errors won't be ignore but will cause `async_exec` to complete with an error.

Definition at line 31 of file ignore.hpp.

## Enumeration Type Documentation

## ◆ error

enum class boost::redis::error
| strong

Generic errors.

Enumerator
invalid_data_type | Invalid RESP3 type.
not_a_number | Can't parse the string as a number.
exceeeds_max_nested_depth | The maximum depth of a nested response was exceeded.
unexpected_bool_value | Got non boolean value.
empty_field | Expected field value is empty.
expects_resp3_simple_type | Expects a simple RESP3 type but got an aggregate.
expects_resp3_aggregate | Expects aggregate.
expects_resp3_map | Expects a map but got other aggregate.
expects_resp3_set | Expects a set aggregate but got something else.
nested_aggregate_not_supported | Nested response not supported.
resp3_simple_error | Got RESP3 simple error.
resp3_blob_error | Got RESP3 blob_error.
incompatible_size | Aggregate container has incompatible size.
not_a_double | Not a double.
resp3_null | Got RESP3 null.
not_connected | There is no stablished connection.
resolve_timeout | Resolve timeout.
connect_timeout | Connect timeout.
pong_timeout | Connect timeout.
ssl_handshake_timeout | SSL handshake timeout.
sync_receive_push_failed | Can't receive push synchronously without blocking.
incompatible_node_depth | Incompatible node depth.
resp3_hello | Resp3 hello command error.

Definition at line 17 of file error.hpp.

## ◆ level

enum class boost::redis::logger::level
| strong

Syslog-like log levels.

Enumerator
disabled | Disabled.
emerg | Emergency.
alert | Alert.
crit | Critical.
err | Error.
warning | Warning.
notice | Notice.
info | Info.
debug | Debug.

Definition at line 32 of file logger.hpp.

## ◆ operation

enum class boost::redis::operation
| strong

Connection operations that can be cancelled.

The operations listed below can be passed to the `boost::redis::connection::cancel` member function.

Enumerator
resolve | Resolve operation.
connect | Connect operation.
ssl_handshake | SSL handshake operation.
exec | Refers to `connection::async_exec` operations.
run | Refers to `connection::async_run` operations.
receive | Refers to `connection::async_receive` operations.
reconnection | Cancels reconnection.
health_check | Health check operation.
all | Refers to all operations.

Definition at line 18 of file operation.hpp.

## ◆ type

enum class boost::redis::resp3::type
| strong

RESP3 data types.

The RESP3 specification can be found at https://github.com/redis/redis-specifications/blob/master/protocol/RESP3.md.

Enumerator
array | Aggregate.
push | Aaggregate.
set | Aggregate.
map | Aggregate.
attribute | Aggregate.
simple_string | Simple.
simple_error | Simple.
number | Simple.
doublean | Simple.
boolean | Simple.
big_number | Simple.
null | Simple.
blob_error | Simple.
verbatim_string | Simple.
blob_string | Simple.
streamed_string | Simple.
streamed_string_part | Simple.
invalid | Invalid.

Definition at line 22 of file type.hpp.

## Function Documentation

## ◆ logger()

boost::redis::logger::logger | ( | level | l = level::debug | ) |
| inline

Constructor.

Parameters

  l | Log level.

Definition at line 67 of file logger.hpp.

## ◆ on_connect()

void boost::redis::logger::on_connect | ( | system::error_code const & | ec,
|  | asio::ip::tcp::endpoint const & | ep )

Called when the connect operation completes.

Parameters

  ec | Error returned by the connect operation.
  ep | Endpoint to which the connection connected.

## ◆ on_hello()

void boost::redis::logger::on_hello | ( | system::error_code const & | ec,
|  | generic_response const & | resp )

Called when the `HELLO` request completes.

Parameters

  ec | Error code returned by the async_exec operation.
  resp | Response sent by the Redis server.

## ◆ on_read()

void boost::redis::logger::on_read | ( | system::error_code const & | ec,
|  | std::size_t | n )

Called when the read operation completes.

Parameters

  ec | Error code returned by the read operation.
  n | Number of bytes read.

## ◆ on_resolve()

void boost::redis::logger::on_resolve | ( | system::error_code const & | ec,
|  | asio::ip::tcp::resolver::results_type const & | res )

Called when the resolve operation completes.

Parameters

  ec | Error returned by the resolve operation.
  res | Resolve results.

## ◆ on_ssl_handshake()

void boost::redis::logger::on_ssl_handshake | ( | system::error_code const & | ec | ) |

Called when the ssl handshake operation completes.

Parameters

  ec | Error returned by the handshake operation.

## ◆ on_write()

void boost::redis::logger::on_write | ( | system::error_code const & | ec,
|  | std::string const & | payload )

Called when the write operation completes.

Parameters

  ec | Error code returned by the write operation.
  payload | The payload written to the socket.

## ◆ operator<<()

auto boost::redis::resp3::operator<< | ( | std::ostream & | os,
|  | type | t ) -> std::ostream &

Writes the type to the output stream.

Parameters

  os | Output stream.
  t | RESP3 type.

## ◆ set_prefix()

void boost::redis::logger::set_prefix | ( | std::string_view | prefix | ) |
| inline

Sets a prefix to every log message.

Parameters

  prefix | The prefix.

Definition at line 123 of file logger.hpp.

## ◆ to_string()

auto boost::redis::resp3::to_string | ( | type | t | ) | -> char const *
| noexcept

Converts the data type to a string.

Parameters

  t | RESP3 type.

## Variable Documentation

## ◆ ignore

ignore_t boost::redis::ignore
| extern

Global ignore object.

Can be used to ignore responses to a request

conn->async_exec(req, ignore, ...);
boost::redis::ignore
ignore_t ignore
Global ignore object.

RESP3 errors won't be ignore but will cause `async_exec` to complete with an error.