📄 class.hpp
字号:
// Copyright David Abrahams 2001.// Distributed under the Boost Software License, Version 1.0. (See// accompanying file LICENSE_1_0.txt or copy at// http://www.boost.org/LICENSE_1_0.txt)#ifndef CLASS_DWA20011214_HPP# define CLASS_DWA20011214_HPP# include <boost/python/detail/prefix.hpp># include <boost/utility.hpp># include <boost/python/object_core.hpp># include <boost/python/type_id.hpp># include <cstddef>namespace boost { namespace python {namespace objects { struct BOOST_PYTHON_DECL class_base : python::api::object{ // constructor class_base( char const* name // The name of the class , std::size_t num_types // A list of class_ids. The first is the type , type_info const*const types // this is wrapping. The rest are the types of // any bases. , char const* doc = 0 // Docstring, if any. ); // Implementation detail. Hiding this in the private section would // require use of template friend declarations. void enable_pickling_(bool getstate_manages_dict); protected: void add_property(char const* name, object const& fget); void add_property(char const* name, object const& fget, object const& fset); void add_static_property(char const* name, object const& fget); void add_static_property(char const* name, object const& fget, object const& fset); // Retrieve the underlying object void setattr(char const* name, object const&); // Set a special attribute in the class which tells Boost.Python // to allocate extra bytes for embedded C++ objects in Python // instances. void set_instance_size(std::size_t bytes); // Set an __init__ function which throws an appropriate exception // for abstract classes. void def_no_init(); // Effects: // setattr(self, staticmethod(getattr(self, method_name))) void make_method_static(const char *method_name);};}}} // namespace boost::python::objects#endif // CLASS_DWA20011214_HPP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -