FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
python/example/quickstart/extending.cpp at develop · boostorg/python · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
boostorg
/
python
Public
Notifications
You must be signed in to change notification settings
Fork
223
Star
537
Code
Issues
173
Pull requests
34
Actions
Projects
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
python
/
example
/
quickstart
/
extending.cpp
Copy path
More file actions
More file actions
Latest commit
History
History
History
41 lines (35 loc) · 1.13 KB
Breadcrumbs
python
/
example
/
quickstart
/
extending.cpp
Copy path
File metadata and controls
41 lines (35 loc) · 1.13 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//
Copyright Ralf W. Grosse-Kunstleve 2002-2004. 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)
#
include
<
boost/python/class.hpp
>
#
include
<
boost/python/module.hpp
>
#
include
<
boost/python/def.hpp
>
#
include
<
iostream
>
#
include
<
string
>
namespace
{
//
Avoid cluttering the global namespace.
//
A friendly class.
class
hello
{
public:
hello
(
const
std::string& country) {
this
->
country
= country; }
std::string
greet
()
const
{
return
"
Hello from
"
+ country; }
private:
std::string country;
};
//
A function taking a hello object as an argument.
std::string
invite
(
const
hello& w) {
return
w.
greet
() +
"
! Please come soon!
"
;
}
}
BOOST_PYTHON_MODULE
(extending)
{
using
namespace
boost
::python
;
class_<hello>(
"
hello
"
, init<std::string>())
//
Add a regular member function.
.
def
(
"
greet
"
, &hello::greet)
//
Add invite() as a member of hello!
.
def
(
"
invite
"
, invite)
;
//
Also add invite() as a regular function to the module.
def
(
"
invite
"
, invite);
}
Back
|
FazBrowse Home
|
New Git URL