pytron-kit 0.3.12__py3-none-macosx_11_0_universal2.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 (419) hide show
  1. pytron/__init__.py +112 -0
  2. pytron/application.py +562 -0
  3. pytron/apputils/__init__.py +0 -0
  4. pytron/apputils/chrome_ipc.py +203 -0
  5. pytron/apputils/codegen.py +261 -0
  6. pytron/apputils/config.py +303 -0
  7. pytron/apputils/deadmansswitch.py +47 -0
  8. pytron/apputils/extras.py +76 -0
  9. pytron/apputils/native.py +148 -0
  10. pytron/apputils/shell.py +73 -0
  11. pytron/apputils/windows.py +286 -0
  12. pytron/cli.py +384 -0
  13. pytron/commands/__init__.py +0 -0
  14. pytron/commands/android.py +28 -0
  15. pytron/commands/build.py +26 -0
  16. pytron/commands/doctor.py +221 -0
  17. pytron/commands/engine.py +23 -0
  18. pytron/commands/frontend.py +60 -0
  19. pytron/commands/harvest.py +112 -0
  20. pytron/commands/helpers.py +239 -0
  21. pytron/commands/info.py +50 -0
  22. pytron/commands/init.py +521 -0
  23. pytron/commands/install.py +294 -0
  24. pytron/commands/login.py +130 -0
  25. pytron/commands/package.py +228 -0
  26. pytron/commands/plugin.py +442 -0
  27. pytron/commands/run.py +312 -0
  28. pytron/commands/scan.py +210 -0
  29. pytron/commands/show.py +23 -0
  30. pytron/commands/uninstall.py +150 -0
  31. pytron/commands/utils.py +42 -0
  32. pytron/commands/workflow.py +95 -0
  33. pytron/console.py +133 -0
  34. pytron/core.py +18 -0
  35. pytron/dependencies/WebView2Loader.dll +0 -0
  36. pytron/dependencies/__init__.py +1 -0
  37. pytron/dependencies/pytron_native.so +0 -0
  38. pytron/engines/chrome/adapter.py +445 -0
  39. pytron/engines/chrome/engine.py +576 -0
  40. pytron/engines/chrome/forge.py +147 -0
  41. pytron/engines/chrome/shell/package.json +8 -0
  42. pytron/engines/chrome/shell/preload.js +12 -0
  43. pytron/engines/chrome/shell/shell.js +534 -0
  44. pytron/exceptions.py +36 -0
  45. pytron/inspector.py +201 -0
  46. pytron/inspector_ui.py +512 -0
  47. pytron/installer/Installation.nsi +236 -0
  48. pytron/installer/header.bmp +0 -0
  49. pytron/installer/pytron.ico +0 -0
  50. pytron/installer/sidebar.bmp +0 -0
  51. pytron/llms.md +98 -0
  52. pytron/manifests/README.md +29 -0
  53. pytron/manifests/windows-utf8.manifest +44 -0
  54. pytron/menu.py +128 -0
  55. pytron/nsis-setup.exe +0 -0
  56. pytron/pack/__init__.py +0 -0
  57. pytron/pack/assets.py +131 -0
  58. pytron/pack/compilers.py +289 -0
  59. pytron/pack/crystal.py +297 -0
  60. pytron/pack/graph.py +377 -0
  61. pytron/pack/inference.py +157 -0
  62. pytron/pack/installers.py +402 -0
  63. pytron/pack/introspect.py +357 -0
  64. pytron/pack/metadata.py +213 -0
  65. pytron/pack/modules.py +618 -0
  66. pytron/pack/nuitka.py +108 -0
  67. pytron/pack/pipeline.py +107 -0
  68. pytron/pack/pyinstaller.py +176 -0
  69. pytron/pack/rust_engine.py +273 -0
  70. pytron/pack/secure.py +309 -0
  71. pytron/pack/secure_loader/bin/pytron_rust_bootloader +0 -0
  72. pytron/pack/secure_loader/icon.ico +0 -0
  73. pytron/pack/utils.py +110 -0
  74. pytron/pack/virtual_root.py +124 -0
  75. pytron/platforms/__init__.py +0 -0
  76. pytron/platforms/android/__init__.py +3 -0
  77. pytron/platforms/android/android.py +103 -0
  78. pytron/platforms/android/builder.py +736 -0
  79. pytron/platforms/android/ops/build.py +79 -0
  80. pytron/platforms/android/ops/init.py +63 -0
  81. pytron/platforms/android/ops/run.py +79 -0
  82. pytron/platforms/android/ops/sync.py +770 -0
  83. pytron/platforms/android/ops/utils.py +8 -0
  84. pytron/platforms/android/shell/README.md +30 -0
  85. pytron/platforms/android/shell/app/build.gradle +64 -0
  86. pytron/platforms/android/shell/app/src/main/AndroidManifest.xml +29 -0
  87. pytron/platforms/android/shell/app/src/main/assets/python/main.py +86 -0
  88. pytron/platforms/android/shell/app/src/main/assets/python/python314.zip +0 -0
  89. pytron/platforms/android/shell/app/src/main/cpp/CMakeLists.txt +25 -0
  90. pytron/platforms/android/shell/app/src/main/cpp/include/Python.h +155 -0
  91. pytron/platforms/android/shell/app/src/main/cpp/include/abstract.h +915 -0
  92. pytron/platforms/android/shell/app/src/main/cpp/include/audit.h +30 -0
  93. pytron/platforms/android/shell/app/src/main/cpp/include/bltinmodule.h +14 -0
  94. pytron/platforms/android/shell/app/src/main/cpp/include/boolobject.h +54 -0
  95. pytron/platforms/android/shell/app/src/main/cpp/include/bytearrayobject.h +44 -0
  96. pytron/platforms/android/shell/app/src/main/cpp/include/bytesobject.h +66 -0
  97. pytron/platforms/android/shell/app/src/main/cpp/include/ceval.h +145 -0
  98. pytron/platforms/android/shell/app/src/main/cpp/include/codecs.h +176 -0
  99. pytron/platforms/android/shell/app/src/main/cpp/include/compile.h +22 -0
  100. pytron/platforms/android/shell/app/src/main/cpp/include/complexobject.h +30 -0
  101. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/abstract.h +104 -0
  102. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/audit.h +8 -0
  103. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/bytearrayobject.h +38 -0
  104. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/bytesobject.h +42 -0
  105. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/cellobject.h +50 -0
  106. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/ceval.h +43 -0
  107. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/classobject.h +71 -0
  108. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/code.h +340 -0
  109. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/compile.h +50 -0
  110. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/complexobject.h +33 -0
  111. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/context.h +107 -0
  112. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/critical_section.h +154 -0
  113. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/descrobject.h +62 -0
  114. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/dictobject.h +105 -0
  115. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/fileobject.h +16 -0
  116. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/fileutils.h +16 -0
  117. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/floatobject.h +27 -0
  118. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/frameobject.h +35 -0
  119. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/funcobject.h +185 -0
  120. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/genobject.h +56 -0
  121. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/import.h +30 -0
  122. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/initconfig.h +334 -0
  123. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/listobject.h +53 -0
  124. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/lock.h +74 -0
  125. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/longintrepr.h +184 -0
  126. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/longobject.h +89 -0
  127. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/memoryobject.h +50 -0
  128. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/methodobject.h +66 -0
  129. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/modsupport.h +26 -0
  130. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/monitoring.h +269 -0
  131. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/object.h +493 -0
  132. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/objimpl.h +104 -0
  133. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/odictobject.h +43 -0
  134. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/picklebufobject.h +31 -0
  135. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pthread_stubs.h +105 -0
  136. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyatomic.h +614 -0
  137. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyatomic_gcc.h +615 -0
  138. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyatomic_msc.h +1197 -0
  139. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyatomic_std.h +1112 -0
  140. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyctype.h +39 -0
  141. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pydebug.h +38 -0
  142. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyerrors.h +132 -0
  143. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyfpe.h +15 -0
  144. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyframe.h +45 -0
  145. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pyhash.h +54 -0
  146. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pylifecycle.h +89 -0
  147. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pymem.h +84 -0
  148. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pystate.h +275 -0
  149. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pystats.h +194 -0
  150. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pythonrun.h +96 -0
  151. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pythread.h +43 -0
  152. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/pytime.h +27 -0
  153. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/setobject.h +71 -0
  154. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/traceback.h +13 -0
  155. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/tracemalloc.h +32 -0
  156. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/tupleobject.h +40 -0
  157. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/unicodeobject.h +773 -0
  158. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/warnings.h +20 -0
  159. pytron/platforms/android/shell/app/src/main/cpp/include/cpython/weakrefobject.h +66 -0
  160. pytron/platforms/android/shell/app/src/main/cpp/include/critical_section.h +16 -0
  161. pytron/platforms/android/shell/app/src/main/cpp/include/datetime.h +267 -0
  162. pytron/platforms/android/shell/app/src/main/cpp/include/descrobject.h +100 -0
  163. pytron/platforms/android/shell/app/src/main/cpp/include/dictobject.h +108 -0
  164. pytron/platforms/android/shell/app/src/main/cpp/include/dynamic_annotations.h +499 -0
  165. pytron/platforms/android/shell/app/src/main/cpp/include/enumobject.h +17 -0
  166. pytron/platforms/android/shell/app/src/main/cpp/include/errcode.h +45 -0
  167. pytron/platforms/android/shell/app/src/main/cpp/include/exports.h +105 -0
  168. pytron/platforms/android/shell/app/src/main/cpp/include/fileobject.h +41 -0
  169. pytron/platforms/android/shell/app/src/main/cpp/include/fileutils.h +62 -0
  170. pytron/platforms/android/shell/app/src/main/cpp/include/floatobject.h +54 -0
  171. pytron/platforms/android/shell/app/src/main/cpp/include/frameobject.h +20 -0
  172. pytron/platforms/android/shell/app/src/main/cpp/include/genericaliasobject.h +14 -0
  173. pytron/platforms/android/shell/app/src/main/cpp/include/import.h +103 -0
  174. pytron/platforms/android/shell/app/src/main/cpp/include/internal/mimalloc/mimalloc/atomic.h +392 -0
  175. pytron/platforms/android/shell/app/src/main/cpp/include/internal/mimalloc/mimalloc/internal.h +969 -0
  176. pytron/platforms/android/shell/app/src/main/cpp/include/internal/mimalloc/mimalloc/prim.h +329 -0
  177. pytron/platforms/android/shell/app/src/main/cpp/include/internal/mimalloc/mimalloc/track.h +147 -0
  178. pytron/platforms/android/shell/app/src/main/cpp/include/internal/mimalloc/mimalloc/types.h +721 -0
  179. pytron/platforms/android/shell/app/src/main/cpp/include/internal/mimalloc/mimalloc.h +565 -0
  180. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_abstract.h +61 -0
  181. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_asdl.h +112 -0
  182. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_ast.h +945 -0
  183. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_ast_state.h +271 -0
  184. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_atexit.h +31 -0
  185. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_audit.h +35 -0
  186. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_backoff.h +133 -0
  187. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_bitutils.h +186 -0
  188. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_blocks_output_buffer.h +321 -0
  189. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_brc.h +73 -0
  190. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_bytes_methods.h +82 -0
  191. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_bytesobject.h +149 -0
  192. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_c_array.h +39 -0
  193. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_call.h +206 -0
  194. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_capsule.h +17 -0
  195. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_cell.h +75 -0
  196. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_ceval.h +390 -0
  197. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_ceval_state.h +48 -0
  198. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_code.h +671 -0
  199. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_codecs.h +76 -0
  200. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_compile.h +230 -0
  201. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_complexobject.h +34 -0
  202. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_condvar.h +93 -0
  203. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_context.h +59 -0
  204. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_critical_section.h +237 -0
  205. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_crossinterp.h +406 -0
  206. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_crossinterp_data_registry.h +41 -0
  207. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_debug_offsets.h +379 -0
  208. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_descrobject.h +28 -0
  209. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_dict.h +410 -0
  210. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_dict_state.h +28 -0
  211. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_dtoa.h +40 -0
  212. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_emscripten_signal.h +30 -0
  213. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_emscripten_trampoline.h +70 -0
  214. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_exceptions.h +40 -0
  215. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_faulthandler.h +100 -0
  216. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_fileutils.h +320 -0
  217. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_fileutils_windows.h +98 -0
  218. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_floatobject.h +49 -0
  219. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_flowgraph.h +47 -0
  220. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_format.h +27 -0
  221. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_frame.h +61 -0
  222. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_freelist.h +111 -0
  223. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_freelist_state.h +70 -0
  224. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_function.h +53 -0
  225. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_gc.h +378 -0
  226. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_genobject.h +43 -0
  227. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_getopt.h +22 -0
  228. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_gil.h +66 -0
  229. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_global_objects.h +34 -0
  230. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_global_objects_fini_generated.h +1592 -0
  231. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_global_strings.h +854 -0
  232. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_hamt.h +113 -0
  233. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_hashtable.h +150 -0
  234. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_import.h +141 -0
  235. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_importdl.h +139 -0
  236. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_index_pool.h +36 -0
  237. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_initconfig.h +197 -0
  238. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_instruction_sequence.h +83 -0
  239. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_instruments.h +127 -0
  240. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_interp.h +109 -0
  241. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_interp_structs.h +977 -0
  242. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_interpframe.h +401 -0
  243. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_interpframe_structs.h +95 -0
  244. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_interpolation.h +26 -0
  245. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_intrinsics.h +51 -0
  246. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_jit.h +29 -0
  247. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_list.h +81 -0
  248. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_llist.h +106 -0
  249. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_lock.h +236 -0
  250. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_long.h +319 -0
  251. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_magic_number.h +305 -0
  252. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_memoryobject.h +20 -0
  253. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_mimalloc.h +69 -0
  254. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_modsupport.h +99 -0
  255. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_moduleobject.h +62 -0
  256. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_namespace.h +21 -0
  257. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_object.h +1029 -0
  258. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_object_alloc.h +71 -0
  259. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_object_deferred.h +32 -0
  260. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_object_stack.h +95 -0
  261. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_object_state.h +49 -0
  262. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_obmalloc.h +702 -0
  263. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_obmalloc_init.h +66 -0
  264. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_opcode_metadata.h +2117 -0
  265. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_opcode_utils.h +90 -0
  266. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_optimizer.h +318 -0
  267. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_parking_lot.h +97 -0
  268. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_parser.h +78 -0
  269. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pathconfig.h +26 -0
  270. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pyarena.h +68 -0
  271. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pyatomic_ft_wrappers.h +174 -0
  272. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pybuffer.h +21 -0
  273. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pyerrors.h +213 -0
  274. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pyhash.h +91 -0
  275. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pylifecycle.h +136 -0
  276. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pymath.h +205 -0
  277. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pymem.h +145 -0
  278. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pymem_init.h +103 -0
  279. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pystate.h +339 -0
  280. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pystats.h +21 -0
  281. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pythonrun.h +68 -0
  282. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_pythread.h +172 -0
  283. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_qsbr.h +172 -0
  284. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_range.h +21 -0
  285. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_runtime.h +63 -0
  286. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_runtime_init.h +239 -0
  287. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_runtime_init_generated.h +1589 -0
  288. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_runtime_structs.h +310 -0
  289. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_semaphore.h +67 -0
  290. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_setobject.h +41 -0
  291. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_signal.h +108 -0
  292. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_sliceobject.h +20 -0
  293. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_stackref.h +791 -0
  294. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_stats.h +97 -0
  295. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_strhex.h +39 -0
  296. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_structs.h +88 -0
  297. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_structseq.h +40 -0
  298. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_symtable.h +201 -0
  299. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_sysmodule.h +32 -0
  300. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_template.h +26 -0
  301. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_time.h +334 -0
  302. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_token.h +110 -0
  303. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_traceback.h +111 -0
  304. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_tracemalloc.h +164 -0
  305. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_tstate.h +88 -0
  306. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_tuple.h +75 -0
  307. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_typedefs.h +18 -0
  308. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_typeobject.h +155 -0
  309. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_typevarobject.h +28 -0
  310. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_ucnhash.h +36 -0
  311. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_unicodeobject.h +308 -0
  312. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_unicodeobject_generated.h +3132 -0
  313. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_unionobject.h +26 -0
  314. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_uniqueid.h +57 -0
  315. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_uop_ids.h +335 -0
  316. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_uop_metadata.h +1204 -0
  317. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_warnings.h +21 -0
  318. pytron/platforms/android/shell/app/src/main/cpp/include/internal/pycore_weakref.h +133 -0
  319. pytron/platforms/android/shell/app/src/main/cpp/include/intrcheck.h +23 -0
  320. pytron/platforms/android/shell/app/src/main/cpp/include/iterobject.h +24 -0
  321. pytron/platforms/android/shell/app/src/main/cpp/include/listobject.h +55 -0
  322. pytron/platforms/android/shell/app/src/main/cpp/include/lock.h +16 -0
  323. pytron/platforms/android/shell/app/src/main/cpp/include/longobject.h +178 -0
  324. pytron/platforms/android/shell/app/src/main/cpp/include/marshal.h +31 -0
  325. pytron/platforms/android/shell/app/src/main/cpp/include/memoryobject.h +34 -0
  326. pytron/platforms/android/shell/app/src/main/cpp/include/methodobject.h +146 -0
  327. pytron/platforms/android/shell/app/src/main/cpp/include/modsupport.h +146 -0
  328. pytron/platforms/android/shell/app/src/main/cpp/include/moduleobject.h +122 -0
  329. pytron/platforms/android/shell/app/src/main/cpp/include/monitoring.h +18 -0
  330. pytron/platforms/android/shell/app/src/main/cpp/include/object.h +828 -0
  331. pytron/platforms/android/shell/app/src/main/cpp/include/objimpl.h +211 -0
  332. pytron/platforms/android/shell/app/src/main/cpp/include/opcode.h +43 -0
  333. pytron/platforms/android/shell/app/src/main/cpp/include/opcode_ids.h +259 -0
  334. pytron/platforms/android/shell/app/src/main/cpp/include/osdefs.h +57 -0
  335. pytron/platforms/android/shell/app/src/main/cpp/include/osmodule.h +17 -0
  336. pytron/platforms/android/shell/app/src/main/cpp/include/patchlevel.h +49 -0
  337. pytron/platforms/android/shell/app/src/main/cpp/include/py_curses.h +117 -0
  338. pytron/platforms/android/shell/app/src/main/cpp/include/pyatomic.h +16 -0
  339. pytron/platforms/android/shell/app/src/main/cpp/include/pybuffer.h +145 -0
  340. pytron/platforms/android/shell/app/src/main/cpp/include/pycapsule.h +58 -0
  341. pytron/platforms/android/shell/app/src/main/cpp/include/pyconfig.h +2088 -0
  342. pytron/platforms/android/shell/app/src/main/cpp/include/pydtrace.h +59 -0
  343. pytron/platforms/android/shell/app/src/main/cpp/include/pyerrors.h +335 -0
  344. pytron/platforms/android/shell/app/src/main/cpp/include/pyexpat.h +62 -0
  345. pytron/platforms/android/shell/app/src/main/cpp/include/pyframe.h +26 -0
  346. pytron/platforms/android/shell/app/src/main/cpp/include/pyhash.h +59 -0
  347. pytron/platforms/android/shell/app/src/main/cpp/include/pylifecycle.h +80 -0
  348. pytron/platforms/android/shell/app/src/main/cpp/include/pymacconfig.h +91 -0
  349. pytron/platforms/android/shell/app/src/main/cpp/include/pymacro.h +243 -0
  350. pytron/platforms/android/shell/app/src/main/cpp/include/pymath.h +65 -0
  351. pytron/platforms/android/shell/app/src/main/cpp/include/pymem.h +110 -0
  352. pytron/platforms/android/shell/app/src/main/cpp/include/pyport.h +710 -0
  353. pytron/platforms/android/shell/app/src/main/cpp/include/pystate.h +132 -0
  354. pytron/platforms/android/shell/app/src/main/cpp/include/pystats.h +28 -0
  355. pytron/platforms/android/shell/app/src/main/cpp/include/pystrcmp.h +23 -0
  356. pytron/platforms/android/shell/app/src/main/cpp/include/pystrtod.h +37 -0
  357. pytron/platforms/android/shell/app/src/main/cpp/include/pythonrun.h +42 -0
  358. pytron/platforms/android/shell/app/src/main/cpp/include/pythread.h +131 -0
  359. pytron/platforms/android/shell/app/src/main/cpp/include/pytypedefs.h +30 -0
  360. pytron/platforms/android/shell/app/src/main/cpp/include/rangeobject.h +27 -0
  361. pytron/platforms/android/shell/app/src/main/cpp/include/refcount.h +555 -0
  362. pytron/platforms/android/shell/app/src/main/cpp/include/setobject.h +49 -0
  363. pytron/platforms/android/shell/app/src/main/cpp/include/sliceobject.h +69 -0
  364. pytron/platforms/android/shell/app/src/main/cpp/include/structmember.h +56 -0
  365. pytron/platforms/android/shell/app/src/main/cpp/include/structseq.h +46 -0
  366. pytron/platforms/android/shell/app/src/main/cpp/include/sysmodule.h +27 -0
  367. pytron/platforms/android/shell/app/src/main/cpp/include/traceback.h +26 -0
  368. pytron/platforms/android/shell/app/src/main/cpp/include/tupleobject.h +46 -0
  369. pytron/platforms/android/shell/app/src/main/cpp/include/typeslots.h +96 -0
  370. pytron/platforms/android/shell/app/src/main/cpp/include/unicodeobject.h +1029 -0
  371. pytron/platforms/android/shell/app/src/main/cpp/include/warnings.h +45 -0
  372. pytron/platforms/android/shell/app/src/main/cpp/include/weakrefobject.h +46 -0
  373. pytron/platforms/android/shell/app/src/main/cpp/pytron_bridge.cpp +224 -0
  374. pytron/platforms/android/shell/app/src/main/java/com/pytron/shell/MainActivity.kt +208 -0
  375. pytron/platforms/android/shell/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  376. pytron/platforms/android/shell/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  377. pytron/platforms/android/shell/build.gradle +11 -0
  378. pytron/platforms/android/shell/gradle/wrapper/gradle-wrapper.jar +0 -0
  379. pytron/platforms/android/shell/gradle/wrapper/gradle-wrapper.properties +5 -0
  380. pytron/platforms/android/shell/gradle.properties +2 -0
  381. pytron/platforms/android/shell/gradlew.bat +85 -0
  382. pytron/platforms/android/shell/settings.gradle +16 -0
  383. pytron/platforms/darwin.py +82 -0
  384. pytron/platforms/darwin_ops/libs.py +31 -0
  385. pytron/platforms/darwin_ops/system.py +182 -0
  386. pytron/platforms/darwin_ops/utils.py +85 -0
  387. pytron/platforms/darwin_ops/webview.py +5 -0
  388. pytron/platforms/darwin_ops/window.py +102 -0
  389. pytron/platforms/interface.py +152 -0
  390. pytron/platforms/linux.py +82 -0
  391. pytron/platforms/linux_ops/libs.py +49 -0
  392. pytron/platforms/linux_ops/system.py +316 -0
  393. pytron/platforms/linux_ops/utils.py +19 -0
  394. pytron/platforms/linux_ops/webview.py +5 -0
  395. pytron/platforms/linux_ops/window.py +115 -0
  396. pytron/platforms/windows.py +136 -0
  397. pytron/platforms/windows_ops/__init__.py +0 -0
  398. pytron/platforms/windows_ops/constants.py +126 -0
  399. pytron/platforms/windows_ops/system.py +518 -0
  400. pytron/platforms/windows_ops/utils.py +3 -0
  401. pytron/platforms/windows_ops/webview.py +5 -0
  402. pytron/platforms/windows_ops/window.py +361 -0
  403. pytron/plugin.py +467 -0
  404. pytron/rcedit-x64.exe +0 -0
  405. pytron/router.py +146 -0
  406. pytron/serializer.py +240 -0
  407. pytron/shortcuts.py +279 -0
  408. pytron/state.py +76 -0
  409. pytron/tray.py +399 -0
  410. pytron/updater.py +181 -0
  411. pytron/utf8_hook.py +112 -0
  412. pytron/utils.py +44 -0
  413. pytron/webview.py +722 -0
  414. pytron_kit-0.3.12.dist-info/METADATA +131 -0
  415. pytron_kit-0.3.12.dist-info/RECORD +419 -0
  416. pytron_kit-0.3.12.dist-info/WHEEL +5 -0
  417. pytron_kit-0.3.12.dist-info/entry_points.txt +2 -0
  418. pytron_kit-0.3.12.dist-info/licenses/LICENSE +201 -0
  419. pytron_kit-0.3.12.dist-info/top_level.txt +1 -0
