Static Public Member Functions | |
| static bool | base64_decode (std::string const &input, std::string &output) |
| static bool | base64_encode (std::string const &input, std::string &output) |
| static std::string | url_decode (const std::string &str) |
| escapes URL-encoded strings (a20value+with20spaces) | |
| static std::string | url_encode (const std::string &str) |
| encodes strings so that they are safe for URLs (with20spaces) | |
| static std::string | xml_encode (const std::string &str) |
| TODO: escapes XML/HTML-encoded strings (1 < 2). | |
| static void | float_from_bytes (long double &value, const unsigned char *ptr, size_t num_exp_bits, size_t num_fraction_bits) |
| static void | float_to_bytes (long double value, unsigned char *ptr, size_t num_exp_bits, size_t num_fraction_bits) |
| static boost::uint8_t | to_uint8 (unsigned char byte) |
| convert sequence of one byte to 8-bit unsigned integer | |
| static boost::int8_t | to_int8 (unsigned char byte) |
| convert sequence of one byte to 8-bit signed integer | |
| static boost::uint8_t | to_uint8 (char byte) |
| convert sequence of one byte to 8-bit unsigned integer | |
| static boost::int8_t | to_int8 (char byte) |
| convert sequence of one byte to 8-bit signed integer | |
| static boost::uint16_t | to_uint16 (unsigned char high, unsigned char low) |
| convert sequence of two bytes to 16-bit unsigned integer | |
| static boost::int16_t | to_int16 (unsigned char high, unsigned char low) |
| convert sequence of two bytes to 16-bit signed integer | |
| static boost::uint32_t | to_uint24 (unsigned char high, unsigned char mid, unsigned char low) |
| convert sequence of three bytes to 24-bit unsigned integer | |
| static boost::int32_t | to_int24 (unsigned char high, unsigned char mid, unsigned char low) |
| convert sequence of three bytes to 24-bit signed integer | |
| static boost::uint32_t | to_uint32 (unsigned char high, unsigned char mid1, unsigned char mid2, unsigned char low) |
| convert sequence of four bytes to 32-bit unsigned integer | |
| static boost::int32_t | to_int32 (unsigned char high, unsigned char mid1, unsigned char mid2, unsigned char low) |
| convert sequence of four bytes to 32-bit signed integer | |
| static boost::uint64_t | to_uint64 (unsigned char high, unsigned char mid1, unsigned char mid2, unsigned char mid3, unsigned char mid4, unsigned char mid5, unsigned char mid6, unsigned char low) |
| convert sequence of eight bytes to 64-bit unsigned integer | |
| static boost::int64_t | to_int64 (unsigned char high, unsigned char mid1, unsigned char mid2, unsigned char mid3, unsigned char mid4, unsigned char mid5, unsigned char mid6, unsigned char low) |
| convert sequence of eight bytes to 64-bit signed integer | |
| template<typename T1 , typename T2 > | |
| static boost::uint16_t | to_uint16 (T1 high, T2 low) |
| convert sequence of two bytes to 16-bit unsigned integer | |
| template<typename T1 , typename T2 > | |
| static boost::int16_t | to_int16 (T1 high, T2 low) |
| convert sequence of two bytes to 16-bit signed integer | |
| template<typename T1 , typename T2 , typename T3 > | |
| static boost::uint32_t | to_uint24 (T1 high, T2 mid, T3 low) |
| convert sequence of three bytes to 24-bit unsigned integer | |
| template<typename T1 , typename T2 , typename T3 > | |
| static boost::int32_t | to_int24 (T1 high, T2 mid, T3 low) |
| convert sequence of three bytes to 24-bit signed integer | |
| template<typename T1 , typename T2 , typename T3 , typename T4 > | |
| static boost::uint32_t | to_uint32 (T1 high, T2 mid1, T3 mid2, T4 low) |
| convert sequence of four bytes to 32-bit unsigned integer | |
| template<typename T1 , typename T2 , typename T3 , typename T4 > | |
| static boost::int32_t | to_int32 (T1 high, T2 mid1, T3 mid2, T4 low) |
| convert sequence of four bytes to 32-bit signed integer | |
| template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > | |
| static boost::uint64_t | to_uint64 (T1 high, T2 mid1, T3 mid2, T4 mid3, T5 mid4, T6 mid5, T7 mid6, T8 low) |
| convert sequence of eight bytes to 64-bit unsigned integer | |
| template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > | |
| static boost::int64_t | to_int64 (T1 high, T2 mid1, T3 mid2, T4 mid3, T5 mid4, T6 mid5, T7 mid6, T8 low) |
| convert sequence of eight bytes to 64-bit signed integer | |
| template<typename Byte > | |
| static boost::uint8_t | to_uint8 (const Byte *buf) |
| convert byte pointer into an 8-bit unsigned integer | |
| template<typename Byte > | |
| static boost::int8_t | to_int8 (const Byte *buf) |
| convert byte pointer into an 8-bit signed integer | |
| template<typename Byte > | |
| static boost::uint16_t | to_uint16 (const Byte *buf) |
| convert sequence of two bytes to 16-bit unsigned integer | |
| template<typename Byte > | |
| static boost::int16_t | to_int16 (const Byte *buf) |
| convert sequence of two bytes to 16-bit signed integer | |
| template<typename Byte > | |
| static boost::uint32_t | to_uint24 (const Byte *buf) |
| convert sequence of three bytes to 24-bit unsigned integer | |
| template<typename Byte > | |
| static boost::int32_t | to_int24 (const Byte *buf) |
| convert sequence of three bytes to 24-bit signed integer | |
| template<typename Byte > | |
| static boost::uint32_t | to_uint32 (const Byte *buf) |
| convert sequence of four bytes to 32-bit unsigned integer | |
| template<typename Byte > | |
| static boost::int32_t | to_int32 (const Byte *buf) |
| convert sequence of four bytes to 32-bit signed integer | |
| template<typename Byte > | |
| static boost::uint64_t | to_uint64 (const Byte *buf) |
| convert sequence of eight bytes to 64-bit unsigned integer | |
| template<typename Byte > | |
| static boost::int64_t | to_int64 (const Byte *buf) |
| convert sequence of eight bytes to 64-bit signed integer | |
| template<typename Byte > | |
| static void | from_uint8 (Byte *buf, const boost::uint8_t n) |
| convert 8-bit unsigned integer into sequence of one byte | |
| template<typename Byte > | |
| static void | from_int8 (Byte *buf, const boost::int8_t n) |
| convert 8-bit signed integer into sequence of one byte | |
| template<typename Byte > | |
| static void | from_uint16 (Byte *buf, const boost::uint16_t n) |
| convert 16-bit unsigned integer into sequence of two bytes | |
| template<typename Byte > | |
| static void | from_int16 (Byte *buf, const boost::int16_t n) |
| convert 16-bit signed integer into sequence of two bytes | |
| template<typename Byte > | |
| static void | from_uint24 (Byte *buf, const boost::uint32_t n) |
| convert 24-bit unsigned integer into sequence of three bytes | |
| template<typename Byte > | |
| static void | from_int24 (Byte *buf, const boost::int32_t n) |
| convert 24-bit signed integer into sequence of three bytes | |
| template<typename Byte > | |
| static void | from_uint32 (Byte *buf, const boost::uint32_t n) |
| convert 32-bit unsigned integer into sequence of four bytes | |
| template<typename Byte > | |
| static void | from_int32 (Byte *buf, const boost::int32_t n) |
| convert 32-bit signed integer into sequence of four bytes | |
| template<typename Byte > | |
| static void | from_uint64 (Byte *buf, const boost::uint64_t n) |
| convert 64-bit unsigned integer into sequence of eight bytes | |
| template<typename Byte > | |
| static void | from_int64 (Byte *buf, const boost::int64_t n) |
| convert 64-bit signed integer into sequence of eight bytes | |
| template<typename Byte > | |
| static float | to_float (const Byte *ptr) |
| template<typename Byte > | |
| static double | to_double (const Byte *ptr) |
| template<typename Byte > | |
| static long double | to_long_double (const Byte *ptr) |
| template<typename Byte > | |
| static void | from_float (Byte *ptr, const float n) |
| template<typename Byte > | |
| static void | from_double (Byte *ptr, const double n) |
| template<typename Byte > | |
| static void | from_long_double (Byte *ptr, const long double n) |
Definition at line 19 of file algorithm.hpp.
| bool pion::algorithm::base64_decode | ( | std::string const & | input, | |
| std::string & | output | |||
| ) | [static] |
base64 decoding
| input | - base64 encoded string | |
| output | - decoded string ( may include non-text chars) |
Definition at line 24 of file algorithm.cpp.
Referenced by pion::http::basic_auth::parse_credentials().
| bool pion::algorithm::base64_encode | ( | std::string const & | input, | |
| std::string & | output | |||
| ) | [static] |
base64 encoding
| input | - arbitrary string ( may include non-text chars) | |
| output | - base64 encoded string |
Definition at line 104 of file algorithm.cpp.
Referenced by pion::http::cookie_auth::process_login().
| void pion::algorithm::float_from_bytes | ( | long double & | value, | |
| const unsigned char * | ptr, | |||
| size_t | num_exp_bits, | |||
| size_t | num_fraction_bits | |||
| ) | [static] |
convert sequence of bytes in IEEE 754 format into a native floating point data type reference: http://en.wikipedia.org/wiki/Single_precision_floating-point_format
Definition at line 309 of file algorithm.cpp.
| void pion::algorithm::float_to_bytes | ( | long double | value, | |
| unsigned char * | ptr, | |||
| size_t | num_exp_bits, | |||
| size_t | num_fraction_bits | |||
| ) | [static] |
convert native floating point type into a sequence of bytes in IEEE 754 format reference: http://en.wikipedia.org/wiki/Single_precision_floating-point_format
Definition at line 340 of file algorithm.cpp.
| static void pion::algorithm::from_double | ( | Byte * | ptr, | |
| const double | n | |||
| ) | [inline, static] |
convert double into sequence of eight bytes in "double precision" binary64 format http://en.wikipedia.org/wiki/Double_precision_floating-point_format
Definition at line 375 of file algorithm.hpp.
| static void pion::algorithm::from_float | ( | Byte * | ptr, | |
| const float | n | |||
| ) | [inline, static] |
convert float into sequence of four bytes in "single precision" binary32 format http://en.wikipedia.org/wiki/Single_precision_floating-point_format
Definition at line 368 of file algorithm.hpp.
| static void pion::algorithm::from_long_double | ( | Byte * | ptr, | |
| const long double | n | |||
| ) | [inline, static] |
convert long double into sequence of sixteen bytes in 128-bit "quadruple precision" format http://en.wikipedia.org/wiki/Quadruple_precision_floating-point_format
Definition at line 382 of file algorithm.hpp.
| static double pion::algorithm::to_double | ( | const Byte * | ptr | ) | [inline, static] |
convert sequence of eight bytes in 64-bit "double precision" binary64 format into a double http://en.wikipedia.org/wiki/Double_precision_floating-point_format
Definition at line 350 of file algorithm.hpp.
| static float pion::algorithm::to_float | ( | const Byte * | ptr | ) | [inline, static] |
convert sequence of four bytes in 32-bit "single precision" binary32 format into a float http://en.wikipedia.org/wiki/Single_precision_floating-point_format
Definition at line 341 of file algorithm.hpp.
| static long double pion::algorithm::to_long_double | ( | const Byte * | ptr | ) | [inline, static] |
convert sequence of sixteen bytes in 128-bit "quadruple precision" format into a long double http://en.wikipedia.org/wiki/Quadruple_precision_floating-point_format
Definition at line 359 of file algorithm.hpp.
| std::string pion::algorithm::xml_encode | ( | const std::string & | str | ) | [static] |
TODO: escapes XML/HTML-encoded strings (1 < 2).
encodes strings so that they are safe for XML/HTML (2 > 1)
Definition at line 225 of file algorithm.cpp.
Referenced by pion::http::server::handle_forbidden_request(), pion::http::server::handle_method_not_allowed(), pion::http::server::handle_not_found_request(), pion::http::server::handle_server_error(), and pion::plugins::FileService::operator()().
1.6.1