Cython 3.1.0a1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. Cython/Build/BuildExecutable.py +169 -0
  2. Cython/Build/Cache.py +199 -0
  3. Cython/Build/Cythonize.py +250 -0
  4. Cython/Build/Dependencies.py +1275 -0
  5. Cython/Build/Distutils.py +1 -0
  6. Cython/Build/Inline.py +342 -0
  7. Cython/Build/IpythonMagic.py +560 -0
  8. Cython/Build/Tests/TestCyCache.py +119 -0
  9. Cython/Build/Tests/TestCythonizeArgsParser.py +481 -0
  10. Cython/Build/Tests/TestDependencies.py +133 -0
  11. Cython/Build/Tests/TestInline.py +112 -0
  12. Cython/Build/Tests/TestIpythonMagic.py +287 -0
  13. Cython/Build/Tests/TestRecythonize.py +212 -0
  14. Cython/Build/Tests/TestStripLiterals.py +155 -0
  15. Cython/Build/Tests/__init__.py +1 -0
  16. Cython/Build/__init__.py +8 -0
  17. Cython/CodeWriter.py +811 -0
  18. Cython/Compiler/AnalysedTreeTransforms.py +97 -0
  19. Cython/Compiler/Annotate.py +326 -0
  20. Cython/Compiler/AutoDocTransforms.py +314 -0
  21. Cython/Compiler/Buffer.py +680 -0
  22. Cython/Compiler/Builtin.py +862 -0
  23. Cython/Compiler/CmdLine.py +243 -0
  24. Cython/Compiler/Code.pxd +145 -0
  25. Cython/Compiler/Code.py +3328 -0
  26. Cython/Compiler/CodeGeneration.py +33 -0
  27. Cython/Compiler/CythonScope.py +179 -0
  28. Cython/Compiler/Dataclass.py +868 -0
  29. Cython/Compiler/DebugFlags.py +21 -0
  30. Cython/Compiler/Errors.py +295 -0
  31. Cython/Compiler/ExprNodes.py +15051 -0
  32. Cython/Compiler/FlowControl.pxd +97 -0
  33. Cython/Compiler/FlowControl.py +1438 -0
  34. Cython/Compiler/FusedNode.py +998 -0
  35. Cython/Compiler/Future.py +16 -0
  36. Cython/Compiler/Interpreter.py +57 -0
  37. Cython/Compiler/Lexicon.py +340 -0
  38. Cython/Compiler/LineTable.py +114 -0
  39. Cython/Compiler/Main.py +779 -0
  40. Cython/Compiler/MatchCaseNodes.py +259 -0
  41. Cython/Compiler/MemoryView.py +860 -0
  42. Cython/Compiler/ModuleNode.py +4065 -0
  43. Cython/Compiler/Naming.py +369 -0
  44. Cython/Compiler/Nodes.py +10557 -0
  45. Cython/Compiler/Optimize.py +5269 -0
  46. Cython/Compiler/Options.py +828 -0
  47. Cython/Compiler/ParseTreeTransforms.pxd +78 -0
  48. Cython/Compiler/ParseTreeTransforms.py +4441 -0
  49. Cython/Compiler/Parsing.pxd +9 -0
  50. Cython/Compiler/Parsing.py +4797 -0
  51. Cython/Compiler/Pipeline.py +425 -0
  52. Cython/Compiler/PyrexTypes.py +5572 -0
  53. Cython/Compiler/Pythran.py +223 -0
  54. Cython/Compiler/Scanning.pxd +40 -0
  55. Cython/Compiler/Scanning.py +574 -0
  56. Cython/Compiler/StringEncoding.py +347 -0
  57. Cython/Compiler/Symtab.py +2998 -0
  58. Cython/Compiler/Tests/TestBuffer.py +105 -0
  59. Cython/Compiler/Tests/TestBuiltin.py +72 -0
  60. Cython/Compiler/Tests/TestCmdLine.py +573 -0
  61. Cython/Compiler/Tests/TestCode.py +86 -0
  62. Cython/Compiler/Tests/TestFlowControl.py +65 -0
  63. Cython/Compiler/Tests/TestGrammar.py +202 -0
  64. Cython/Compiler/Tests/TestMemView.py +71 -0
  65. Cython/Compiler/Tests/TestParseTreeTransforms.py +285 -0
  66. Cython/Compiler/Tests/TestScanning.py +134 -0
  67. Cython/Compiler/Tests/TestSignatureMatching.py +73 -0
  68. Cython/Compiler/Tests/TestStringEncoding.py +33 -0
  69. Cython/Compiler/Tests/TestTreeFragment.py +63 -0
  70. Cython/Compiler/Tests/TestTreePath.py +93 -0
  71. Cython/Compiler/Tests/TestTypes.py +75 -0
  72. Cython/Compiler/Tests/TestUtilityLoad.py +112 -0
  73. Cython/Compiler/Tests/TestVisitor.py +61 -0
  74. Cython/Compiler/Tests/Utils.py +36 -0
  75. Cython/Compiler/Tests/__init__.py +1 -0
  76. Cython/Compiler/TreeFragment.py +278 -0
  77. Cython/Compiler/TreePath.py +290 -0
  78. Cython/Compiler/TypeInference.py +584 -0
  79. Cython/Compiler/TypeSlots.py +1181 -0
  80. Cython/Compiler/UFuncs.py +311 -0
  81. Cython/Compiler/UtilNodes.py +387 -0
  82. Cython/Compiler/UtilityCode.py +274 -0
  83. Cython/Compiler/Version.py +8 -0
  84. Cython/Compiler/Visitor.pxd +53 -0
  85. Cython/Compiler/Visitor.py +861 -0
  86. Cython/Compiler/__init__.py +1 -0
  87. Cython/Coverage.py +443 -0
  88. Cython/Debugger/Cygdb.py +179 -0
  89. Cython/Debugger/DebugWriter.py +82 -0
  90. Cython/Debugger/Tests/TestLibCython.py +275 -0
  91. Cython/Debugger/Tests/__init__.py +1 -0
  92. Cython/Debugger/Tests/cfuncs.c +8 -0
  93. Cython/Debugger/Tests/codefile +49 -0
  94. Cython/Debugger/Tests/test_libcython_in_gdb.py +578 -0
  95. Cython/Debugger/Tests/test_libpython_in_gdb.py +90 -0
  96. Cython/Debugger/__init__.py +1 -0
  97. Cython/Debugger/libcython.py +1549 -0
  98. Cython/Debugger/libpython.py +2821 -0
  99. Cython/Debugging.py +20 -0
  100. Cython/Distutils/__init__.py +2 -0
  101. Cython/Distutils/build_ext.py +137 -0
  102. Cython/Distutils/extension.py +96 -0
  103. Cython/Distutils/old_build_ext.py +351 -0
  104. Cython/Includes/cpython/__init__.pxd +173 -0
  105. Cython/Includes/cpython/array.pxd +174 -0
  106. Cython/Includes/cpython/bool.pxd +37 -0
  107. Cython/Includes/cpython/buffer.pxd +112 -0
  108. Cython/Includes/cpython/bytearray.pxd +33 -0
  109. Cython/Includes/cpython/bytes.pxd +200 -0
  110. Cython/Includes/cpython/cellobject.pxd +35 -0
  111. Cython/Includes/cpython/ceval.pxd +8 -0
  112. Cython/Includes/cpython/codecs.pxd +121 -0
  113. Cython/Includes/cpython/complex.pxd +55 -0
  114. Cython/Includes/cpython/contextvars.pxd +141 -0
  115. Cython/Includes/cpython/conversion.pxd +36 -0
  116. Cython/Includes/cpython/datetime.pxd +384 -0
  117. Cython/Includes/cpython/descr.pxd +26 -0
  118. Cython/Includes/cpython/dict.pxd +187 -0
  119. Cython/Includes/cpython/exc.pxd +263 -0
  120. Cython/Includes/cpython/fileobject.pxd +57 -0
  121. Cython/Includes/cpython/float.pxd +47 -0
  122. Cython/Includes/cpython/function.pxd +65 -0
  123. Cython/Includes/cpython/genobject.pxd +25 -0
  124. Cython/Includes/cpython/getargs.pxd +12 -0
  125. Cython/Includes/cpython/instance.pxd +25 -0
  126. Cython/Includes/cpython/iterator.pxd +36 -0
  127. Cython/Includes/cpython/iterobject.pxd +24 -0
  128. Cython/Includes/cpython/list.pxd +92 -0
  129. Cython/Includes/cpython/long.pxd +149 -0
  130. Cython/Includes/cpython/longintrepr.pxd +19 -0
  131. Cython/Includes/cpython/mapping.pxd +63 -0
  132. Cython/Includes/cpython/marshal.pxd +66 -0
  133. Cython/Includes/cpython/mem.pxd +120 -0
  134. Cython/Includes/cpython/memoryview.pxd +50 -0
  135. Cython/Includes/cpython/method.pxd +49 -0
  136. Cython/Includes/cpython/module.pxd +208 -0
  137. Cython/Includes/cpython/number.pxd +258 -0
  138. Cython/Includes/cpython/object.pxd +433 -0
  139. Cython/Includes/cpython/pycapsule.pxd +143 -0
  140. Cython/Includes/cpython/pylifecycle.pxd +68 -0
  141. Cython/Includes/cpython/pyport.pxd +8 -0
  142. Cython/Includes/cpython/pystate.pxd +95 -0
  143. Cython/Includes/cpython/pythread.pxd +53 -0
  144. Cython/Includes/cpython/ref.pxd +67 -0
  145. Cython/Includes/cpython/sequence.pxd +134 -0
  146. Cython/Includes/cpython/set.pxd +119 -0
  147. Cython/Includes/cpython/slice.pxd +70 -0
  148. Cython/Includes/cpython/time.pxd +129 -0
  149. Cython/Includes/cpython/tuple.pxd +72 -0
  150. Cython/Includes/cpython/type.pxd +53 -0
  151. Cython/Includes/cpython/unicode.pxd +639 -0
  152. Cython/Includes/cpython/version.pxd +32 -0
  153. Cython/Includes/cpython/weakref.pxd +42 -0
  154. Cython/Includes/libc/__init__.pxd +1 -0
  155. Cython/Includes/libc/complex.pxd +35 -0
  156. Cython/Includes/libc/errno.pxd +127 -0
  157. Cython/Includes/libc/float.pxd +43 -0
  158. Cython/Includes/libc/limits.pxd +28 -0
  159. Cython/Includes/libc/locale.pxd +46 -0
  160. Cython/Includes/libc/math.pxd +209 -0
  161. Cython/Includes/libc/setjmp.pxd +10 -0
  162. Cython/Includes/libc/signal.pxd +64 -0
  163. Cython/Includes/libc/stddef.pxd +9 -0
  164. Cython/Includes/libc/stdint.pxd +105 -0
  165. Cython/Includes/libc/stdio.pxd +80 -0
  166. Cython/Includes/libc/stdlib.pxd +72 -0
  167. Cython/Includes/libc/string.pxd +50 -0
  168. Cython/Includes/libc/time.pxd +47 -0
  169. Cython/Includes/libcpp/__init__.pxd +4 -0
  170. Cython/Includes/libcpp/algorithm.pxd +320 -0
  171. Cython/Includes/libcpp/any.pxd +16 -0
  172. Cython/Includes/libcpp/atomic.pxd +59 -0
  173. Cython/Includes/libcpp/bit.pxd +29 -0
  174. Cython/Includes/libcpp/cast.pxd +12 -0
  175. Cython/Includes/libcpp/cmath.pxd +518 -0
  176. Cython/Includes/libcpp/complex.pxd +106 -0
  177. Cython/Includes/libcpp/deque.pxd +165 -0
  178. Cython/Includes/libcpp/execution.pxd +15 -0
  179. Cython/Includes/libcpp/forward_list.pxd +63 -0
  180. Cython/Includes/libcpp/functional.pxd +26 -0
  181. Cython/Includes/libcpp/iterator.pxd +34 -0
  182. Cython/Includes/libcpp/limits.pxd +61 -0
  183. Cython/Includes/libcpp/list.pxd +117 -0
  184. Cython/Includes/libcpp/map.pxd +252 -0
  185. Cython/Includes/libcpp/memory.pxd +115 -0
  186. Cython/Includes/libcpp/numbers.pxd +15 -0
  187. Cython/Includes/libcpp/numeric.pxd +131 -0
  188. Cython/Includes/libcpp/optional.pxd +34 -0
  189. Cython/Includes/libcpp/pair.pxd +1 -0
  190. Cython/Includes/libcpp/queue.pxd +25 -0
  191. Cython/Includes/libcpp/random.pxd +166 -0
  192. Cython/Includes/libcpp/set.pxd +228 -0
  193. Cython/Includes/libcpp/stack.pxd +11 -0
  194. Cython/Includes/libcpp/string.pxd +333 -0
  195. Cython/Includes/libcpp/typeindex.pxd +15 -0
  196. Cython/Includes/libcpp/typeinfo.pxd +10 -0
  197. Cython/Includes/libcpp/unordered_map.pxd +193 -0
  198. Cython/Includes/libcpp/unordered_set.pxd +152 -0
  199. Cython/Includes/libcpp/utility.pxd +30 -0
  200. Cython/Includes/libcpp/vector.pxd +167 -0
  201. Cython/Includes/openmp.pxd +50 -0
  202. Cython/Includes/posix/__init__.pxd +1 -0
  203. Cython/Includes/posix/dlfcn.pxd +14 -0
  204. Cython/Includes/posix/fcntl.pxd +86 -0
  205. Cython/Includes/posix/ioctl.pxd +4 -0
  206. Cython/Includes/posix/mman.pxd +101 -0
  207. Cython/Includes/posix/resource.pxd +57 -0
  208. Cython/Includes/posix/select.pxd +21 -0
  209. Cython/Includes/posix/signal.pxd +73 -0
  210. Cython/Includes/posix/stat.pxd +98 -0
  211. Cython/Includes/posix/stdio.pxd +37 -0
  212. Cython/Includes/posix/stdlib.pxd +29 -0
  213. Cython/Includes/posix/strings.pxd +9 -0
  214. Cython/Includes/posix/time.pxd +71 -0
  215. Cython/Includes/posix/types.pxd +30 -0
  216. Cython/Includes/posix/uio.pxd +26 -0
  217. Cython/Includes/posix/unistd.pxd +271 -0
  218. Cython/Includes/posix/wait.pxd +38 -0
  219. Cython/Plex/Actions.pxd +24 -0
  220. Cython/Plex/Actions.py +119 -0
  221. Cython/Plex/DFA.pxd +14 -0
  222. Cython/Plex/DFA.py +164 -0
  223. Cython/Plex/Errors.py +48 -0
  224. Cython/Plex/Lexicons.py +178 -0
  225. Cython/Plex/Machines.pxd +36 -0
  226. Cython/Plex/Machines.py +238 -0
  227. Cython/Plex/Regexps.py +539 -0
  228. Cython/Plex/Scanners.pxd +47 -0
  229. Cython/Plex/Scanners.py +360 -0
  230. Cython/Plex/Transitions.pxd +14 -0
  231. Cython/Plex/Transitions.py +239 -0
  232. Cython/Plex/__init__.py +34 -0
  233. Cython/Runtime/__init__.py +1 -0
  234. Cython/Runtime/refnanny.pyx +261 -0
  235. Cython/Shadow.py +656 -0
  236. Cython/Shadow.pyi +521 -0
  237. Cython/StringIOTree.py +170 -0
  238. Cython/Tempita/__init__.py +4 -0
  239. Cython/Tempita/_looper.py +154 -0
  240. Cython/Tempita/_tempita.py +1091 -0
  241. Cython/TestUtils.py +417 -0
  242. Cython/Tests/TestCodeWriter.py +128 -0
  243. Cython/Tests/TestCythonUtils.py +202 -0
  244. Cython/Tests/TestJediTyper.py +223 -0
  245. Cython/Tests/TestShadow.py +114 -0
  246. Cython/Tests/TestStringIOTree.py +67 -0
  247. Cython/Tests/TestTestUtils.py +90 -0
  248. Cython/Tests/__init__.py +1 -0
  249. Cython/Tests/xmlrunner.py +390 -0
  250. Cython/Utility/AsyncGen.c +1263 -0
  251. Cython/Utility/Buffer.c +875 -0
  252. Cython/Utility/Builtins.c +660 -0
  253. Cython/Utility/CConvert.pyx +134 -0
  254. Cython/Utility/CMath.c +95 -0
  255. Cython/Utility/CommonStructures.c +139 -0
  256. Cython/Utility/Complex.c +378 -0
  257. Cython/Utility/Coroutine.c +2413 -0
  258. Cython/Utility/CpdefEnums.pyx +108 -0
  259. Cython/Utility/CppConvert.pyx +279 -0
  260. Cython/Utility/CppSupport.cpp +133 -0
  261. Cython/Utility/CythonFunction.c +1851 -0
  262. Cython/Utility/Dataclasses.c +185 -0
  263. Cython/Utility/Dataclasses.py +112 -0
  264. Cython/Utility/Embed.c +125 -0
  265. Cython/Utility/Exceptions.c +1017 -0
  266. Cython/Utility/ExtensionTypes.c +797 -0
  267. Cython/Utility/FunctionArguments.c +573 -0
  268. Cython/Utility/ImportExport.c +912 -0
  269. Cython/Utility/MemoryView.pyx +1478 -0
  270. Cython/Utility/MemoryView_C.c +992 -0
  271. Cython/Utility/ModuleSetupCode.c +2501 -0
  272. Cython/Utility/NumpyImportArray.c +46 -0
  273. Cython/Utility/ObjectHandling.c +3054 -0
  274. Cython/Utility/Optimize.c +1533 -0
  275. Cython/Utility/Overflow.c +404 -0
  276. Cython/Utility/Printing.c +86 -0
  277. Cython/Utility/Profile.c +660 -0
  278. Cython/Utility/StringTools.c +1206 -0
  279. Cython/Utility/TestCyUtilityLoader.pyx +8 -0
  280. Cython/Utility/TestCythonScope.pyx +75 -0
  281. Cython/Utility/TestUtilityLoader.c +12 -0
  282. Cython/Utility/TypeConversion.c +1329 -0
  283. Cython/Utility/UFuncs.pyx +50 -0
  284. Cython/Utility/UFuncs_C.c +89 -0
  285. Cython/Utility/__init__.py +28 -0
  286. Cython/Utility/arrayarray.h +143 -0
  287. Cython/Utils.py +687 -0
  288. Cython/__init__.py +10 -0
  289. Cython/__init__.pyi +7 -0
  290. Cython/py.typed +0 -0
  291. Cython-3.1.0a1.dist-info/COPYING.txt +19 -0
  292. Cython-3.1.0a1.dist-info/LICENSE.txt +176 -0
  293. Cython-3.1.0a1.dist-info/METADATA +67 -0
  294. Cython-3.1.0a1.dist-info/RECORD +301 -0
  295. Cython-3.1.0a1.dist-info/WHEEL +5 -0
  296. Cython-3.1.0a1.dist-info/entry_points.txt +4 -0
  297. Cython-3.1.0a1.dist-info/top_level.txt +3 -0
  298. cython.py +29 -0
  299. pyximport/__init__.py +4 -0
  300. pyximport/pyxbuild.py +160 -0
  301. pyximport/pyximport.py +482 -0
