blob: 8f2a5243d8694daf7f321d2bc4abafa32e0861a8 [file] [log] [blame]
Wenzel Jakob57082212015-09-04 23:42:12 +02001#!/usr/bin/env python
2from __future__ import print_function
Wenzel Jakob38bd7112015-07-05 20:05:44 +02003import sys
4sys.path.append('.')
5
Jason Rhinelanderb3f3d792016-07-18 16:43:18 -04006from example import ExampleMandA
Wenzel Jakob38bd7112015-07-05 20:05:44 +02007
Jason Rhinelanderb3f3d792016-07-18 16:43:18 -04008instance1 = ExampleMandA()
9instance2 = ExampleMandA(32)
Wenzel Jakob38bd7112015-07-05 20:05:44 +020010instance1.add1(instance2)
11instance1.add2(instance2)
12instance1.add3(instance2)
13instance1.add4(instance2)
14instance1.add5(instance2)
15instance1.add6(32)
16instance1.add7(32)
17instance1.add8(32)
18instance1.add9(32)
19instance1.add10(32)
20
21print("Instance 1: " + str(instance1))
22print("Instance 2: " + str(instance2))
23
24print(instance1.self1())
25print(instance1.self2())
26print(instance1.self3())
27print(instance1.self4())
28print(instance1.self5())
29print(instance1.internal1())
30print(instance1.internal2())
31print(instance1.internal3())
32print(instance1.internal4())
33print(instance1.internal5())
34
35print("Instance 1, direct access = %i" % instance1.value)
36instance1.value = 100
37print("Instance 1: " + str(instance1))
Jason Rhinelander3f589372016-08-07 13:05:26 -040038
39from example import ConstructorStats
40
41cstats = ConstructorStats.get(ExampleMandA)
42print("Instances not destroyed:", cstats.alive())
43instance1 = instance2 = None
44print("Instances not destroyed:", cstats.alive())
45print("Constructor values:", cstats.values())
46print("Default constructions:", cstats.default_constructions)
47print("Copy constructions:", cstats.copy_constructions)
48print("Move constructions:", cstats.move_constructions >= 1)
49print("Copy assignments:", cstats.copy_assignments)
50print("Move assignments:", cstats.move_assignments)