Library: Redis
Package: Redis
Header: Poco/Redis/Array.h
Description
Represents a Redis Array. An Array can contain Integers, Strings, Bulk Strings, Errors and other Arrays. It can also contain a Null value.
Inheritance
Known Derived Classes: Command
Member Summary
Member Functions: add, addRedisType, addSimpleString, begin, clear, end, get, getType, isNull, makeNull, operator <<, operator =, size, toString
Types Aliases
const_iterator
using const_iterator = std::vector < RedisType::Ptr >::const_iterator;
Constructors
Array
Array();
Creates an Array. As long as there are no elements added, the array will contain a Null value.
Array
Creates an Array by copying another one.
Destructor
~Array
virtual ~Array();
Destroys the Array.
Member Functions
add
Array & add();
Adds an Null BulkString.
add
template < typename T > Array & add(
const T & arg
);
Adds an element to the array.
Note: the specialization for std::string will add a BulkString! If you really need a simple string, call addSimpleString.
add
Array & add(
const char * s
);
Special implementation for const char*.
Note: the specialization creates a BulkString. If you need a simple string, call addSimpleString.
add
Array & add(
const std::vector < std::string > & strings
);
Special implementation for a vector with strings. All strings will be added as a BulkString.
addRedisType
Array & addRedisType(
RedisType::Ptr value
);
Adds a Redis element.
addSimpleString
Array & addSimpleString(
const std::string & value
);
Adds a simple string (can't contain newline characters!).
begin
const_iterator begin() const;
Returns an iterator to the start of the array.
Note: this can throw a NullValueException when this is a Null array.
clear
void clear();
Removes all elements from the array.
end
const_iterator end() const;
Returns an iterator to the end of the array.
Note: this can throw a NullValueException when this is a Null array.
get
template < typename T > T get(
size_t pos
) const;
Returns the element on the given position and tries to convert to the template type. A Poco::BadCastException will be thrown when the the conversion fails. An Poco::InvalidArgumentException will be thrown when the index is out of range. When the array is a Null array a Poco::NullValueException is thrown.
getType
int getType(
size_t pos
) const;
Returns the type of the element. This can throw a Poco::NullValueException when this array is a Null array. An Poco::InvalidArgumentException will be thrown when the index is out of range.
isNull
bool isNull() const;
Returns true when this is a Null array.
makeNull
void makeNull();
Turns the array into a Null array. When the array already has some elements, the array will be cleared.
operator <<
template < typename T > Array & operator << (
const T & arg
);
Adds the argument to the array.
Note: a std::string will be added as a BulkString because this is commonly used for representing strings in Redis. If you really need a simple string, use addSimpleString().
operator <<
Array & operator << (
const char * s
);
Special implementation for const char*.
Note: the specialization creates a BulkString. If you need a simple string, call addSimpleString().
operator <<
Array & operator << (
const std::vector < std::string > & strings
);
Special implementation for a vector with strings. All strings will be added as a BulkString.
operator =
Array & operator = (
const Array & param508
) = default;
operator =
Array & operator = (
Array && param509
) = default;
size
size_t size() const;
Returns the size of the array.
Note: this can throw a NullValueException when this is a Null array.
toString
std::string toString() const;
Returns the String representation as specified in the Redis Protocol specification.