@@ -0,0 +1,165 @@
1
+ cdef extern from "<deque>" namespace "std" nogil:
2
+ cdef cppclass deque[T,ALLOCATOR=*]:
3
+ ctypedef T value_type
4
+ ctypedef ALLOCATOR allocator_type
5
+
6
+ # these should really be allocator_type.size_type and
7
+ # allocator_type.difference_type to be true to the C++ definition
8
+ # but cython doesn't support deferred access on template arguments
9
+ ctypedef size_t size_type
10
+ ctypedef ptrdiff_t difference_type
11
+
12
+ cppclass const_iterator
13
+ cppclass iterator:
14
+ iterator() except +
15
+ iterator(iterator&) except +
16
+ value_type& operator*()
17
+ iterator operator++()
18
+ iterator operator--()
19
+ iterator operator++(int)
20
+ iterator operator--(int)
21
+ iterator operator+(size_type)
22
+ iterator operator-(size_type)
23
+ difference_type operator-(iterator)
24
+ difference_type operator-(const_iterator)
25
+ bint operator==(iterator)
26
+ bint operator==(const_iterator)
27
+ bint operator!=(iterator)
28
+ bint operator!=(const_iterator)
29
+ bint operator<(iterator)
30
+ bint operator<(const_iterator)
31
+ bint operator>(iterator)
32
+ bint operator>(const_iterator)
33
+ bint operator<=(iterator)
34
+ bint operator<=(const_iterator)
35
+ bint operator>=(iterator)
36
+ bint operator>=(const_iterator)
37
+ cppclass const_iterator:
38
+ const_iterator() except +
39
+ const_iterator(iterator&) except +
40
+ const_iterator(const_iterator&) except +
41
+ operator=(iterator&) except +
42
+ const value_type& operator*()
43
+ const_iterator operator++()
44
+ const_iterator operator--()
45
+ const_iterator operator++(int)
46
+ const_iterator operator--(int)
47
+ const_iterator operator+(size_type)
48
+ const_iterator operator-(size_type)
49
+ difference_type operator-(iterator)
50
+ difference_type operator-(const_iterator)
51
+ bint operator==(iterator)
52
+ bint operator==(const_iterator)
53
+ bint operator!=(iterator)
54
+ bint operator!=(const_iterator)
55
+ bint operator<(iterator)
56
+ bint operator<(const_iterator)
57
+ bint operator>(iterator)
58
+ bint operator>(const_iterator)
59
+ bint operator<=(iterator)
60
+ bint operator<=(const_iterator)
61
+ bint operator>=(iterator)
62
+ bint operator>=(const_iterator)
63
+
64
+ cppclass const_reverse_iterator
65
+ cppclass reverse_iterator:
66
+ reverse_iterator() except +
67
+ reverse_iterator(reverse_iterator&) except +
68
+ value_type& operator*()
69
+ reverse_iterator operator++()
70
+ reverse_iterator operator--()
71
+ reverse_iterator operator++(int)
72
+ reverse_iterator operator--(int)
73
+ reverse_iterator operator+(size_type)
74
+ reverse_iterator operator-(size_type)
75
+ difference_type operator-(iterator)
76
+ difference_type operator-(const_iterator)
77
+ bint operator==(reverse_iterator)
78
+ bint operator==(const_reverse_iterator)
79
+ bint operator!=(reverse_iterator)
80
+ bint operator!=(const_reverse_iterator)
81
+ bint operator<(reverse_iterator)
82
+ bint operator<(const_reverse_iterator)
83
+ bint operator>(reverse_iterator)
84
+ bint operator>(const_reverse_iterator)
85
+ bint operator<=(reverse_iterator)
86
+ bint operator<=(const_reverse_iterator)
87
+ bint operator>=(reverse_iterator)
88
+ bint operator>=(const_reverse_iterator)
89
+ cppclass const_reverse_iterator:
90
+ const_reverse_iterator() except +
91
+ const_reverse_iterator(reverse_iterator&) except +
92
+ operator=(reverse_iterator&) except +
93
+ const value_type& operator*()
94
+ const_reverse_iterator operator++()
95
+ const_reverse_iterator operator--()
96
+ const_reverse_iterator operator++(int)
97
+ const_reverse_iterator operator--(int)
98
+ const_reverse_iterator operator+(size_type)
99
+ const_reverse_iterator operator-(size_type)
100
+ difference_type operator-(iterator)
101
+ difference_type operator-(const_iterator)
102
+ bint operator==(reverse_iterator)
103
+ bint operator==(const_reverse_iterator)
104
+ bint operator!=(reverse_iterator)
105
+ bint operator!=(const_reverse_iterator)
106
+ bint operator<(reverse_iterator)
107
+ bint operator<(const_reverse_iterator)
108
+ bint operator>(reverse_iterator)
109
+ bint operator>(const_reverse_iterator)
110
+ bint operator<=(reverse_iterator)
111
+ bint operator<=(const_reverse_iterator)
112
+ bint operator>=(reverse_iterator)
113
+ bint operator>=(const_reverse_iterator)
114
+
115
+ deque() except +
116
+ deque(deque&) except +
117
+ deque(size_t) except +
118
+ deque(size_t, T&) except +
119
+ #deque[InputIt](InputIt, InputIt)
120
+ T& operator[](size_t)
121
+ #deque& operator=(deque&)
122
+ bint operator==(deque&, deque&)
123
+ bint operator!=(deque&, deque&)
124
+ bint operator<(deque&, deque&)
125
+ bint operator>(deque&, deque&)
126
+ bint operator<=(deque&, deque&)
127
+ bint operator>=(deque&, deque&)
128
+ void assign(size_t, T&) except +
129
+ void assign[InputIt](InputIt, InputIt) except +
130
+ T& at(size_t) except +
131
+ T& back()
132
+ iterator begin()
133
+ const_iterator const_begin "begin"()
134
+ const_iterator cbegin()
135
+ void clear()
136
+ bint empty()
137
+ iterator end()
138
+ const_iterator const_end "end"()
139
+ const_iterator cend()
140
+ iterator erase(iterator) except +
141
+ iterator erase(iterator, iterator) except +
142
+ T& front()
143
+ iterator insert(iterator, T&) except +
144
+ void insert(iterator, size_t, T&) except +
145
+ void insert[InputIt](iterator, InputIt, InputIt) except +
146
+ size_t max_size()
147
+ void pop_back()
148
+ void pop_front()
149
+ void push_back(T&) except +
150
+ void push_front(T&) except +
151
+ reverse_iterator rbegin()
152
+ #const_reverse_iterator rbegin()
153
+ const_reverse_iterator crbegin()
154
+ reverse_iterator rend()
155
+ #const_reverse_iterator rend()
156
+ const_reverse_iterator crend()
157
+ void resize(size_t) except +
158
+ void resize(size_t, T&) except +
159
+ size_t size()
160
+ void swap(deque&)
161
+
162
+ # C++11 methods
163
+ void shrink_to_fit() except +
164
+ T& emplace_front(...) except +
165
+ T& emplace_back(...) except +
@@ -0,0 +1,15 @@
1
+
2
+ cdef extern from "<execution>" namespace "std::execution" nogil:
3
+ cdef cppclass sequenced_policy:
4
+ pass
5
+ cdef cppclass parallel_policy:
6
+ pass
7
+ cdef cppclass parallel_unsequenced_policy:
8
+ pass
9
+ cdef cppclass unsequenced_policy:
10
+ pass
11
+
12
+ const sequenced_policy seq "std::execution::seq"
13
+ const parallel_policy par "std::execution::par"
14
+ const parallel_unsequenced_policy par_unseq "std::execution::par_unseq"
15
+ const unsequenced_policy unseq "std::execution::unseq"
@@ -0,0 +1,63 @@
1
+ cdef extern from "<forward_list>" namespace "std" nogil:
2
+ cdef cppclass forward_list[T,ALLOCATOR=*]:
3
+ ctypedef T value_type
4
+ ctypedef ALLOCATOR allocator_type
5
+
6
+ # these should really be allocator_type.size_type and
7
+ # allocator_type.difference_type to be true to the C++ definition
8
+ # but cython doesn't support deferred access on template arguments
9
+ ctypedef size_t size_type
10
+ ctypedef ptrdiff_t difference_type
11
+
12
+ cppclass iterator:
13
+ iterator()
14
+ iterator(iterator &)
15
+ T& operator*()
16
+ iterator operator++()
17
+ iterator operator++(int)
18
+ bint operator==(iterator)
19
+ bint operator!=(iterator)
20
+ cppclass const_iterator(iterator):
21
+ pass
22
+ forward_list() except +
23
+ forward_list(forward_list&) except +
24
+ forward_list(size_t, T&) except +
25
+ #forward_list& operator=(forward_list&)
26
+ bint operator==(forward_list&, forward_list&)
27
+ bint operator!=(forward_list&, forward_list&)
28
+ bint operator<(forward_list&, forward_list&)
29
+ bint operator>(forward_list&, forward_list&)
30
+ bint operator<=(forward_list&, forward_list&)
31
+ bint operator>=(forward_list&, forward_list&)
32
+ void assign(size_t, T&)
33
+ T& front()
34
+ iterator before_begin()
35
+ const_iterator const_before_begin "before_begin"()
36
+ iterator begin()
37
+ const_iterator const_begin "begin"()
38
+ iterator end()
39
+ const_iterator const_end "end"()
40
+ bint empty()
41
+ size_t max_size()
42
+ void clear()
43
+ iterator insert_after(iterator, T&)
44
+ void insert_after(iterator, size_t, T&)
45
+ iterator erase_after(iterator)
46
+ iterator erase_after(iterator, iterator)
47
+ void push_front(T&)
48
+ void pop_front()
49
+ void resize(size_t)
50
+ void resize(size_t, T&)
51
+ void swap(forward_list&)
52
+ void merge(forward_list&)
53
+ void merge[Compare](forward_list&, Compare)
54
+ void splice_after(iterator, forward_list&)
55
+ void splice_after(iterator, forward_list&, iterator)
56
+ void splice_after(iterator, forward_list&, iterator, iterator)
57
+ void remove(const T&)
58
+ void remove_if[Predicate](Predicate)
59
+ void reverse()
60
+ void unique()
61
+ void unique[Predicate](Predicate)
62
+ void sort()
63
+ void sort[Compare](Compare)
@@ -0,0 +1,26 @@
1
+ from libcpp cimport bool
2
+
3
+ cdef extern from "<functional>" namespace "std" nogil:
4
+ cdef cppclass function[T]:
5
+ function() except +
6
+ function(T*) except +
7
+ function(function&) except +
8
+ function(void*) except +
9
+
10
+ function operator=(T*)
11
+ function operator=(function&)
12
+ function operator=(void*)
13
+ function operator=[U](U)
14
+
15
+ bool operator bool()
16
+
17
+ # Comparisons
18
+ cdef cppclass greater[T=*]:
19
+ # https://github.com/cython/cython/issues/3193
20
+ greater() except +
21
+ bool operator()(const T& lhs, const T& rhs) except +
22
+
23
+ cdef cppclass reference_wrapper[T]:
24
+ reference_wrapper()
25
+ reference_wrapper(T)
26
+ T& get() const
@@ -0,0 +1,34 @@
1
+ #Basic reference: http://www.cplusplus.com/reference/iterator/
2
+ #Most of these classes are in fact empty structs
3
+
4
+ from libc.stddef import ptrdiff_t
5
+
6
+ cdef extern from "<iterator>" namespace "std" nogil:
7
+ cdef cppclass iterator[Category,T,Distance,Pointer,Reference]:
8
+ pass
9
+ cdef cppclass output_iterator_tag:
10
+ pass
11
+ cdef cppclass input_iterator_tag:
12
+ pass
13
+ cdef cppclass forward_iterator_tag(input_iterator_tag):
14
+ pass
15
+ cdef cppclass bidirectional_iterator_tag(forward_iterator_tag):
16
+ pass
17
+ cdef cppclass random_access_iterator_tag(bidirectional_iterator_tag):
18
+ pass
19
+
20
+ cdef cppclass back_insert_iterator[T](iterator[output_iterator_tag,void,void,void,void]):
21
+ pass
22
+ cdef cppclass front_insert_iterator[T](iterator[output_iterator_tag,void,void,void,void]):
23
+ pass
24
+ cdef cppclass insert_iterator[T](iterator[output_iterator_tag,void,void,void,void]):
25
+ pass
26
+ back_insert_iterator[CONTAINER] back_inserter[CONTAINER](CONTAINER &)
27
+ front_insert_iterator[CONTAINER] front_inserter[CONTAINER](CONTAINER &)
28
+ ##Note: this is the C++98 version of inserter.
29
+ ##The C++11 versions's prototype relies on typedef members of classes, which Cython doesn't currently support:
30
+ ##template <class Container>
31
+ ##insert_iterator<Container> inserter (Container& x, typename Container::iterator it)
32
+ insert_iterator[CONTAINER] inserter[CONTAINER,ITERATOR](CONTAINER &, ITERATOR)
33
+
34
+ ptrdiff_t distance[It](It first, It last)
@@ -0,0 +1,61 @@
1
+ cdef extern from "<limits>" namespace "std" nogil:
2
+ enum float_round_style:
3
+ round_indeterminate = -1
4
+ round_toward_zero = 0
5
+ round_to_nearest = 1
6
+ round_toward_infinity = 2
7
+ round_toward_neg_infinity = 3
8
+
9
+ enum float_denorm_style:
10
+ denorm_indeterminate = -1
11
+ denorm_absent = 0
12
+ denorm_present = 1
13
+
14
+ #The static methods can be called as, e.g. numeric_limits[int].round_error(), etc.
15
+ #The const data members should be declared as static. Cython currently doesn't allow that
16
+ #and/or I can't figure it out, so you must instantiate an object to access, e.g.
17
+ #cdef numeric_limits[double] lm
18
+ #print lm.round_style
19
+ cdef cppclass numeric_limits[T]:
20
+ const bint is_specialized
21
+ @staticmethod
22
+ T min()
23
+ @staticmethod
24
+ T max()
25
+ const int digits
26
+ const int digits10
27
+ const bint is_signed
28
+ const bint is_integer
29
+ const bint is_exact
30
+ const int radix
31
+ @staticmethod
32
+ T epsilon()
33
+ @staticmethod
34
+ T round_error()
35
+
36
+ const int min_exponent
37
+ const int min_exponent10
38
+ const int max_exponent
39
+ const int max_exponent10
40
+
41
+ const bint has_infinity
42
+ const bint has_quiet_NaN
43
+ const bint has_signaling_NaN
44
+ const float_denorm_style has_denorm
45
+ const bint has_denorm_loss
46
+ @staticmethod
47
+ T infinity()
48
+ @staticmethod
49
+ T quiet_NaN()
50
+ @staticmethod
51
+ T signaling_NaN()
52
+ @staticmethod
53
+ T denorm_min()
54
+
55
+ const bint is_iec559
56
+ const bint is_bounded
57
+ const bint is_modulo
58
+
59
+ const bint traps
60
+ const bint tinyness_before
61
+ const float_round_style round_style
@@ -0,0 +1,117 @@
1
+ cdef extern from "<list>" namespace "std" nogil:
2
+ cdef cppclass list[T,ALLOCATOR=*]:
3
+ ctypedef T value_type
4
+ ctypedef ALLOCATOR allocator_type
5
+
6
+ # these should really be allocator_type.size_type and
7
+ # allocator_type.difference_type to be true to the C++ definition
8
+ # but cython doesn't support deferred access on template arguments
9
+ ctypedef size_t size_type
10
+ ctypedef ptrdiff_t difference_type
11
+
12
+ cppclass const_iterator
13
+ cppclass iterator:
14
+ iterator() except +
15
+ iterator(iterator&) except +
16
+ value_type& operator*()
17
+ iterator operator++()
18
+ iterator operator--()
19
+ iterator operator++(int)
20
+ iterator operator--(int)
21
+ bint operator==(iterator)
22
+ bint operator==(const_iterator)
23
+ bint operator!=(iterator)
24
+ bint operator!=(const_iterator)
25
+ cppclass const_iterator:
26
+ const_iterator() except +
27
+ const_iterator(iterator&) except +
28
+ const_iterator(const_iterator&) except +
29
+ operator=(iterator&) except +
30
+ const value_type& operator*()
31
+ const_iterator operator++()
32
+ const_iterator operator--()
33
+ const_iterator operator++(int)
34
+ const_iterator operator--(int)
35
+ bint operator==(iterator)
36
+ bint operator==(const_iterator)
37
+ bint operator!=(iterator)
38
+ bint operator!=(const_iterator)
39
+
40
+ cppclass const_reverse_iterator
41
+ cppclass reverse_iterator:
42
+ reverse_iterator() except +
43
+ reverse_iterator(reverse_iterator&) except +
44
+ value_type& operator*()
45
+ reverse_iterator operator++()
46
+ reverse_iterator operator--()
47
+ reverse_iterator operator++(int)
48
+ reverse_iterator operator--(int)
49
+ bint operator==(reverse_iterator)
50
+ bint operator==(const_reverse_iterator)
51
+ bint operator!=(reverse_iterator)
52
+ bint operator!=(const_reverse_iterator)
53
+ cppclass const_reverse_iterator:
54
+ const_reverse_iterator() except +
55
+ const_reverse_iterator(reverse_iterator&) except +
56
+ operator=(reverse_iterator&) except +
57
+ const value_type& operator*()
58
+ const_reverse_iterator operator++()
59
+ const_reverse_iterator operator--()
60
+ const_reverse_iterator operator++(int)
61
+ const_reverse_iterator operator--(int)
62
+ bint operator==(reverse_iterator)
63
+ bint operator==(const_reverse_iterator)
64
+ bint operator!=(reverse_iterator)
65
+ bint operator!=(const_reverse_iterator)
66
+
67
+ list() except +
68
+ list(list&) except +
69
+ list(size_t, T&) except +
70
+ #list operator=(list&)
71
+ bint operator==(list&, list&)
72
+ bint operator!=(list&, list&)
73
+ bint operator<(list&, list&)
74
+ bint operator>(list&, list&)
75
+ bint operator<=(list&, list&)
76
+ bint operator>=(list&, list&)
77
+ void assign(size_t, T&) except +
78
+ T& back()
79
+ iterator begin()
80
+ const_iterator const_begin "begin"()
81
+ const_iterator cbegin()
82
+ void clear()
83
+ bint empty()
84
+ iterator end()
85
+ const_iterator const_end "end"()
86
+ const_iterator cend()
87
+ iterator erase(iterator)
88
+ iterator erase(iterator, iterator)
89
+ T& front()
90
+ iterator insert(iterator, T&)
91
+ void insert(iterator, size_t, T&)
92
+ size_t max_size()
93
+ void merge(list&) except +
94
+ #void merge(list&, BinPred)
95
+ void pop_back()
96
+ void pop_front()
97
+ void push_back(T&) except +
98
+ void push_front(T&) except +
99
+ reverse_iterator rbegin()
100
+ const_reverse_iterator const_rbegin "rbegin"()
101
+ const_reverse_iterator crbegin()
102
+ void remove(T&) except +
103
+ #void remove_if(UnPred)
104
+ reverse_iterator rend()
105
+ const_reverse_iterator const_rend "rend"()
106
+ const_reverse_iterator crend()
107
+ void resize(size_t, T&) except +
108
+ void reverse()
109
+ size_t size()
110
+ void sort() except +
111
+ #void sort(BinPred)
112
+ void splice(iterator, list&)
113
+ void splice(iterator, list&, iterator)
114
+ void splice(iterator, list&, iterator, iterator)
115
+ void swap(list&)
116
+ void unique()
117
+ #void unique(BinPred)