#include "config.hpp"
Go to the source code of this file.
Namespaces | |
namespace | Arageli |
Defines | |
#define | ARAGELI_BASEFUNC_PREFIX_UNARY(NAME, OPER) |
#define | ARAGELI_BASEFUNC_BINARY(NAME, OPER) |
#define | ARAGELI_BASEFUNC_RIGHT_ASSIGN_NATIVE(NAME, OPER) |
#define | ARAGELI_BASEFUNC_RIGHT_ASSIGN_NOTNATIVE(NAME, OPER) |
#define | ARAGELI_BASEFUNC_LEFT_ASSIGN(NAME, OPER) |
#define | ARAGELI_BASEFUNC_UNARY_ASSIGN(NAME, OPER) |
Functions | |
template<typename T, typename Res> | |
Res & | Arageli::indirection (const T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::address (const T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::unary_plus (const T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::unary_minus (const T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::logical_not (const T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::bitwise_not (const T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::prefix_increment (T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::prefix_decrement (T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::postfix_increment (T &x, Res &res) |
template<typename T, typename Res> | |
Res & | Arageli::postfix_decrement (T &x, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::plus (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::minus (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::multiplies (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::divides (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::modulus (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::logical_or (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::logical_and (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::equal_to (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::not_equal_to (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::greater (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::less (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::greater_equal (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::less_equal (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::bitwise_or (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::bitwise_and (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::bitwise_xor (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::shift_left (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2, typename Res> | |
Res & | Arageli::shift_right (const T1 &x, const T2 &y, Res &res) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_plus (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_plus (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_minus (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_minus (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_multiplies (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_multiplies (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_divides (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_divides (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_modulus (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_modulus (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_bitwise_or (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_bitwise_or (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_bitwise_and (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_bitwise_and (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_bitwise_xor (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_bitwise_xor (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_shift_left (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_shift_left (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_shift_right (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_shift_right (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_logical_or (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_logical_or (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_logical_and (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_logical_and (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_equal_to (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_equal_to (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_not_equal_to (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_not_equal_to (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_greater (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_greater (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_less (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_less (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_greater_equal (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_greater_equal (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::right_assign_less_equal (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::assign_less_equal (T1 &x, const T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_plus (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_minus (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_multiplies (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_divides (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_modulus (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_logical_or (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_logical_and (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_equal_to (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_not_equal_to (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_greater (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_less (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_greater_equal (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_less_equal (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_bitwise_or (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_bitwise_and (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_bitwise_xor (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_shift_left (const T1 &x, T2 &y) |
template<typename T1, typename T2> | |
T1 & | Arageli::left_assign_shift_right (const T1 &x, T2 &y) |
template<typename T> | |
T & | Arageli::assign_indirection (T &x) |
template<typename T> | |
T & | Arageli::assign_address (T &x) |
template<typename T> | |
T & | Arageli::assign_unary_plus (T &x) |
template<typename T> | |
T & | Arageli::assign_unary_minus (T &x) |
template<typename T> | |
T & | Arageli::assign_logical_not (T &x) |
template<typename T> | |
T & | Arageli::assign_bitwise_not (T &x) |
Definition in file basefuncs.hpp.
#define ARAGELI_BASEFUNC_BINARY | ( | NAME, | |||
OPER | ) |
Value:
template <typename T1, typename T2, typename Res> \ inline Res& NAME (const T1& x, const T2& y, Res& res) \ { return res = x OPER y; }
Definition at line 68 of file basefuncs.hpp.
#define ARAGELI_BASEFUNC_LEFT_ASSIGN | ( | NAME, | |||
OPER | ) |
Value:
template <typename T1, typename T2> \ inline T1& left_assign_##NAME (const T1& x, T2& y) \ { return y = x OPER y; }
Definition at line 136 of file basefuncs.hpp.
#define ARAGELI_BASEFUNC_PREFIX_UNARY | ( | NAME, | |||
OPER | ) |
Value:
template <typename T, typename Res> \ inline Res& NAME (const T& x, Res& res) \ { return res = OPER x; }
Definition at line 35 of file basefuncs.hpp.
#define ARAGELI_BASEFUNC_RIGHT_ASSIGN_NATIVE | ( | NAME, | |||
OPER | ) |
Value:
template <typename T1, typename T2> \ inline T1& right_assign_##NAME (T1& x, const T2& y) \ { return x OPER y; } \ \ template <typename T1, typename T2> \ inline T1& assign_##NAME (T1& x, const T2& y) \ { return left_assign(x, y); }
Definition at line 95 of file basefuncs.hpp.
#define ARAGELI_BASEFUNC_RIGHT_ASSIGN_NOTNATIVE | ( | NAME, | |||
OPER | ) |
Value:
template <typename T1, typename T2> \ inline T1& right_assign_##NAME (T1& x, const T2& y) \ { return x = x OPER y; } \ \ template <typename T1, typename T2> \ inline T1& assign_##NAME (T1& x, const T2& y) \ { return left_assign(x, y); }
Definition at line 117 of file basefuncs.hpp.
#define ARAGELI_BASEFUNC_UNARY_ASSIGN | ( | NAME, | |||
OPER | ) |
Value:
template <typename T> \ inline T& assign_##NAME (T& x) \ { return x = OPER x; }
Definition at line 160 of file basefuncs.hpp.