| 13 | |
| 14 | Choose between A, B and C. |
| 15 | |
| 16 | ||='''operator''' =||='''A''' =||='''B''' =||='''C''' =||='''standard keyword''' =||='''standard <functional>''' =||='''boost Proto''' =||='''boost Operators''' =|| |
| 17 | ||`+` ||can_call_addition ||has_plus ||has_plus ||0 ||plus ||plus ||0 || |
| 18 | ||`-` ||can_call_subtraction ||has_minus ||has_minus ||0 ||minus ||minus ||0 || |
| 19 | ||`*` ||can_call_multiplication ||has_multiplies ||has_multiplies ||0 ||multiplies ||multiplies ||0 || |
| 20 | ||`/` ||can_call_division ||has_divides ||has_divides ||0 ||divides ||divides ||0 || |
| 21 | ||`%` ||can_call_modulus ||has_modulus ||has_modulus ||0 ||modulus ||modulus ||0 || |
| 22 | ||`+=` ||can_call_addition_assignment ||has_plus_equal ||has_plus_assign ||0 ||0 ||plus_assign ||addable || |
| 23 | ||`-=` ||can_call_subtraction_assignment ||has_minus_equal ||has_minus_assign ||0 ||0 ||minus_assign ||substractable || |
| 24 | ||`*=` ||can_call_multiplication_assignment ||has_multiplies_equal ||has_multiplies_assign ||0 ||0 ||multiplies_assign ||multipliable || |
| 25 | ||`/=` ||can_call_division_assignment ||has_divides_equal ||has_divides_assign ||0 ||0 ||divides_assign ||dividable || |
| 26 | ||`%=` ||can_call_modulus_assignment ||has_modulus_equal ||has_modulus_assign ||0 ||0 ||modulus_assign ||modable || |
| 27 | ||`&` ||can_call_bitwise_and ||has_bit_and ||has_bit_and ||bitand ||bit_and ||bitwise_and ||0 || |
| 28 | ||`|` ||can_call_bitwise_or ||has_bit_or ||has_bit_or ||bitor ||bit_or ||bitwise_or ||0 || |
| 29 | ||`^` ||can_call_bitwise_xor ||has_bit_xor ||has_bit_xor ||xor ||bit_xor ||bitwise_xor ||0 || |
| 30 | ||`&=` ||can_call_bitwise_and_assignment ||has_bit_and_equal ||has_bit_and_assign ||and_eq ||0 ||bitwise_and_assign ||andable || |
| 31 | ||`|=` ||can_call_bitwise_or_assignment ||has_bit_or_equal ||has_bit_or_assign ||or_eq ||0 ||bitwise_or_assign ||orable || |
| 32 | ||`^=` ||can_call_bitwise_xor_assignment ||has_bit_xor_equal ||has_bit_xor_assign ||xor_eq ||0 ||bitwise_xor_assign ||xorable || |
| 33 | ||`<<` ||can_call_shift_left ||has_left_shift ||has_left_shift ||0 ||0 ||shift_left ||0 || |
| 34 | ||`>>` ||can_call_shift_right ||has_right_shift ||has_right_shift ||0 ||0 ||shift_right ||0 || |
| 35 | ||`<<=` ||can_call_shift_left_assignment ||has_left_shift_equal ||has_left_shift_assign ||0 ||0 ||shift_left_assign ||left_shiftable || |
| 36 | ||`>>=` ||can_call_shift_right_assignment ||has_right_shift_equal ||has_right_shift_assign ||0 ||0 ||shift_right_assign ||right_shiftable || |
| 37 | ||`==` ||can_call_equal ||has_equal_to ||has_equal_to ||0 ||equal_to ||equal_to ||equality_comparable || |
| 38 | ||`!=` ||can_call_not_equal ||has_not_equal_to ||has_not_equal_to ||not_eq ||not_equal_to ||not_equal_to ||0 || |
| 39 | ||`<` ||can_call_less ||has_less ||has_less ||0 ||less ||less ||less_than_comparable || |
| 40 | ||`<=` ||can_call_less_equal ||has_less_equal ||has_less_equal ||0 ||less_equal ||less_equal ||0 || |
| 41 | ||`>` ||can_call_greater ||has_greater ||has_greater ||0 ||greater ||greater ||0 || |
| 42 | ||`>=` ||can_call_greater_equal ||has_greater_equal ||has_greater_equal ||0 ||greater_equal ||greater_equal ||0 || |
| 43 | ||`&&` ||can_call_and ||has_logical_and ||has_logical_and ||and ||logical_and ||logical_and ||0 || |
| 44 | ||`||` ||can_call_or ||has_logical_or ||has_logical_or ||or ||logical_or ||logical_or ||0 || |
| 45 | ||`!` ||can_call_not ||has_logical_not ||has_logical_not ||not ||logical_not ||logical_not ||0 || |
| 46 | ||`+` ||can_call_unary_plus ||has_unary_plus ||has_unary_plus ||0 ||0 ||unary_plus ||0 || |
| 47 | ||`-` ||can_call_unary_minus ||has_unary_minus ||has_negate ||0 ||negate ||negate ||0 || |
| 48 | ||`~` ||can_call_complement ||has_complement ||has_complement ||compl ||0 ||complement ||0 || |
| 49 | ||`*` ||can_call_dereference ||has_dereference ||has_dereference ||0 ||0 ||dereference ||0 || |
| 50 | ||`++` ||can_call_pre_increment ||has_pre_increment ||has_pre_increment ||0 ||0 ||pre_inc ||incrementable || |
| 51 | ||`--` ||can_call_pre_decrement ||has_pre_decrement ||has_pre_decrement ||0 ||0 ||pre_dec ||decrementable || |
| 52 | ||`++` ||can_call_post_increment ||has_post_increment ||has_post_increment ||0 ||0 ||post_inc ||0 || |
| 53 | ||`--` ||can_call_post_decrement ||has_post_decrement ||has_post_decrement ||0 ||0 ||post_dec ||0 || |
| 54 | |
| 55 | |
| 56 | |