example14.py 883 Bytes
Newer Older
Wenzel Jakob's avatar
Wenzel Jakob committed
1
2
3
4
5
6
from __future__ import print_function
import sys

sys.path.append('.')

from example import StringList, print_opaque_list
Wenzel Jakob's avatar
Wenzel Jakob committed
7
from example import ClassWithSTLVecProperty
8
9
from example import return_void_ptr, print_void_ptr
from example import return_null_str, print_null_str
10
from example import return_unique_ptr
Wenzel Jakob's avatar
Wenzel Jakob committed
11

Wenzel Jakob's avatar
Wenzel Jakob committed
12
13
#####

Wenzel Jakob's avatar
Wenzel Jakob committed
14
15
16
17
18
l = StringList()
l.push_back("Element 1")
l.push_back("Element 2")
print_opaque_list(l)
print("Back element is %s" % l.back())
Wenzel Jakob's avatar
Wenzel Jakob committed
19
20
for i, k in enumerate(l):
    print("%i/%i : %s" % (i + 1, len(l), k))
Wenzel Jakob's avatar
Wenzel Jakob committed
21
22
l.pop_back()
print_opaque_list(l)
23

Wenzel Jakob's avatar
Wenzel Jakob committed
24
25
26
27
28
29
30
31
32
33
#####
cvp = ClassWithSTLVecProperty()
print_opaque_list(cvp.stringList)

cvp.stringList = l
cvp.stringList.push_back("Element 3")
print_opaque_list(cvp.stringList)

#####

34
print_void_ptr(return_void_ptr())
35
36
37

print(return_null_str())
print_null_str(return_null_str())
38

Wenzel Jakob's avatar
Wenzel Jakob committed
39
40
#####

Wenzel Jakob's avatar
Wenzel Jakob committed
41
42
43
ptr = return_unique_ptr()
print(ptr)
print_opaque_list(ptr)