mirror of https://github.com/swig/swig
56 lines
1.3 KiB
Python
56 lines
1.3 KiB
Python
from cpp11_move_only import *
|
|
|
|
# Output
|
|
Counter.reset_counts()
|
|
mo = MoveOnly.create()
|
|
del mo
|
|
Counter.check_counts(1, 0, 0, 2, 0, 3)
|
|
|
|
Counter.reset_counts()
|
|
mc = MovableCopyable.create()
|
|
del mc
|
|
Counter.check_counts(2, 1, 0, 0, 1, 3)
|
|
|
|
# Move semantics not used
|
|
Counter.reset_counts()
|
|
mc = MovableCopyable.createConst()
|
|
del mc
|
|
Counter.check_counts(2, 1, 1, 0, 0, 3)
|
|
|
|
# Input static method
|
|
Counter.reset_counts()
|
|
mc = MovableCopyable(222)
|
|
Counter.check_counts(1, 0, 0, 0, 0, 0)
|
|
MovableCopyable.take(mc)
|
|
Counter.check_counts(2, 0, 1, 1, 0, 2)
|
|
del mc
|
|
Counter.check_counts(2, 0, 1, 1, 0, 3)
|
|
|
|
# Input global function
|
|
Counter.reset_counts()
|
|
mc = MovableCopyable(333)
|
|
Counter.check_counts(1, 0, 0, 0, 0, 0)
|
|
global_take_movable_copyable(mc)
|
|
Counter.check_counts(2, 0, 1, 1, 0, 2)
|
|
del mc
|
|
Counter.check_counts(2, 0, 1, 1, 0, 3)
|
|
|
|
# Input instance method
|
|
Counter.reset_counts()
|
|
imt = InstanceMethodsTester()
|
|
mc = MovableCopyable(444)
|
|
Counter.check_counts(1, 0, 0, 0, 0, 0)
|
|
imt.instance_take_movable_copyable(mc)
|
|
Counter.check_counts(2, 0, 1, 1, 0, 2)
|
|
del mc
|
|
Counter.check_counts(2, 0, 1, 1, 0, 3)
|
|
|
|
# Input constructor
|
|
Counter.reset_counts()
|
|
mc = MovableCopyable(555)
|
|
Counter.check_counts(1, 0, 0, 0, 0, 0)
|
|
ct = ConstructorTester(mc)
|
|
Counter.check_counts(2, 0, 1, 1, 0, 2)
|
|
del mc
|
|
Counter.check_counts(2, 0, 1, 1, 0, 3)
|