Mercurial > cpython-lru_cache-weakref
annotate Tools/pybench/With.py @ 87690:66c1c9f32567 default tip
Add use_weakref option to functools.lru_cache
The use_weakref option makes lru_cache create weak references to the function
arguments when creating the cache key, which prevents them from staying in the
memory forever even after all other references to them are gone.
This is a proof of concept for http://bugs.python.org/issue19859
| author | Radomir Dopieralski <devel@sheep.art.pl> |
|---|---|
| date | Tue, 03 Dec 2013 16:02:48 +0100 |
| parents | 63741c7521aa |
| children |
| rev | line source |
|---|---|
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
1 from __future__ import with_statement |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
2 from pybench import Test |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
3 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
4 class WithFinally(Test): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
5 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
6 version = 2.0 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
7 operations = 20 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
8 rounds = 80000 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
9 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
10 class ContextManager(object): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
11 def __enter__(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
12 pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
13 def __exit__(self, exc, val, tb): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
14 pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
15 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
16 def test(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
17 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
18 cm = self.ContextManager() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
19 |
|
47103
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
20 for i in range(self.rounds): |
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
21 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
22 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
23 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
24 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
25 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
26 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
27 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
28 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
29 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
30 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
31 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
32 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
33 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
34 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
35 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
36 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
37 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
38 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
39 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
40 with cm: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
41 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
42 def calibrate(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
43 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
44 cm = self.ContextManager() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
45 |
|
47103
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
46 for i in range(self.rounds): |
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
47 pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
48 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
49 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
50 class TryFinally(Test): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
51 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
52 version = 2.0 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
53 operations = 20 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
54 rounds = 80000 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
55 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
56 class ContextManager(object): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
57 def __enter__(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
58 pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
59 def __exit__(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
60 # "Context manager" objects used just for their cleanup |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
61 # actions in finally blocks usually don't have parameters. |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
62 pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
63 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
64 def test(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
65 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
66 cm = self.ContextManager() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
67 |
|
47103
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
68 for i in range(self.rounds): |
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
69 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
70 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
71 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
72 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
73 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
74 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
75 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
76 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
77 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
78 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
79 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
80 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
81 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
82 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
83 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
84 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
85 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
86 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
87 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
88 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
89 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
90 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
91 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
92 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
93 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
94 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
95 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
96 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
97 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
98 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
99 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
100 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
101 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
102 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
103 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
104 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
105 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
106 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
107 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
108 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
109 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
110 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
111 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
112 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
113 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
114 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
115 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
116 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
117 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
118 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
119 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
120 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
121 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
122 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
123 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
124 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
125 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
126 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
127 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
128 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
129 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
130 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
131 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
132 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
133 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
134 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
135 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
136 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
137 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
138 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
139 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
140 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
141 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
142 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
143 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
144 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
145 cm.__enter__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
146 try: pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
147 finally: cm.__exit__() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
148 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
149 def calibrate(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
150 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
151 cm = self.ContextManager() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
152 |
|
47103
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
153 for i in range(self.rounds): |
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
154 pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
155 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
156 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
157 class WithRaiseExcept(Test): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
158 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
159 version = 2.0 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
160 operations = 2 + 3 + 3 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
161 rounds = 100000 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
162 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
163 class BlockExceptions(object): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
164 def __enter__(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
165 pass |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
166 def __exit__(self, exc, val, tb): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
167 return True |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
168 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
169 def test(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
170 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
171 error = ValueError |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
172 be = self.BlockExceptions() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
173 |
|
47103
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
174 for i in range(self.rounds): |
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
175 with be: raise error |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
176 with be: raise error |
|
47103
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
177 with be: raise error("something") |
|
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
178 with be: raise error("something") |
|
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
179 with be: raise error("something") |
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
180 with be: raise error("something") |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
181 with be: raise error("something") |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
182 with be: raise error("something") |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
183 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
184 def calibrate(self): |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
185 |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
186 error = ValueError |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
187 be = self.BlockExceptions() |
|
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
188 |
|
47103
63741c7521aa
More 2to3 fixes in the Tools directory. Fixes #2893.
Georg Brandl <georg@python.org>
parents:
45963
diff
changeset
|
189 for i in range(self.rounds): |
|
45963
29131892611c
#2435: missing file in pybench
Amaury Forgeot d'Arc <amauryfa@gmail.com>
parents:
diff
changeset
|
190 pass |
