Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/boost/python/object/enum_base.hpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // Copyright David Abrahams 2002.
0002 // Distributed under the Boost Software License, Version 1.0. (See
0003 // accompanying file LICENSE_1_0.txt or copy at
0004 // http://www.boost.org/LICENSE_1_0.txt)
0005 #ifndef ENUM_BASE_DWA200298_HPP
0006 # define ENUM_BASE_DWA200298_HPP
0007 
0008 # include <boost/python/object_core.hpp>
0009 # include <boost/python/type_id.hpp>
0010 # include <boost/python/converter/to_python_function_type.hpp>
0011 # include <boost/python/converter/convertible_function.hpp>
0012 # include <boost/python/converter/constructor_function.hpp>
0013 
0014 namespace boost { namespace python { namespace objects { 
0015 
0016 struct BOOST_PYTHON_DECL enum_base : python::api::object
0017 {
0018  protected:
0019     enum_base(
0020         char const* name
0021         , converter::to_python_function_t
0022         , converter::convertible_function
0023         , converter::constructor_function
0024         , type_info
0025         , const char *doc = 0
0026         );
0027 
0028     void add_value(char const* name, long value);
0029     void export_values();
0030     
0031     static PyObject* to_python(PyTypeObject* type, long x);
0032 };
0033 
0034 }}} // namespace boost::python::object
0035 
0036 #endif // ENUM_BASE_DWA200298_HPP