@@ -0,0 +1,20 @@
1
+ #ifndef Py_CPYTHON_WARNINGS_H
2
+ # error "this header file must not be included directly"
3
+ #endif
4
+
5
+ PyAPI_FUNC(int) PyErr_WarnExplicitObject(
6
+ PyObject *category,
7
+ PyObject *message,
8
+ PyObject *filename,
9
+ int lineno,
10
+ PyObject *module,
11
+ PyObject *registry);
12
+
13
+ PyAPI_FUNC(int) PyErr_WarnExplicitFormat(
14
+ PyObject *category,
15
+ const char *filename, int lineno,
16
+ const char *module, PyObject *registry,
17
+ const char *format, ...);
18
+
19
+ // DEPRECATED: Use PyErr_WarnEx() instead.
20
+ #define PyErr_Warn(category, msg) PyErr_WarnEx((category), (msg), 1)
@@ -0,0 +1,66 @@
1
+ #ifndef Py_CPYTHON_WEAKREFOBJECT_H
2
+ # error "this header file must not be included directly"
3
+ #endif
4
+
5
+ /* PyWeakReference is the base struct for the Python ReferenceType, ProxyType,
6
+ * and CallableProxyType.
7
+ */
8
+ struct _PyWeakReference {
9
+ PyObject_HEAD
10
+
11
+ /* The object to which this is a weak reference, or Py_None if none.
12
+ * Note that this is a stealth reference: wr_object's refcount is
13
+ * not incremented to reflect this pointer.
14
+ */
15
+ PyObject *wr_object;
16
+
17
+ /* A callable to invoke when wr_object dies, or NULL if none. */
18
+ PyObject *wr_callback;
19
+
20
+ /* A cache for wr_object's hash code. As usual for hashes, this is -1
21
+ * if the hash code isn't known yet.
22
+ */
23
+ Py_hash_t hash;
24
+
25
+ /* If wr_object is weakly referenced, wr_object has a doubly-linked NULL-
26
+ * terminated list of weak references to it. These are the list pointers.
27
+ * If wr_object goes away, wr_object is set to Py_None, and these pointers
28
+ * have no meaning then.
29
+ */
30
+ PyWeakReference *wr_prev;
31
+ PyWeakReference *wr_next;
32
+ vectorcallfunc vectorcall;
33
+
34
+ #ifdef Py_GIL_DISABLED
35
+ /* Pointer to the lock used when clearing in free-threaded builds.
36
+ * Normally this can be derived from wr_object, but in some cases we need
37
+ * to lock after wr_object has been set to Py_None.
38
+ */
39
+ PyMutex *weakrefs_lock;
40
+ #endif
41
+ };
42
+
43
+ PyAPI_FUNC(void) _PyWeakref_ClearRef(PyWeakReference *self);
44
+
45
+ #define _PyWeakref_CAST(op) \
46
+ (assert(PyWeakref_Check(op)), _Py_CAST(PyWeakReference*, (op)))
47
+
48
+ // Test if a weak reference is dead.
49
+ PyAPI_FUNC(int) PyWeakref_IsDead(PyObject *ref);
50
+
51
+ Py_DEPRECATED(3.13) static inline PyObject* PyWeakref_GET_OBJECT(PyObject *ref_obj)
52
+ {
53
+ PyWeakReference *ref = _PyWeakref_CAST(ref_obj);
54
+ PyObject *obj = ref->wr_object;
55
+ // Explanation for the Py_REFCNT() check: when a weakref's target is part
56
+ // of a long chain of deallocations which triggers the trashcan mechanism,
57
+ // clearing the weakrefs can be delayed long after the target's refcount
58
+ // has dropped to zero. In the meantime, code accessing the weakref will
59
+ // be able to "see" the target object even though it is supposed to be
60
+ // unreachable. See issue gh-60806.
61
+ if (Py_REFCNT(obj) > 0) {
62
+ return obj;
63
+ }
64
+ return Py_None;
65
+ }
66
+ #define PyWeakref_GET_OBJECT(ref) PyWeakref_GET_OBJECT(_PyObject_CAST(ref))
@@ -0,0 +1,16 @@
1
+ #ifndef Py_CRITICAL_SECTION_H
2
+ #define Py_CRITICAL_SECTION_H
3
+ #ifdef __cplusplus
4
+ extern "C" {
5
+ #endif
6
+
7
+ #ifndef Py_LIMITED_API
8
+ # define Py_CPYTHON_CRITICAL_SECTION_H
9
+ # include "cpython/critical_section.h"
10
+ # undef Py_CPYTHON_CRITICAL_SECTION_H
11
+ #endif
12
+
13
+ #ifdef __cplusplus
14
+ }
15
+ #endif
16
+ #endif /* !Py_CRITICAL_SECTION_H */
@@ -0,0 +1,267 @@
1
+ /* datetime.h
2
+ */
3
+ #ifndef Py_LIMITED_API
4
+ #ifndef DATETIME_H
5
+ #define DATETIME_H
6
+ #ifdef __cplusplus
7
+ extern "C" {
8
+ #endif
9
+
10
+ /* Fields are packed into successive bytes, each viewed as unsigned and
11
+ * big-endian, unless otherwise noted:
12
+ *
13
+ * byte offset
14
+ * 0 year 2 bytes, 1-9999
15
+ * 2 month 1 byte, 1-12
16
+ * 3 day 1 byte, 1-31
17
+ * 4 hour 1 byte, 0-23
18
+ * 5 minute 1 byte, 0-59
19
+ * 6 second 1 byte, 0-59
20
+ * 7 usecond 3 bytes, 0-999999
21
+ * 10
22
+ */
23
+
24
+ /* # of bytes for year, month, and day. */
25
+ #define _PyDateTime_DATE_DATASIZE 4
26
+
27
+ /* # of bytes for hour, minute, second, and usecond. */
28
+ #define _PyDateTime_TIME_DATASIZE 6
29
+
30
+ /* # of bytes for year, month, day, hour, minute, second, and usecond. */
31
+ #define _PyDateTime_DATETIME_DATASIZE 10
32
+
33
+
34
+ typedef struct
35
+ {
36
+ PyObject_HEAD
37
+ Py_hash_t hashcode; /* -1 when unknown */
38
+ int days; /* -MAX_DELTA_DAYS <= days <= MAX_DELTA_DAYS */
39
+ int seconds; /* 0 <= seconds < 24*3600 is invariant */
40
+ int microseconds; /* 0 <= microseconds < 1000000 is invariant */
41
+ } PyDateTime_Delta;
42
+
43
+ typedef struct
44
+ {
45
+ PyObject_HEAD /* a pure abstract base class */
46
+ } PyDateTime_TZInfo;
47
+
48
+
49
+ /* The datetime and time types have hashcodes, and an optional tzinfo member,
50
+ * present if and only if hastzinfo is true.
51
+ */
52
+ #define _PyTZINFO_HEAD \
53
+ PyObject_HEAD \
54
+ Py_hash_t hashcode; \
55
+ char hastzinfo; /* boolean flag */
56
+
57
+ /* No _PyDateTime_BaseTZInfo is allocated; it's just to have something
58
+ * convenient to cast to, when getting at the hastzinfo member of objects
59
+ * starting with _PyTZINFO_HEAD.
60
+ */
61
+ typedef struct
62
+ {
63
+ _PyTZINFO_HEAD
64
+ } _PyDateTime_BaseTZInfo;
65
+
66
+ /* All time objects are of PyDateTime_TimeType, but that can be allocated
67
+ * in two ways, with or without a tzinfo member. Without is the same as
68
+ * tzinfo == None, but consumes less memory. _PyDateTime_BaseTime is an
69
+ * internal struct used to allocate the right amount of space for the
70
+ * "without" case.
71
+ */
72
+ #define _PyDateTime_TIMEHEAD \
73
+ _PyTZINFO_HEAD \
74
+ unsigned char data[_PyDateTime_TIME_DATASIZE];
75
+
76
+ typedef struct
77
+ {
78
+ _PyDateTime_TIMEHEAD
79
+ } _PyDateTime_BaseTime; /* hastzinfo false */
80
+
81
+ typedef struct
82
+ {
83
+ _PyDateTime_TIMEHEAD
84
+ unsigned char fold;
85
+ PyObject *tzinfo;
86
+ } PyDateTime_Time; /* hastzinfo true */
87
+
88
+
89
+ /* All datetime objects are of PyDateTime_DateTimeType, but that can be
90
+ * allocated in two ways too, just like for time objects above. In addition,
91
+ * the plain date type is a base class for datetime, so it must also have
92
+ * a hastzinfo member (although it's unused there).
93
+ */
94
+ typedef struct
95
+ {
96
+ _PyTZINFO_HEAD
97
+ unsigned char data[_PyDateTime_DATE_DATASIZE];
98
+ } PyDateTime_Date;
99
+
100
+ #define _PyDateTime_DATETIMEHEAD \
101
+ _PyTZINFO_HEAD \
102
+ unsigned char data[_PyDateTime_DATETIME_DATASIZE];
103
+
104
+ typedef struct
105
+ {
106
+ _PyDateTime_DATETIMEHEAD
107
+ } _PyDateTime_BaseDateTime; /* hastzinfo false */
108
+
109
+ typedef struct
110
+ {
111
+ _PyDateTime_DATETIMEHEAD
112
+ unsigned char fold;
113
+ PyObject *tzinfo;
114
+ } PyDateTime_DateTime; /* hastzinfo true */
115
+
116
+
117
+ /* Apply for date and datetime instances. */
118
+
119
+ // o is a pointer to a time or a datetime object.
120
+ #define _PyDateTime_HAS_TZINFO(o) (((_PyDateTime_BaseTZInfo *)(o))->hastzinfo)
121
+
122
+ #define PyDateTime_GET_YEAR(o) ((((PyDateTime_Date*)(o))->data[0] << 8) | \
123
+ ((PyDateTime_Date*)(o))->data[1])
124
+ #define PyDateTime_GET_MONTH(o) (((PyDateTime_Date*)(o))->data[2])
125
+ #define PyDateTime_GET_DAY(o) (((PyDateTime_Date*)(o))->data[3])
126
+
127
+ #define PyDateTime_DATE_GET_HOUR(o) (((PyDateTime_DateTime*)(o))->data[4])
128
+ #define PyDateTime_DATE_GET_MINUTE(o) (((PyDateTime_DateTime*)(o))->data[5])
129
+ #define PyDateTime_DATE_GET_SECOND(o) (((PyDateTime_DateTime*)(o))->data[6])
130
+ #define PyDateTime_DATE_GET_MICROSECOND(o) \
131
+ ((((PyDateTime_DateTime*)(o))->data[7] << 16) | \
132
+ (((PyDateTime_DateTime*)(o))->data[8] << 8) | \
133
+ ((PyDateTime_DateTime*)(o))->data[9])
134
+ #define PyDateTime_DATE_GET_FOLD(o) (((PyDateTime_DateTime*)(o))->fold)
135
+ #define PyDateTime_DATE_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO((o)) ? \
136
+ ((PyDateTime_DateTime *)(o))->tzinfo : Py_None)
137
+
138
+ /* Apply for time instances. */
139
+ #define PyDateTime_TIME_GET_HOUR(o) (((PyDateTime_Time*)(o))->data[0])
140
+ #define PyDateTime_TIME_GET_MINUTE(o) (((PyDateTime_Time*)(o))->data[1])
141
+ #define PyDateTime_TIME_GET_SECOND(o) (((PyDateTime_Time*)(o))->data[2])
142
+ #define PyDateTime_TIME_GET_MICROSECOND(o) \
143
+ ((((PyDateTime_Time*)(o))->data[3] << 16) | \
144
+ (((PyDateTime_Time*)(o))->data[4] << 8) | \
145
+ ((PyDateTime_Time*)(o))->data[5])
146
+ #define PyDateTime_TIME_GET_FOLD(o) (((PyDateTime_Time*)(o))->fold)
147
+ #define PyDateTime_TIME_GET_TZINFO(o) (_PyDateTime_HAS_TZINFO(o) ? \
148
+ ((PyDateTime_Time *)(o))->tzinfo : Py_None)
149
+
150
+ /* Apply for time delta instances */
151
+ #define PyDateTime_DELTA_GET_DAYS(o) (((PyDateTime_Delta*)(o))->days)
152
+ #define PyDateTime_DELTA_GET_SECONDS(o) (((PyDateTime_Delta*)(o))->seconds)
153
+ #define PyDateTime_DELTA_GET_MICROSECONDS(o) \
154
+ (((PyDateTime_Delta*)(o))->microseconds)
155
+
156
+
157
+ /* Define structure for C API. */
158
+ typedef struct {
159
+ /* type objects */
160
+ PyTypeObject *DateType;
161
+ PyTypeObject *DateTimeType;
162
+ PyTypeObject *TimeType;
163
+ PyTypeObject *DeltaType;
164
+ PyTypeObject *TZInfoType;
165
+
166
+ /* singletons */
167
+ PyObject *TimeZone_UTC;
168
+
169
+ /* constructors */
170
+ PyObject *(*Date_FromDate)(int, int, int, PyTypeObject*);
171
+ PyObject *(*DateTime_FromDateAndTime)(int, int, int, int, int, int, int,
172
+ PyObject*, PyTypeObject*);
173
+ PyObject *(*Time_FromTime)(int, int, int, int, PyObject*, PyTypeObject*);
174
+ PyObject *(*Delta_FromDelta)(int, int, int, int, PyTypeObject*);
175
+ PyObject *(*TimeZone_FromTimeZone)(PyObject *offset, PyObject *name);
176
+
177
+ /* constructors for the DB API */
178
+ PyObject *(*DateTime_FromTimestamp)(PyObject*, PyObject*, PyObject*);
179
+ PyObject *(*Date_FromTimestamp)(PyObject*, PyObject*);
180
+
181
+ /* PEP 495 constructors */
182
+ PyObject *(*DateTime_FromDateAndTimeAndFold)(int, int, int, int, int, int, int,
183
+ PyObject*, int, PyTypeObject*);
184
+ PyObject *(*Time_FromTimeAndFold)(int, int, int, int, PyObject*, int, PyTypeObject*);
185
+
186
+ } PyDateTime_CAPI;
187
+
188
+ #define PyDateTime_CAPSULE_NAME "datetime.datetime_CAPI"
189
+
190
+
191
+ /* This block is only used as part of the public API and should not be
192
+ * included in _datetimemodule.c, which does not use the C API capsule.
193
+ * See bpo-35081 for more details.
194
+ * */
195
+ #ifndef _PY_DATETIME_IMPL
196
+ /* Define global variable for the C API and a macro for setting it. */
197
+ static PyDateTime_CAPI *PyDateTimeAPI = NULL;
198
+
199
+ #define PyDateTime_IMPORT \
200
+ PyDateTimeAPI = (PyDateTime_CAPI *)PyCapsule_Import(PyDateTime_CAPSULE_NAME, 0)
201
+
202
+ /* Macro for access to the UTC singleton */
203
+ #define PyDateTime_TimeZone_UTC PyDateTimeAPI->TimeZone_UTC
204
+
205
+ /* Macros for type checking when not building the Python core. */
206
+ #define PyDate_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->DateType)
207
+ #define PyDate_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->DateType)
208
+
209
+ #define PyDateTime_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->DateTimeType)
210
+ #define PyDateTime_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->DateTimeType)
211
+
212
+ #define PyTime_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->TimeType)
213
+ #define PyTime_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->TimeType)
214
+
215
+ #define PyDelta_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->DeltaType)
216
+ #define PyDelta_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->DeltaType)
217
+
218
+ #define PyTZInfo_Check(op) PyObject_TypeCheck((op), PyDateTimeAPI->TZInfoType)
219
+ #define PyTZInfo_CheckExact(op) Py_IS_TYPE((op), PyDateTimeAPI->TZInfoType)
220
+
221
+
222
+ /* Macros for accessing constructors in a simplified fashion. */
223
+ #define PyDate_FromDate(year, month, day) \
224
+ PyDateTimeAPI->Date_FromDate((year), (month), (day), PyDateTimeAPI->DateType)
225
+
226
+ #define PyDateTime_FromDateAndTime(year, month, day, hour, min, sec, usec) \
227
+ PyDateTimeAPI->DateTime_FromDateAndTime((year), (month), (day), (hour), \
228
+ (min), (sec), (usec), Py_None, PyDateTimeAPI->DateTimeType)
229
+
230
+ #define PyDateTime_FromDateAndTimeAndFold(year, month, day, hour, min, sec, usec, fold) \
231
+ PyDateTimeAPI->DateTime_FromDateAndTimeAndFold((year), (month), (day), (hour), \
232
+ (min), (sec), (usec), Py_None, (fold), PyDateTimeAPI->DateTimeType)
233
+
234
+ #define PyTime_FromTime(hour, minute, second, usecond) \
235
+ PyDateTimeAPI->Time_FromTime((hour), (minute), (second), (usecond), \
236
+ Py_None, PyDateTimeAPI->TimeType)
237
+
238
+ #define PyTime_FromTimeAndFold(hour, minute, second, usecond, fold) \
239
+ PyDateTimeAPI->Time_FromTimeAndFold((hour), (minute), (second), (usecond), \
240
+ Py_None, (fold), PyDateTimeAPI->TimeType)
241
+
242
+ #define PyDelta_FromDSU(days, seconds, useconds) \
243
+ PyDateTimeAPI->Delta_FromDelta((days), (seconds), (useconds), 1, \
244
+ PyDateTimeAPI->DeltaType)
245
+
246
+ #define PyTimeZone_FromOffset(offset) \
247
+ PyDateTimeAPI->TimeZone_FromTimeZone((offset), NULL)
248
+
249
+ #define PyTimeZone_FromOffsetAndName(offset, name) \
250
+ PyDateTimeAPI->TimeZone_FromTimeZone((offset), (name))
251
+
252
+ /* Macros supporting the DB API. */
253
+ #define PyDateTime_FromTimestamp(args) \
254
+ PyDateTimeAPI->DateTime_FromTimestamp( \
255
+ (PyObject*) (PyDateTimeAPI->DateTimeType), (args), NULL)
256
+
257
+ #define PyDate_FromTimestamp(args) \
258
+ PyDateTimeAPI->Date_FromTimestamp( \
259
+ (PyObject*) (PyDateTimeAPI->DateType), (args))
260
+
261
+ #endif /* !defined(_PY_DATETIME_IMPL) */
262
+
263
+ #ifdef __cplusplus
264
+ }
265
+ #endif
266
+ #endif
267
+ #endif /* !Py_LIMITED_API */
@@ -0,0 +1,100 @@
1
+ /* Descriptors */
2
+ #ifndef Py_DESCROBJECT_H
3
+ #define Py_DESCROBJECT_H
4
+ #ifdef __cplusplus
5
+ extern "C" {
6
+ #endif
7
+
8
+ typedef PyObject *(*getter)(PyObject *, void *);
9
+ typedef int (*setter)(PyObject *, PyObject *, void *);
10
+
11
+ struct PyGetSetDef {
12
+ const char *name;
13
+ getter get;
14
+ setter set;
15
+ const char *doc;
16
+ void *closure;
17
+ };
18
+
19
+ PyAPI_DATA(PyTypeObject) PyClassMethodDescr_Type;
20
+ PyAPI_DATA(PyTypeObject) PyGetSetDescr_Type;
21
+ PyAPI_DATA(PyTypeObject) PyMemberDescr_Type;
22
+ PyAPI_DATA(PyTypeObject) PyMethodDescr_Type;
23
+ PyAPI_DATA(PyTypeObject) PyWrapperDescr_Type;
24
+ PyAPI_DATA(PyTypeObject) PyDictProxy_Type;
25
+ PyAPI_DATA(PyTypeObject) PyProperty_Type;
26
+
27
+ PyAPI_FUNC(PyObject *) PyDescr_NewMethod(PyTypeObject *, PyMethodDef *);
28
+ PyAPI_FUNC(PyObject *) PyDescr_NewClassMethod(PyTypeObject *, PyMethodDef *);
29
+ PyAPI_FUNC(PyObject *) PyDescr_NewMember(PyTypeObject *, PyMemberDef *);
30
+ PyAPI_FUNC(PyObject *) PyDescr_NewGetSet(PyTypeObject *, PyGetSetDef *);
31
+
32
+ PyAPI_FUNC(PyObject *) PyDictProxy_New(PyObject *);
33
+ PyAPI_FUNC(PyObject *) PyWrapper_New(PyObject *, PyObject *);
34
+
35
+
36
+ /* An array of PyMemberDef structures defines the name, type and offset
37
+ of selected members of a C structure. These can be read by
38
+ PyMember_GetOne() and set by PyMember_SetOne() (except if their READONLY
39
+ flag is set). The array must be terminated with an entry whose name
40
+ pointer is NULL. */
41
+ struct PyMemberDef {
42
+ const char *name;
43
+ int type;
44
+ Py_ssize_t offset;
45
+ int flags;
46
+ const char *doc;
47
+ };
48
+
49
+ // These constants used to be in structmember.h, not prefixed by Py_.
50
+ // (structmember.h now has aliases to the new names.)
51
+
52
+ /* Types */
53
+ #define Py_T_SHORT 0
54
+ #define Py_T_INT 1
55
+ #define Py_T_LONG 2
56
+ #define Py_T_FLOAT 3
57
+ #define Py_T_DOUBLE 4
58
+ #define Py_T_STRING 5
59
+ #define _Py_T_OBJECT 6 // Deprecated, use Py_T_OBJECT_EX instead
60
+ /* the ordering here is weird for binary compatibility */
61
+ #define Py_T_CHAR 7 /* 1-character string */
62
+ #define Py_T_BYTE 8 /* 8-bit signed int */
63
+ /* unsigned variants: */
64
+ #define Py_T_UBYTE 9
65
+ #define Py_T_USHORT 10
66
+ #define Py_T_UINT 11
67
+ #define Py_T_ULONG 12
68
+
69
+ /* Added by Jack: strings contained in the structure */
70
+ #define Py_T_STRING_INPLACE 13
71
+
72
+ /* Added by Lillo: bools contained in the structure (assumed char) */
73
+ #define Py_T_BOOL 14
74
+
75
+ #define Py_T_OBJECT_EX 16
76
+ #define Py_T_LONGLONG 17
77
+ #define Py_T_ULONGLONG 18
78
+
79
+ #define Py_T_PYSSIZET 19 /* Py_ssize_t */
80
+ #define _Py_T_NONE 20 // Deprecated. Value is always None.
81
+
82
+ /* Flags */
83
+ #define Py_READONLY 1
84
+ #define Py_AUDIT_READ 2 // Added in 3.10, harmless no-op before that
85
+ #define _Py_WRITE_RESTRICTED 4 // Deprecated, no-op. Do not reuse the value.
86
+ #define Py_RELATIVE_OFFSET 8
87
+
88
+ PyAPI_FUNC(PyObject *) PyMember_GetOne(const char *, PyMemberDef *);
89
+ PyAPI_FUNC(int) PyMember_SetOne(char *, PyMemberDef *, PyObject *);
90
+
91
+ #ifndef Py_LIMITED_API
92
+ # define Py_CPYTHON_DESCROBJECT_H
93
+ # include "cpython/descrobject.h"
94
+ # undef Py_CPYTHON_DESCROBJECT_H
95
+ #endif
96
+
97
+ #ifdef __cplusplus
98
+ }
99
+ #endif
100
+ #endif /* !Py_DESCROBJECT_H */
@@ -0,0 +1,108 @@
1
+ #ifndef Py_DICTOBJECT_H
2
+ #define Py_DICTOBJECT_H
3
+ #ifdef __cplusplus
4
+ extern "C" {
5
+ #endif
6
+
7
+ /* Dictionary object type -- mapping from hashable object to object */
8
+
9
+ /* The distribution includes a separate file, Objects/dictnotes.txt,
10
+ describing explorations into dictionary design and optimization.
11
+ It covers typical dictionary use patterns, the parameters for
12
+ tuning dictionaries, and several ideas for possible optimizations.
13
+ */
14
+
15
+ PyAPI_DATA(PyTypeObject) PyDict_Type;
16
+
17
+ #define PyDict_Check(op) \
18
+ PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_DICT_SUBCLASS)
19
+ #define PyDict_CheckExact(op) Py_IS_TYPE((op), &PyDict_Type)
20
+
21
+ PyAPI_FUNC(PyObject *) PyDict_New(void);
22
+ PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key);
23
+ PyAPI_FUNC(PyObject *) PyDict_GetItemWithError(PyObject *mp, PyObject *key);
24
+ PyAPI_FUNC(int) PyDict_SetItem(PyObject *mp, PyObject *key, PyObject *item);
25
+ PyAPI_FUNC(int) PyDict_DelItem(PyObject *mp, PyObject *key);
26
+ PyAPI_FUNC(void) PyDict_Clear(PyObject *mp);
27
+ PyAPI_FUNC(int) PyDict_Next(
28
+ PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value);
29
+ PyAPI_FUNC(PyObject *) PyDict_Keys(PyObject *mp);
30
+ PyAPI_FUNC(PyObject *) PyDict_Values(PyObject *mp);
31
+ PyAPI_FUNC(PyObject *) PyDict_Items(PyObject *mp);
32
+ PyAPI_FUNC(Py_ssize_t) PyDict_Size(PyObject *mp);
33
+ PyAPI_FUNC(PyObject *) PyDict_Copy(PyObject *mp);
34
+ PyAPI_FUNC(int) PyDict_Contains(PyObject *mp, PyObject *key);
35
+
36
+ /* PyDict_Update(mp, other) is equivalent to PyDict_Merge(mp, other, 1). */
37
+ PyAPI_FUNC(int) PyDict_Update(PyObject *mp, PyObject *other);
38
+
39
+ /* PyDict_Merge updates/merges from a mapping object (an object that
40
+ supports PyMapping_Keys() and PyObject_GetItem()). If override is true,
41
+ the last occurrence of a key wins, else the first. The Python
42
+ dict.update(other) is equivalent to PyDict_Merge(dict, other, 1).
43
+ */
44
+ PyAPI_FUNC(int) PyDict_Merge(PyObject *mp,
45
+ PyObject *other,
46
+ int override);
47
+
48
+ /* PyDict_MergeFromSeq2 updates/merges from an iterable object producing
49
+ iterable objects of length 2. If override is true, the last occurrence
50
+ of a key wins, else the first. The Python dict constructor dict(seq2)
51
+ is equivalent to dict={}; PyDict_MergeFromSeq(dict, seq2, 1).
52
+ */
53
+ PyAPI_FUNC(int) PyDict_MergeFromSeq2(PyObject *d,
54
+ PyObject *seq2,
55
+ int override);
56
+
57
+ PyAPI_FUNC(PyObject *) PyDict_GetItemString(PyObject *dp, const char *key);
58
+ PyAPI_FUNC(int) PyDict_SetItemString(PyObject *dp, const char *key, PyObject *item);
59
+ PyAPI_FUNC(int) PyDict_DelItemString(PyObject *dp, const char *key);
60
+
61
+ #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030D0000
62
+ // Return the object from dictionary *op* which has a key *key*.
63
+ // - If the key is present, set *result to a new strong reference to the value
64
+ // and return 1.
65
+ // - If the key is missing, set *result to NULL and return 0 .
66
+ // - On error, raise an exception and return -1.
67
+ PyAPI_FUNC(int) PyDict_GetItemRef(PyObject *mp, PyObject *key, PyObject **result);
68
+ PyAPI_FUNC(int) PyDict_GetItemStringRef(PyObject *mp, const char *key, PyObject **result);
69
+ #endif
70
+
71
+ #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000
72
+ PyAPI_FUNC(PyObject *) PyObject_GenericGetDict(PyObject *, void *);
73
+ #endif
74
+
75
+ /* Dictionary (keys, values, items) views */
76
+
77
+ PyAPI_DATA(PyTypeObject) PyDictKeys_Type;
78
+ PyAPI_DATA(PyTypeObject) PyDictValues_Type;
79
+ PyAPI_DATA(PyTypeObject) PyDictItems_Type;
80
+
81
+ #define PyDictKeys_Check(op) PyObject_TypeCheck((op), &PyDictKeys_Type)
82
+ #define PyDictValues_Check(op) PyObject_TypeCheck((op), &PyDictValues_Type)
83
+ #define PyDictItems_Check(op) PyObject_TypeCheck((op), &PyDictItems_Type)
84
+ /* This excludes Values, since they are not sets. */
85
+ # define PyDictViewSet_Check(op) \
86
+ (PyDictKeys_Check(op) || PyDictItems_Check(op))
87
+
88
+ /* Dictionary (key, value, items) iterators */
89
+
90
+ PyAPI_DATA(PyTypeObject) PyDictIterKey_Type;
91
+ PyAPI_DATA(PyTypeObject) PyDictIterValue_Type;
92
+ PyAPI_DATA(PyTypeObject) PyDictIterItem_Type;
93
+
94
+ PyAPI_DATA(PyTypeObject) PyDictRevIterKey_Type;
95
+ PyAPI_DATA(PyTypeObject) PyDictRevIterItem_Type;
96
+ PyAPI_DATA(PyTypeObject) PyDictRevIterValue_Type;
97
+
98
+
99
+ #ifndef Py_LIMITED_API
100
+ # define Py_CPYTHON_DICTOBJECT_H
101
+ # include "cpython/dictobject.h"
102
+ # undef Py_CPYTHON_DICTOBJECT_H
103
+ #endif
104
+
105
+ #ifdef __cplusplus
106
+ }
107
+ #endif
108
+ #endif /* !Py_DICTOBJECT_H */