21 #ifndef BOOST_PYTHON_INDEXING_METHODS_HPP
22 #define BOOST_PYTHON_INDEXING_METHODS_HPP
24 #include <boost/config.hpp>
25 #include <boost/mpl/if.hpp>
27 namespace boost {
namespace python {
namespace indexing {
29 typedef unsigned long method_set_type;
32 method_len = 1UL << 0,
33 method_iter = 1UL << 1,
34 method_getitem = 1UL << 2,
35 method_getitem_slice = 1UL << 3,
36 method_index = 1UL << 4,
37 method_contains = 1UL << 5,
38 method_count = 1UL << 6,
39 method_has_key = 1UL << 7,
40 method_setitem = 1UL << 8,
41 method_setitem_slice = 1UL << 9,
42 method_delitem = 1UL << 10,
43 method_delitem_slice = 1UL << 11,
44 method_reverse = 1UL << 12,
45 method_append = 1UL << 13,
46 method_insert = 1UL << 14,
47 method_extend = 1UL << 15,
48 method_sort = 1UL << 16
56 = method_getitem_slice | method_setitem_slice | method_delitem_slice
61 = method_index | method_contains | method_count | method_has_key
66 = method_sort | method_reverse
71 = method_append | method_insert | method_extend
88 bool Cond, method_set_type TrueValue, method_set_type FalseValue = 0>
92 BOOST_STATIC_CONSTANT(method_set_type, value = TrueValue);
96 BOOST_STATIC_CONSTANT(method_set_type, value = FalseValue);
99 typedef typename mpl::if_c<Cond, true_type, false_type>::type
102 BOOST_STATIC_CONSTANT(method_set_type, value = result_type::value);
107 template<method_set_type Set, method_set_type Member>
110 BOOST_STATIC_CONSTANT (
bool, value = (
bool) (Set & Member));
116 #endif // BOOST_PYTHON_INDEXING_METHODS_HPP
Definition: methods.hpp:90
Definition: methods.hpp:95
Definition: python_CEGUI.h:9
Definition: methods.hpp:91
Definition: methods.hpp:108