omlish 0.0.0.dev423__py3-none-any.whl → 0.0.0.dev484__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.

Potentially problematic release.


This version of omlish might be problematic. Click here for more details.

Files changed (464) hide show
  1. omlish/{.manifests.json → .omlish-manifests.json} +12 -0
  2. omlish/__about__.py +21 -18
  3. omlish/argparse/all.py +17 -9
  4. omlish/argparse/cli.py +16 -3
  5. omlish/argparse/utils.py +21 -0
  6. omlish/asyncs/all.py +0 -13
  7. omlish/asyncs/asyncio/rlock.py +110 -0
  8. omlish/asyncs/asyncio/subprocesses.py +2 -2
  9. omlish/asyncs/asyncio/sync.py +43 -0
  10. omlish/asyncs/asyncio/utils.py +2 -0
  11. omlish/asyncs/ioproxy/proxy.py +1 -1
  12. omlish/asyncs/sync.py +25 -0
  13. omlish/bootstrap/_marshal.py +1 -1
  14. omlish/bootstrap/diag.py +12 -21
  15. omlish/bootstrap/main.py +2 -5
  16. omlish/bootstrap/sys.py +27 -28
  17. omlish/c3.py +4 -1
  18. omlish/cexts/include/omlish/omlish.hh +1 -0
  19. omlish/collections/__init__.py +13 -1
  20. omlish/collections/attrregistry.py +210 -0
  21. omlish/collections/cache/impl.py +3 -2
  22. omlish/collections/identity.py +1 -0
  23. omlish/collections/mappings.py +28 -0
  24. omlish/collections/trie.py +5 -1
  25. omlish/collections/utils.py +77 -0
  26. omlish/concurrent/__init__.py +0 -11
  27. omlish/concurrent/all.py +18 -0
  28. omlish/concurrent/futures.py +25 -0
  29. omlish/concurrent/threadlets.py +1 -1
  30. omlish/configs/processing/flattening.py +1 -1
  31. omlish/configs/processing/merging.py +8 -6
  32. omlish/configs/types.py +1 -1
  33. omlish/daemons/__init__.py +70 -0
  34. omlish/daemons/daemon.py +2 -2
  35. omlish/daemons/launching.py +2 -2
  36. omlish/daemons/reparent.py +2 -3
  37. omlish/daemons/spawning.py +2 -3
  38. omlish/dataclasses/__init__.py +5 -5
  39. omlish/dataclasses/errors.py +1 -1
  40. omlish/dataclasses/impl/api/classes/decorator.py +3 -0
  41. omlish/dataclasses/impl/api/classes/make.py +4 -1
  42. omlish/dataclasses/impl/concerns/doc.py +1 -1
  43. omlish/dataclasses/impl/concerns/repr.py +15 -2
  44. omlish/dataclasses/impl/configs.py +97 -36
  45. omlish/dataclasses/impl/generation/compilation.py +21 -19
  46. omlish/dataclasses/impl/generation/globals.py +1 -0
  47. omlish/dataclasses/impl/generation/ops.py +1 -0
  48. omlish/dataclasses/impl/generation/processor.py +105 -24
  49. omlish/dataclasses/impl/processing/base.py +8 -0
  50. omlish/dataclasses/impl/processing/driving.py +8 -8
  51. omlish/dataclasses/specs.py +34 -2
  52. omlish/dataclasses/tools/as_.py +0 -12
  53. omlish/dataclasses/tools/modifiers.py +5 -0
  54. omlish/dataclasses/tools/static.py +1 -1
  55. omlish/diag/_pycharm/runhack.py +1 -1
  56. omlish/diag/{lslocks.py → cmds/lslocks.py} +6 -6
  57. omlish/diag/{lsof.py → cmds/lsof.py} +6 -6
  58. omlish/diag/{ps.py → cmds/ps.py} +6 -6
  59. omlish/diag/procfs.py +4 -4
  60. omlish/diag/pycharm.py +16 -2
  61. omlish/diag/pydevd.py +58 -40
  62. omlish/diag/replserver/console.py +3 -3
  63. omlish/diag/replserver/server.py +2 -2
  64. omlish/dispatch/__init__.py +18 -12
  65. omlish/dispatch/methods.py +50 -140
  66. omlish/dom/rendering.py +1 -1
  67. omlish/formats/dotenv.py +8 -8
  68. omlish/formats/json/stream/__init__.py +18 -3
  69. omlish/formats/json/stream/building.py +2 -2
  70. omlish/formats/json/stream/lexing.py +401 -67
  71. omlish/formats/json/stream/parsing.py +32 -10
  72. omlish/formats/json/stream/rendering.py +6 -6
  73. omlish/formats/json/stream/utils.py +132 -30
  74. omlish/formats/json5/literals.py +7 -4
  75. omlish/formats/json5/parsing.py +33 -79
  76. omlish/formats/json5/stream.py +77 -0
  77. omlish/formats/logfmt.py +8 -2
  78. omlish/funcs/genmachine.py +2 -2
  79. omlish/funcs/guard.py +225 -0
  80. omlish/graphs/dot/rendering.py +1 -1
  81. omlish/http/all.py +122 -53
  82. omlish/http/asgi.py +2 -2
  83. omlish/http/clients/__init__.py +0 -34
  84. omlish/http/clients/asyncs.py +153 -0
  85. omlish/http/clients/base.py +63 -122
  86. omlish/http/clients/coro/sync.py +171 -0
  87. omlish/http/clients/default.py +209 -30
  88. omlish/http/clients/executor.py +56 -0
  89. omlish/http/clients/httpx.py +78 -13
  90. omlish/http/clients/middleware.py +181 -0
  91. omlish/http/clients/sync.py +151 -0
  92. omlish/http/clients/syncasync.py +49 -0
  93. omlish/http/clients/urllib.py +8 -5
  94. omlish/http/coro/client/{client.py → connection.py} +43 -37
  95. omlish/http/coro/client/headers.py +5 -5
  96. omlish/http/coro/client/response.py +37 -38
  97. omlish/http/coro/client/status.py +4 -4
  98. omlish/http/coro/{client/io.py → io.py} +19 -2
  99. omlish/http/coro/server/fdio.py +10 -9
  100. omlish/http/coro/server/server.py +14 -41
  101. omlish/http/coro/server/sockets.py +7 -6
  102. omlish/http/flasky/__init__.py +40 -0
  103. omlish/http/flasky/_compat.py +2 -0
  104. omlish/http/flasky/api.py +82 -0
  105. omlish/http/flasky/app.py +203 -0
  106. omlish/http/flasky/cvs.py +59 -0
  107. omlish/http/flasky/requests.py +20 -0
  108. omlish/http/flasky/responses.py +23 -0
  109. omlish/http/flasky/routes.py +23 -0
  110. omlish/http/flasky/types.py +15 -0
  111. omlish/http/handlers.py +3 -2
  112. omlish/http/headers.py +69 -35
  113. omlish/http/sse.py +1 -1
  114. omlish/http/urls.py +67 -0
  115. omlish/inject/__init__.py +173 -126
  116. omlish/inject/_dataclasses.py +4986 -0
  117. omlish/inject/binder.py +10 -49
  118. omlish/inject/elements.py +27 -0
  119. omlish/inject/{utils.py → helpers/constfn.py} +3 -3
  120. omlish/inject/{tags.py → helpers/id.py} +2 -2
  121. omlish/inject/helpers/multis.py +143 -0
  122. omlish/inject/helpers/wrappers.py +54 -0
  123. omlish/inject/impl/elements.py +52 -22
  124. omlish/inject/impl/injector.py +76 -49
  125. omlish/inject/impl/inspect.py +11 -1
  126. omlish/inject/impl/maysync.py +43 -0
  127. omlish/inject/impl/multis.py +10 -7
  128. omlish/inject/impl/privates.py +8 -8
  129. omlish/inject/impl/providers.py +23 -34
  130. omlish/inject/impl/providersmap.py +43 -0
  131. omlish/inject/impl/proxy.py +0 -2
  132. omlish/inject/impl/scopes.py +19 -23
  133. omlish/inject/impl/sync.py +41 -0
  134. omlish/inject/injector.py +37 -8
  135. omlish/inject/inspect.py +35 -0
  136. omlish/inject/listeners.py +4 -4
  137. omlish/inject/managed.py +54 -18
  138. omlish/inject/maysync.py +27 -0
  139. omlish/inject/multis.py +8 -0
  140. omlish/inject/overrides.py +3 -3
  141. omlish/inject/privates.py +6 -0
  142. omlish/inject/providers.py +8 -1
  143. omlish/inject/scopes.py +40 -12
  144. omlish/inject/sync.py +49 -0
  145. omlish/io/buffers.py +119 -1
  146. omlish/io/readers.py +29 -0
  147. omlish/iterators/__init__.py +28 -20
  148. omlish/iterators/transforms.py +204 -0
  149. omlish/lang/__init__.py +240 -129
  150. omlish/lang/_asyncs.cc +186 -0
  151. omlish/lang/asyncs.py +67 -43
  152. omlish/lang/{attrs.py → attrstorage.py} +15 -15
  153. omlish/lang/cached/property.py +2 -2
  154. omlish/lang/casing.py +11 -0
  155. omlish/lang/classes/bindable.py +2 -3
  156. omlish/lang/classes/restrict.py +8 -0
  157. omlish/lang/classes/simple.py +26 -4
  158. omlish/lang/collections.py +1 -1
  159. omlish/lang/contextmanagers.py +59 -9
  160. omlish/lang/functions.py +31 -33
  161. omlish/lang/imports/_capture.cc +103 -0
  162. omlish/lang/imports/capture.py +902 -0
  163. omlish/lang/imports/lazy.py +0 -25
  164. omlish/lang/imports/proxy.py +559 -0
  165. omlish/lang/iterables.py +2 -2
  166. omlish/lang/lazyglobals.py +49 -14
  167. omlish/lang/maybes.py +2 -1
  168. omlish/lang/maysync.py +2 -2
  169. omlish/lang/params.py +17 -0
  170. omlish/lang/recursion.py +0 -1
  171. omlish/lang/resources.py +1 -1
  172. omlish/lang/sequences.py +124 -0
  173. omlish/lifecycles/contextmanagers.py +1 -2
  174. omlish/lifecycles/controller.py +1 -2
  175. omlish/lite/abstract.py +54 -24
  176. omlish/lite/asyncs.py +146 -0
  177. omlish/lite/attrops.py +415 -0
  178. omlish/lite/cached.py +57 -1
  179. omlish/lite/contextmanagers.py +4 -4
  180. omlish/lite/dataclasses.py +55 -0
  181. omlish/lite/inject.py +5 -4
  182. omlish/lite/marshal.py +1 -0
  183. omlish/lite/maybes.py +10 -2
  184. omlish/lite/maysync.py +22 -5
  185. omlish/lite/pycharm.py +1 -1
  186. omlish/lite/strings.py +0 -7
  187. omlish/lite/timing.py +6 -3
  188. omlish/lite/typing.py +6 -0
  189. omlish/logs/_amalg.py +8 -0
  190. omlish/logs/all.py +59 -31
  191. omlish/logs/base.py +204 -0
  192. omlish/logs/contexts.py +171 -0
  193. omlish/logs/formatters.py +13 -0
  194. omlish/logs/infos.py +377 -0
  195. omlish/logs/levels.py +97 -0
  196. omlish/logs/modules.py +13 -0
  197. omlish/logs/protocols.py +32 -0
  198. omlish/logs/standard.py +20 -15
  199. omlish/logs/std/configs.py +29 -0
  200. omlish/logs/{filters.py → std/filters.py} +1 -1
  201. omlish/logs/std/formatters.py +25 -0
  202. omlish/logs/std/handlers.py +19 -0
  203. omlish/logs/{json.py → std/json.py} +2 -2
  204. omlish/logs/std/loggers.py +48 -0
  205. omlish/logs/{proxy.py → std/proxy.py} +3 -3
  206. omlish/logs/std/records.py +671 -0
  207. omlish/logs/typed/bindings.py +108 -37
  208. omlish/logs/typed/types.py +17 -1
  209. omlish/logs/typed/values.py +2 -2
  210. omlish/logs/utils.py +60 -4
  211. omlish/logs/warnings.py +8 -0
  212. omlish/manifests/loading.py +8 -1
  213. omlish/marshal/__init__.py +54 -22
  214. omlish/marshal/_dataclasses.py +2774 -0
  215. omlish/marshal/base/configs.py +12 -0
  216. omlish/marshal/base/contexts.py +36 -21
  217. omlish/marshal/base/funcs.py +8 -11
  218. omlish/marshal/base/options.py +8 -0
  219. omlish/marshal/base/registries.py +146 -44
  220. omlish/marshal/base/types.py +40 -16
  221. omlish/marshal/composite/iterables.py +33 -20
  222. omlish/marshal/composite/literals.py +20 -18
  223. omlish/marshal/composite/mappings.py +36 -23
  224. omlish/marshal/composite/maybes.py +29 -19
  225. omlish/marshal/composite/newtypes.py +16 -16
  226. omlish/marshal/composite/optionals.py +14 -14
  227. omlish/marshal/composite/special.py +15 -15
  228. omlish/marshal/composite/unions/literals.py +93 -0
  229. omlish/marshal/composite/unions/primitives.py +103 -0
  230. omlish/marshal/factories/invalidate.py +18 -68
  231. omlish/marshal/factories/method.py +26 -0
  232. omlish/marshal/factories/moduleimport/factories.py +22 -65
  233. omlish/marshal/factories/multi.py +13 -25
  234. omlish/marshal/factories/recursive.py +42 -56
  235. omlish/marshal/factories/typecache.py +29 -74
  236. omlish/marshal/factories/typemap.py +42 -43
  237. omlish/marshal/objects/dataclasses.py +129 -106
  238. omlish/marshal/objects/marshal.py +18 -14
  239. omlish/marshal/objects/namedtuples.py +48 -42
  240. omlish/marshal/objects/unmarshal.py +19 -15
  241. omlish/marshal/polymorphism/marshal.py +9 -11
  242. omlish/marshal/polymorphism/metadata.py +16 -5
  243. omlish/marshal/polymorphism/standard.py +13 -1
  244. omlish/marshal/polymorphism/unions.py +15 -105
  245. omlish/marshal/polymorphism/unmarshal.py +9 -10
  246. omlish/marshal/singular/enums.py +14 -18
  247. omlish/marshal/standard.py +10 -6
  248. omlish/marshal/trivial/any.py +1 -1
  249. omlish/marshal/trivial/forbidden.py +21 -26
  250. omlish/math/fixed.py +2 -2
  251. omlish/metadata.py +23 -1
  252. omlish/os/atomics.py +2 -2
  253. omlish/os/forkhooks.py +4 -0
  254. omlish/os/journald.py +3 -3
  255. omlish/os/pidfiles/pinning.py +2 -2
  256. omlish/reflect/ops.py +9 -0
  257. omlish/reflect/types.py +44 -8
  258. omlish/secrets/marshal.py +1 -1
  259. omlish/secrets/secrets.py +6 -3
  260. omlish/sockets/addresses.py +1 -1
  261. omlish/sockets/server/handlers.py +2 -2
  262. omlish/sockets/server/server.py +4 -3
  263. omlish/sockets/server/ssl.py +2 -2
  264. omlish/specs/jmespath/__init__.py +12 -3
  265. omlish/specs/jmespath/_dataclasses.py +2893 -0
  266. omlish/specs/jmespath/ast.py +1 -1
  267. omlish/specs/jsonrpc/__init__.py +13 -0
  268. omlish/specs/jsonrpc/_marshal.py +32 -23
  269. omlish/specs/jsonrpc/conns.py +10 -7
  270. omlish/specs/jsonschema/_marshal.py +1 -1
  271. omlish/specs/jsonschema/keywords/__init__.py +7 -0
  272. omlish/specs/jsonschema/keywords/_dataclasses.py +1644 -0
  273. omlish/specs/openapi/_marshal.py +31 -22
  274. omlish/sql/__init__.py +15 -20
  275. omlish/sql/{tabledefs/alchemy.py → alchemy/tabledefs.py} +2 -2
  276. omlish/sql/queries/_marshal.py +3 -3
  277. omlish/sql/queries/params.py +1 -1
  278. omlish/sql/queries/rendering.py +1 -1
  279. omlish/sql/tabledefs/_marshal.py +1 -1
  280. omlish/subprocesses/all.py +135 -0
  281. omlish/subprocesses/base.py +8 -3
  282. omlish/subprocesses/editor.py +1 -1
  283. omlish/sync.py +181 -20
  284. omlish/term/alt.py +60 -0
  285. omlish/term/confirm.py +8 -8
  286. omlish/term/pager.py +235 -0
  287. omlish/term/terminfo.py +935 -0
  288. omlish/term/termstate.py +67 -0
  289. omlish/term/vt100/terminal.py +0 -3
  290. omlish/testing/pytest/plugins/asyncs/fixtures.py +4 -1
  291. omlish/testing/pytest/plugins/skips.py +2 -5
  292. omlish/testing/unittest/main.py +3 -3
  293. omlish/text/docwrap/__init__.py +3 -0
  294. omlish/text/docwrap/__main__.py +11 -0
  295. omlish/text/docwrap/api.py +83 -0
  296. omlish/text/docwrap/cli.py +86 -0
  297. omlish/text/docwrap/groups.py +84 -0
  298. omlish/text/docwrap/lists.py +167 -0
  299. omlish/text/docwrap/parts.py +146 -0
  300. omlish/text/docwrap/reflowing.py +106 -0
  301. omlish/text/docwrap/rendering.py +151 -0
  302. omlish/text/docwrap/utils.py +11 -0
  303. omlish/text/docwrap/wrapping.py +59 -0
  304. omlish/text/filecache.py +2 -2
  305. omlish/text/lorem.py +6 -0
  306. omlish/text/parts.py +2 -2
  307. omlish/text/textwrap.py +51 -0
  308. omlish/typedvalues/__init__.py +1 -1
  309. omlish/typedvalues/marshal.py +85 -59
  310. omlish/typedvalues/values.py +2 -1
  311. {omlish-0.0.0.dev423.dist-info → omlish-0.0.0.dev484.dist-info}/METADATA +36 -38
  312. {omlish-0.0.0.dev423.dist-info → omlish-0.0.0.dev484.dist-info}/RECORD +323 -385
  313. omlish/asyncs/bluelet/LICENSE +0 -6
  314. omlish/asyncs/bluelet/all.py +0 -67
  315. omlish/asyncs/bluelet/api.py +0 -23
  316. omlish/asyncs/bluelet/core.py +0 -178
  317. omlish/asyncs/bluelet/events.py +0 -79
  318. omlish/asyncs/bluelet/files.py +0 -80
  319. omlish/asyncs/bluelet/runner.py +0 -417
  320. omlish/asyncs/bluelet/sockets.py +0 -216
  321. omlish/asyncs/bridge.py +0 -359
  322. omlish/asyncs/utils.py +0 -18
  323. omlish/dataclasses/impl/generation/mangling.py +0 -18
  324. omlish/defs.py +0 -216
  325. omlish/dispatch/_dispatch2.py +0 -69
  326. omlish/dispatch/_dispatch3.py +0 -108
  327. omlish/dynamic.py +0 -219
  328. omlish/formats/json/Json.g4 +0 -77
  329. omlish/formats/json/_antlr/JsonLexer.py +0 -109
  330. omlish/formats/json/_antlr/JsonListener.py +0 -61
  331. omlish/formats/json/_antlr/JsonParser.py +0 -457
  332. omlish/formats/json/_antlr/JsonVisitor.py +0 -42
  333. omlish/formats/json5/Json5.g4 +0 -168
  334. omlish/formats/json5/_antlr/Json5Lexer.py +0 -354
  335. omlish/formats/json5/_antlr/Json5Listener.py +0 -79
  336. omlish/formats/json5/_antlr/Json5Parser.py +0 -617
  337. omlish/formats/json5/_antlr/Json5Visitor.py +0 -52
  338. omlish/funcs/match.py +0 -227
  339. omlish/io/trampoline.py +0 -289
  340. omlish/lang/imports/proxyinit.py +0 -665
  341. omlish/lite/logs.py +0 -4
  342. omlish/lite/reprs.py +0 -85
  343. omlish/logs/abc.py +0 -319
  344. omlish/logs/callers.py +0 -67
  345. omlish/logs/color.py +0 -27
  346. omlish/logs/configs.py +0 -29
  347. omlish/logs/handlers.py +0 -17
  348. omlish/logs/protocol.py +0 -218
  349. omlish/logs/timing.py +0 -58
  350. omlish/marshal/factories/match.py +0 -34
  351. omlish/marshal/factories/simple.py +0 -28
  352. omlish/specs/irc/messages/base.py +0 -49
  353. omlish/specs/irc/messages/formats.py +0 -92
  354. omlish/specs/irc/messages/messages.py +0 -774
  355. omlish/specs/irc/messages/parsing.py +0 -98
  356. omlish/specs/irc/numerics/formats.py +0 -97
  357. omlish/specs/irc/numerics/numerics.py +0 -865
  358. omlish/specs/irc/numerics/types.py +0 -59
  359. omlish/specs/irc/protocol/LICENSE +0 -11
  360. omlish/specs/irc/protocol/__init__.py +0 -61
  361. omlish/specs/irc/protocol/consts.py +0 -6
  362. omlish/specs/irc/protocol/errors.py +0 -30
  363. omlish/specs/irc/protocol/message.py +0 -21
  364. omlish/specs/irc/protocol/nuh.py +0 -55
  365. omlish/specs/irc/protocol/parsing.py +0 -158
  366. omlish/specs/irc/protocol/rendering.py +0 -153
  367. omlish/specs/irc/protocol/tags.py +0 -102
  368. omlish/specs/irc/protocol/utils.py +0 -30
  369. omlish/specs/proto/Protobuf3.g4 +0 -396
  370. omlish/specs/proto/__init__.py +0 -0
  371. omlish/specs/proto/_antlr/Protobuf3Lexer.py +0 -340
  372. omlish/specs/proto/_antlr/Protobuf3Listener.py +0 -448
  373. omlish/specs/proto/_antlr/Protobuf3Parser.py +0 -3909
  374. omlish/specs/proto/_antlr/Protobuf3Visitor.py +0 -257
  375. omlish/specs/proto/_antlr/__init__.py +0 -0
  376. omlish/specs/proto/nodes.py +0 -54
  377. omlish/specs/proto/parsing.py +0 -97
  378. omlish/sql/parsing/Minisql.g4 +0 -292
  379. omlish/sql/parsing/__init__.py +0 -0
  380. omlish/sql/parsing/_antlr/MinisqlLexer.py +0 -322
  381. omlish/sql/parsing/_antlr/MinisqlListener.py +0 -511
  382. omlish/sql/parsing/_antlr/MinisqlParser.py +0 -3763
  383. omlish/sql/parsing/_antlr/MinisqlVisitor.py +0 -292
  384. omlish/sql/parsing/_antlr/__init__.py +0 -0
  385. omlish/sql/parsing/parsing.py +0 -119
  386. omlish/text/antlr/__init__.py +0 -3
  387. omlish/text/antlr/_runtime/BufferedTokenStream.py +0 -305
  388. omlish/text/antlr/_runtime/CommonTokenFactory.py +0 -64
  389. omlish/text/antlr/_runtime/CommonTokenStream.py +0 -90
  390. omlish/text/antlr/_runtime/FileStream.py +0 -30
  391. omlish/text/antlr/_runtime/InputStream.py +0 -90
  392. omlish/text/antlr/_runtime/IntervalSet.py +0 -183
  393. omlish/text/antlr/_runtime/LICENSE.txt +0 -28
  394. omlish/text/antlr/_runtime/LL1Analyzer.py +0 -176
  395. omlish/text/antlr/_runtime/Lexer.py +0 -332
  396. omlish/text/antlr/_runtime/ListTokenSource.py +0 -147
  397. omlish/text/antlr/_runtime/Parser.py +0 -583
  398. omlish/text/antlr/_runtime/ParserInterpreter.py +0 -173
  399. omlish/text/antlr/_runtime/ParserRuleContext.py +0 -189
  400. omlish/text/antlr/_runtime/PredictionContext.py +0 -632
  401. omlish/text/antlr/_runtime/Recognizer.py +0 -150
  402. omlish/text/antlr/_runtime/RuleContext.py +0 -230
  403. omlish/text/antlr/_runtime/StdinStream.py +0 -14
  404. omlish/text/antlr/_runtime/Token.py +0 -158
  405. omlish/text/antlr/_runtime/TokenStreamRewriter.py +0 -258
  406. omlish/text/antlr/_runtime/Utils.py +0 -36
  407. omlish/text/antlr/_runtime/__init__.py +0 -2
  408. omlish/text/antlr/_runtime/_all.py +0 -24
  409. omlish/text/antlr/_runtime/_pygrun.py +0 -174
  410. omlish/text/antlr/_runtime/atn/ATN.py +0 -135
  411. omlish/text/antlr/_runtime/atn/ATNConfig.py +0 -162
  412. omlish/text/antlr/_runtime/atn/ATNConfigSet.py +0 -215
  413. omlish/text/antlr/_runtime/atn/ATNDeserializationOptions.py +0 -27
  414. omlish/text/antlr/_runtime/atn/ATNDeserializer.py +0 -449
  415. omlish/text/antlr/_runtime/atn/ATNSimulator.py +0 -50
  416. omlish/text/antlr/_runtime/atn/ATNState.py +0 -267
  417. omlish/text/antlr/_runtime/atn/ATNType.py +0 -20
  418. omlish/text/antlr/_runtime/atn/LexerATNSimulator.py +0 -573
  419. omlish/text/antlr/_runtime/atn/LexerAction.py +0 -301
  420. omlish/text/antlr/_runtime/atn/LexerActionExecutor.py +0 -146
  421. omlish/text/antlr/_runtime/atn/ParserATNSimulator.py +0 -1664
  422. omlish/text/antlr/_runtime/atn/PredictionMode.py +0 -502
  423. omlish/text/antlr/_runtime/atn/SemanticContext.py +0 -333
  424. omlish/text/antlr/_runtime/atn/Transition.py +0 -271
  425. omlish/text/antlr/_runtime/atn/__init__.py +0 -4
  426. omlish/text/antlr/_runtime/dfa/DFA.py +0 -136
  427. omlish/text/antlr/_runtime/dfa/DFASerializer.py +0 -76
  428. omlish/text/antlr/_runtime/dfa/DFAState.py +0 -129
  429. omlish/text/antlr/_runtime/dfa/__init__.py +0 -4
  430. omlish/text/antlr/_runtime/error/DiagnosticErrorListener.py +0 -111
  431. omlish/text/antlr/_runtime/error/ErrorListener.py +0 -75
  432. omlish/text/antlr/_runtime/error/ErrorStrategy.py +0 -712
  433. omlish/text/antlr/_runtime/error/Errors.py +0 -176
  434. omlish/text/antlr/_runtime/error/__init__.py +0 -4
  435. omlish/text/antlr/_runtime/tree/Chunk.py +0 -33
  436. omlish/text/antlr/_runtime/tree/ParseTreeMatch.py +0 -121
  437. omlish/text/antlr/_runtime/tree/ParseTreePattern.py +0 -75
  438. omlish/text/antlr/_runtime/tree/ParseTreePatternMatcher.py +0 -377
  439. omlish/text/antlr/_runtime/tree/RuleTagToken.py +0 -53
  440. omlish/text/antlr/_runtime/tree/TokenTagToken.py +0 -50
  441. omlish/text/antlr/_runtime/tree/Tree.py +0 -194
  442. omlish/text/antlr/_runtime/tree/Trees.py +0 -114
  443. omlish/text/antlr/_runtime/tree/__init__.py +0 -2
  444. omlish/text/antlr/_runtime/xpath/XPath.py +0 -278
  445. omlish/text/antlr/_runtime/xpath/XPathLexer.py +0 -98
  446. omlish/text/antlr/_runtime/xpath/__init__.py +0 -4
  447. omlish/text/antlr/delimit.py +0 -109
  448. omlish/text/antlr/dot.py +0 -41
  449. omlish/text/antlr/errors.py +0 -14
  450. omlish/text/antlr/input.py +0 -96
  451. omlish/text/antlr/parsing.py +0 -54
  452. omlish/text/antlr/runtime.py +0 -102
  453. omlish/text/antlr/utils.py +0 -38
  454. /omlish/{asyncs/bluelet → cexts}/__init__.py +0 -0
  455. /omlish/{formats/json/_antlr → diag/cmds}/__init__.py +0 -0
  456. /omlish/{formats/json5/_antlr → http/clients/coro}/__init__.py +0 -0
  457. /omlish/{specs/irc → inject/helpers}/__init__.py +0 -0
  458. /omlish/{specs/irc/messages → logs/std}/__init__.py +0 -0
  459. /omlish/logs/{noisy.py → std/noisy.py} +0 -0
  460. /omlish/{specs/irc/numerics → marshal/composite/unions}/__init__.py +0 -0
  461. {omlish-0.0.0.dev423.dist-info → omlish-0.0.0.dev484.dist-info}/WHEEL +0 -0
  462. {omlish-0.0.0.dev423.dist-info → omlish-0.0.0.dev484.dist-info}/entry_points.txt +0 -0
  463. {omlish-0.0.0.dev423.dist-info → omlish-0.0.0.dev484.dist-info}/licenses/LICENSE +0 -0
  464. {omlish-0.0.0.dev423.dist-info → omlish-0.0.0.dev484.dist-info}/top_level.txt +0 -0
@@ -1,108 +0,0 @@
1
- import abc
2
- import typing as ta
3
- import weakref
4
-
5
- from .impls import find_impl as default_find_impl
6
-
7
-
8
- T = ta.TypeVar('T')
9
-
10
-
11
- ##
12
-
13
-
14
- class DispatchCacheProtocol(ta.Protocol[T]):
15
- def size(self) -> int: ...
16
- def prepare(self, cls: type) -> None: ...
17
- def clear(self) -> None: ...
18
- def put(self, cls: type, impl: T) -> None: ...
19
- def get(self, cls: type) -> T: ... # Raises[KeyError]
20
-
21
-
22
- class DispatcherProtocol(ta.Protocol[T]):
23
- def cache_size(self) -> int: ...
24
- def register(self, impl: T, cls_col: ta.Iterable[type]) -> T: ...
25
- def dispatch(self, cls: type) -> T | None: ...
26
-
27
-
28
- ##
29
-
30
-
31
- class DispatchCache(DispatchCacheProtocol[T]):
32
- def __init__(self) -> None:
33
- super().__init__()
34
-
35
- self._dct: dict[ta.Any, T] = {}
36
-
37
- def remove(k, self_ref=weakref.ref(self)):
38
- if (ref_self := self_ref()) is not None:
39
- dct = ref_self._dct # noqa
40
- try:
41
- del dct[k]
42
- except KeyError:
43
- pass
44
-
45
- self._remove = remove
46
-
47
- self._token: ta.Any = None
48
-
49
- def size(self) -> int:
50
- return len(self._dct)
51
-
52
- def prepare(self, cls: type) -> None:
53
- if self._token is None and hasattr(cls, '__abstractmethods__'):
54
- self._token = abc.get_cache_token()
55
-
56
- self.clear()
57
-
58
- def clear(self) -> None:
59
- if self._dct:
60
- self._dct.clear()
61
-
62
- def put(self, cls: type, impl: T) -> None:
63
- self._dct[weakref.ref(cls, self._remove)] = impl
64
-
65
- def get(self, cls: type) -> T:
66
- if self._token is not None and (current_token := abc.get_cache_token()) != self._token:
67
- self._dct.clear()
68
- self._token = current_token
69
-
70
- cls_ref = weakref.ref(cls)
71
- return self._dct[cls_ref]
72
-
73
-
74
- class Dispatcher(DispatcherProtocol[T]):
75
- def __init__(self, find_impl: ta.Callable[[type, ta.Mapping[type, T]], T | None] | None = None) -> None:
76
- super().__init__()
77
-
78
- if find_impl is None:
79
- find_impl = default_find_impl
80
- self._find_impl = find_impl
81
-
82
- self._impls_by_arg_cls: dict[type, T] = {}
83
- self._cache: DispatchCache[T | None] = DispatchCache()
84
-
85
- def cache_size(self) -> int:
86
- return self._cache.size()
87
-
88
- def register(self, impl: T, cls_col: ta.Iterable[type]) -> T:
89
- for cls in cls_col:
90
- self._impls_by_arg_cls[cls] = impl
91
- self._cache.prepare(cls)
92
-
93
- return impl
94
-
95
- def dispatch(self, cls: type) -> T | None:
96
- try:
97
- return self._cache.get(cls)
98
- except KeyError:
99
- pass
100
-
101
- impl: T | None
102
- try:
103
- impl = self._impls_by_arg_cls[cls]
104
- except KeyError:
105
- impl = self._find_impl(cls, self._impls_by_arg_cls)
106
-
107
- self._cache.put(cls, impl)
108
- return impl
omlish/dynamic.py DELETED
@@ -1,219 +0,0 @@
1
- """
2
- Dynamically scoped variables (implemented by stackwalking). Unlike threadlocals these are generator-correct both in
3
- binding and retrieval, and unlike ContextVars they require no manual context management. They are however *slow* and
4
- should be used sparingly (once per sql statement executed not once per inner function call).
5
-
6
- TODO:
7
- - clj-style binding conveyance
8
- - contextvar/async interop
9
- - 'partializer'
10
- """
11
- import contextlib
12
- import functools
13
- import sys
14
- import types
15
- import typing as ta
16
- import weakref
17
-
18
- from . import lang
19
-
20
-
21
- T = ta.TypeVar('T')
22
-
23
-
24
- ##
25
-
26
-
27
- _HOISTED_CODE_DEPTH: ta.MutableMapping[types.CodeType, int] = weakref.WeakKeyDictionary()
28
- _MAX_HOIST_DEPTH = 0
29
-
30
-
31
- def hoist(depth=0): # noqa
32
- def inner(fn):
33
- _HOISTED_CODE_DEPTH[fn.__code__] = depth
34
- global _MAX_HOIST_DEPTH
35
- _MAX_HOIST_DEPTH = max(_MAX_HOIST_DEPTH, depth)
36
- return fn
37
- return inner
38
-
39
-
40
- hoist()(contextlib.ExitStack.enter_context) # noqa
41
-
42
-
43
- class MISSING(lang.Marker):
44
- pass
45
-
46
-
47
- class UnboundVarError(ValueError):
48
- pass
49
-
50
-
51
- class Var(ta.Generic[T]):
52
- def __init__(
53
- self,
54
- default: type[MISSING] | T = MISSING,
55
- *,
56
- new: ta.Callable[[], T] | type[MISSING] = MISSING,
57
- validate: ta.Callable[[T], None] | None = None,
58
- ) -> None:
59
- super().__init__()
60
-
61
- if default is not MISSING and new is not MISSING:
62
- raise TypeError('Cannot set both default and new')
63
- elif default is not MISSING:
64
- new = lambda: default # type: ignore
65
- self._new: type[MISSING] | ta.Callable[[], T] = new
66
- self._validate = validate
67
- self._bindings_by_frame: ta.MutableMapping[types.FrameType, ta.MutableMapping[int, Binding]] = weakref.WeakValueDictionary() # noqa
68
-
69
- @ta.overload
70
- def __call__(self) -> T:
71
- ...
72
-
73
- @ta.overload
74
- def __call__(self, value: T, **kwargs: ta.Any) -> ta.ContextManager[T]:
75
- ...
76
-
77
- def __call__(self, *args, **kwargs):
78
- if not args:
79
- if kwargs:
80
- raise TypeError(kwargs)
81
- return self.value
82
- elif len(args) == 1:
83
- return self.binding(*args, **kwargs)
84
- else:
85
- raise TypeError(args)
86
-
87
- def binding(self, value: T, *, offset: int = 0) -> ta.ContextManager[T]:
88
- if self._validate is not None:
89
- self._validate(self.value)
90
- return Binding(self, value, offset=offset)
91
-
92
- def with_binding(self, value): # noqa
93
- def outer(fn):
94
- @functools.wraps(fn)
95
- def inner(*args, **kwargs):
96
- with self.binding(value):
97
- return fn(*args, **kwargs)
98
- return inner
99
- return outer
100
-
101
- def with_binding_fn(self, binding_fn): # noqa
102
- this = self
103
-
104
- def outer(fn):
105
- class Descriptor:
106
- @staticmethod
107
- @functools.wraps(fn)
108
- def __call__(*args, **kwargs): # noqa
109
- with this.binding(binding_fn(*args, **kwargs)):
110
- return fn(*args, **kwargs)
111
-
112
- def __get__(self, obj, cls=None):
113
- bound_binding_fn = binding_fn.__get__(obj, cls)
114
- bound_fn = fn.__get__(obj, cls)
115
-
116
- @functools.wraps(fn)
117
- def inner(*args, **kwargs):
118
- with this.binding(bound_binding_fn(*args, **kwargs)):
119
- return bound_fn(*args, **kwargs)
120
-
121
- return inner
122
-
123
- dct: dict[str, ta.Any] = {k: getattr(fn, k) for k in functools.WRAPPER_ASSIGNMENTS}
124
- return lang.new_type(fn.__name__, (Descriptor,), dct)()
125
-
126
- return outer
127
-
128
- @property
129
- def values(self) -> ta.Iterator[T]:
130
- frame = sys._getframe().f_back # noqa
131
- while frame:
132
- try:
133
- frame_bindings = self._bindings_by_frame[frame]
134
- except KeyError:
135
- pass
136
- else:
137
- for level, frame_binding in sorted(frame_bindings.items()): # noqa
138
- yield frame_binding._value # noqa
139
- frame = frame.f_back
140
-
141
- if self._new is not MISSING:
142
- yield self._new() # type: ignore
143
-
144
- def __iter__(self) -> ta.Iterator[T]:
145
- return self.values
146
-
147
- @property
148
- def value(self) -> T:
149
- try:
150
- return next(self.values)
151
- except StopIteration:
152
- raise UnboundVarError from None
153
-
154
-
155
- class Binding(ta.Generic[T]):
156
- _frame: types.FrameType
157
- _frame_bindings: ta.MutableMapping[int, 'Binding']
158
- _level: int
159
-
160
- def __init__(self, var: Var[T], value: T, *, offset: int = 0) -> None:
161
- super().__init__()
162
-
163
- self._var = var
164
- self._value = value
165
- self._offset = offset
166
-
167
- def __enter__(self) -> T:
168
- frame = sys._getframe(self._offset).f_back # noqa
169
- lag_frame: types.FrameType | None = frame
170
- while lag_frame is not None:
171
- for cur_depth in range(_MAX_HOIST_DEPTH + 1):
172
- if lag_frame is None:
173
- break
174
- try:
175
- lag_hoist = _HOISTED_CODE_DEPTH[lag_frame.f_code]
176
- except KeyError:
177
- pass
178
- else:
179
- if lag_hoist >= cur_depth:
180
- frame = lag_frame = lag_frame.f_back
181
- break
182
- lag_frame = lag_frame.f_back
183
- else:
184
- break
185
-
186
- if frame is None:
187
- raise RuntimeError
188
- self._frame = frame
189
- try:
190
- self._frame_bindings = self._var._bindings_by_frame[self._frame] # noqa
191
- except KeyError:
192
- self._frame_bindings = self._var._bindings_by_frame[self._frame] = weakref.WeakValueDictionary() # noqa
193
- self._level = 0
194
- else:
195
- self._level = min(self._frame_bindings.keys() or [1]) - 1
196
-
197
- self._frame_bindings[self._level] = self
198
- return self._value
199
-
200
- def __exit__(self, et, e, tb):
201
- if self._frame_bindings[self._level] is not self:
202
- raise TypeError
203
-
204
- del self._frame_bindings[self._level]
205
- del self._frame_bindings
206
- del self._frame
207
-
208
-
209
- class _GeneratorContextManager(contextlib._GeneratorContextManager): # noqa
210
- @hoist(2)
211
- def __enter__(self):
212
- return super().__enter__()
213
-
214
-
215
- def contextmanager(fn): # noqa
216
- @functools.wraps(fn)
217
- def helper(*args, **kwds):
218
- return _GeneratorContextManager(fn, args, kwds)
219
- return helper # noqa
@@ -1,77 +0,0 @@
1
- // Taken from "The Definitive ANTLR 4 Reference" by Terence Parr
2
-
3
- // Derived from https://json.org
4
-
5
- // $antlr-format alignTrailingComments true, columnLimit 150, minEmptyLines 1, maxEmptyLinesToKeep 1, reflowComments false, useTab false
6
- // $antlr-format allowShortRulesOnASingleLine false, allowShortBlocksOnASingleLine true, alignSemicolons hanging, alignColons hanging
7
-
8
- grammar Json;
9
-
10
- json
11
- : value EOF
12
- ;
13
-
14
- obj
15
- : '{' pair (',' pair)* '}'
16
- | '{' '}'
17
- ;
18
-
19
- pair
20
- : STRING ':' value
21
- ;
22
-
23
- arr
24
- : '[' value (',' value)* ']'
25
- | '[' ']'
26
- ;
27
-
28
- value
29
- : STRING
30
- | NUMBER
31
- | obj
32
- | arr
33
- | 'true'
34
- | 'false'
35
- | 'null'
36
- ;
37
-
38
- // Lexer
39
-
40
- STRING
41
- : '"' (ESC | SAFECODEPOINT)* '"'
42
- ;
43
-
44
- fragment ESC
45
- : '\\' (["\\/bfnrt] | UNICODE)
46
- ;
47
-
48
- fragment UNICODE
49
- : 'u' HEX HEX HEX HEX
50
- ;
51
-
52
- fragment HEX
53
- : [0-9a-fA-F]
54
- ;
55
-
56
- fragment SAFECODEPOINT
57
- : ~ ["\\\u0000-\u001F]
58
- ;
59
-
60
- NUMBER
61
- : '-'? INT ('.' [0-9]+)? EXP?
62
- ;
63
-
64
- fragment INT
65
- // integer part forbids leading 0s (e.g. `01`)
66
- : '0'
67
- | [1-9] [0-9]*
68
- ;
69
-
70
- fragment EXP
71
- // exponent number permits leading 0s (e.g. `1e01`)
72
- : [Ee] [+-]? [0-9]+
73
- ;
74
-
75
- WS
76
- : [ \t\n\r]+ -> skip
77
- ;
@@ -1,109 +0,0 @@
1
- # type: ignore
2
- # ruff: noqa
3
- # flake8: noqa
4
- # @omlish-generated
5
- # Generated from Json.g4 by ANTLR 4.13.2
6
- from ....text.antlr._runtime._all import *
7
- from io import StringIO
8
- import sys
9
- if sys.version_info[1] > 5:
10
- from typing import TextIO
11
- else:
12
- from typing.io import TextIO
13
-
14
-
15
- def serializedATN():
16
- return [
17
- 4,0,12,131,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,
18
- 2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,
19
- 13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,1,0,1,0,1,1,1,1,
20
- 1,2,1,2,1,3,1,3,1,4,1,4,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,7,1,7,1,7,
21
- 1,7,1,7,1,7,1,8,1,8,1,8,1,8,1,8,1,9,1,9,1,9,5,9,69,8,9,10,9,12,9,
22
- 72,9,9,1,9,1,9,1,10,1,10,1,10,3,10,79,8,10,1,11,1,11,1,11,1,11,1,
23
- 11,1,11,1,12,1,12,1,13,1,13,1,14,3,14,92,8,14,1,14,1,14,1,14,4,14,
24
- 97,8,14,11,14,12,14,98,3,14,101,8,14,1,14,3,14,104,8,14,1,15,1,15,
25
- 1,15,5,15,109,8,15,10,15,12,15,112,9,15,3,15,114,8,15,1,16,1,16,
26
- 3,16,118,8,16,1,16,4,16,121,8,16,11,16,12,16,122,1,17,4,17,126,8,
27
- 17,11,17,12,17,127,1,17,1,17,0,0,18,1,1,3,2,5,3,7,4,9,5,11,6,13,
28
- 7,15,8,17,9,19,10,21,0,23,0,25,0,27,0,29,11,31,0,33,0,35,12,1,0,
29
- 8,8,0,34,34,47,47,92,92,98,98,102,102,110,110,114,114,116,116,3,
30
- 0,48,57,65,70,97,102,3,0,0,31,34,34,92,92,1,0,48,57,1,0,49,57,2,
31
- 0,69,69,101,101,2,0,43,43,45,45,3,0,9,10,13,13,32,32,136,0,1,1,0,
32
- 0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,
33
- 0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,29,1,0,0,0,
34
- 0,35,1,0,0,0,1,37,1,0,0,0,3,39,1,0,0,0,5,41,1,0,0,0,7,43,1,0,0,0,
35
- 9,45,1,0,0,0,11,47,1,0,0,0,13,49,1,0,0,0,15,54,1,0,0,0,17,60,1,0,
36
- 0,0,19,65,1,0,0,0,21,75,1,0,0,0,23,80,1,0,0,0,25,86,1,0,0,0,27,88,
37
- 1,0,0,0,29,91,1,0,0,0,31,113,1,0,0,0,33,115,1,0,0,0,35,125,1,0,0,
38
- 0,37,38,5,123,0,0,38,2,1,0,0,0,39,40,5,44,0,0,40,4,1,0,0,0,41,42,
39
- 5,125,0,0,42,6,1,0,0,0,43,44,5,58,0,0,44,8,1,0,0,0,45,46,5,91,0,
40
- 0,46,10,1,0,0,0,47,48,5,93,0,0,48,12,1,0,0,0,49,50,5,116,0,0,50,
41
- 51,5,114,0,0,51,52,5,117,0,0,52,53,5,101,0,0,53,14,1,0,0,0,54,55,
42
- 5,102,0,0,55,56,5,97,0,0,56,57,5,108,0,0,57,58,5,115,0,0,58,59,5,
43
- 101,0,0,59,16,1,0,0,0,60,61,5,110,0,0,61,62,5,117,0,0,62,63,5,108,
44
- 0,0,63,64,5,108,0,0,64,18,1,0,0,0,65,70,5,34,0,0,66,69,3,21,10,0,
45
- 67,69,3,27,13,0,68,66,1,0,0,0,68,67,1,0,0,0,69,72,1,0,0,0,70,68,
46
- 1,0,0,0,70,71,1,0,0,0,71,73,1,0,0,0,72,70,1,0,0,0,73,74,5,34,0,0,
47
- 74,20,1,0,0,0,75,78,5,92,0,0,76,79,7,0,0,0,77,79,3,23,11,0,78,76,
48
- 1,0,0,0,78,77,1,0,0,0,79,22,1,0,0,0,80,81,5,117,0,0,81,82,3,25,12,
49
- 0,82,83,3,25,12,0,83,84,3,25,12,0,84,85,3,25,12,0,85,24,1,0,0,0,
50
- 86,87,7,1,0,0,87,26,1,0,0,0,88,89,8,2,0,0,89,28,1,0,0,0,90,92,5,
51
- 45,0,0,91,90,1,0,0,0,91,92,1,0,0,0,92,93,1,0,0,0,93,100,3,31,15,
52
- 0,94,96,5,46,0,0,95,97,7,3,0,0,96,95,1,0,0,0,97,98,1,0,0,0,98,96,
53
- 1,0,0,0,98,99,1,0,0,0,99,101,1,0,0,0,100,94,1,0,0,0,100,101,1,0,
54
- 0,0,101,103,1,0,0,0,102,104,3,33,16,0,103,102,1,0,0,0,103,104,1,
55
- 0,0,0,104,30,1,0,0,0,105,114,5,48,0,0,106,110,7,4,0,0,107,109,7,
56
- 3,0,0,108,107,1,0,0,0,109,112,1,0,0,0,110,108,1,0,0,0,110,111,1,
57
- 0,0,0,111,114,1,0,0,0,112,110,1,0,0,0,113,105,1,0,0,0,113,106,1,
58
- 0,0,0,114,32,1,0,0,0,115,117,7,5,0,0,116,118,7,6,0,0,117,116,1,0,
59
- 0,0,117,118,1,0,0,0,118,120,1,0,0,0,119,121,7,3,0,0,120,119,1,0,
60
- 0,0,121,122,1,0,0,0,122,120,1,0,0,0,122,123,1,0,0,0,123,34,1,0,0,
61
- 0,124,126,7,7,0,0,125,124,1,0,0,0,126,127,1,0,0,0,127,125,1,0,0,
62
- 0,127,128,1,0,0,0,128,129,1,0,0,0,129,130,6,17,0,0,130,36,1,0,0,
63
- 0,13,0,68,70,78,91,98,100,103,110,113,117,122,127,1,6,0,0
64
- ]
65
-
66
- class JsonLexer(Lexer):
67
-
68
- atn = ATNDeserializer().deserialize(serializedATN())
69
-
70
- decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ]
71
-
72
- T__0 = 1
73
- T__1 = 2
74
- T__2 = 3
75
- T__3 = 4
76
- T__4 = 5
77
- T__5 = 6
78
- T__6 = 7
79
- T__7 = 8
80
- T__8 = 9
81
- STRING = 10
82
- NUMBER = 11
83
- WS = 12
84
-
85
- channelNames = [ u"DEFAULT_TOKEN_CHANNEL", u"HIDDEN" ]
86
-
87
- modeNames = [ "DEFAULT_MODE" ]
88
-
89
- literalNames = [ "<INVALID>",
90
- "'{'", "','", "'}'", "':'", "'['", "']'", "'true'", "'false'",
91
- "'null'" ]
92
-
93
- symbolicNames = [ "<INVALID>",
94
- "STRING", "NUMBER", "WS" ]
95
-
96
- ruleNames = [ "T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "T__6",
97
- "T__7", "T__8", "STRING", "ESC", "UNICODE", "HEX", "SAFECODEPOINT",
98
- "NUMBER", "INT", "EXP", "WS" ]
99
-
100
- grammarFileName = "Json.g4"
101
-
102
- def __init__(self, input=None, output:TextIO = sys.stdout):
103
- super().__init__(input, output)
104
- self.checkVersion("4.13.2")
105
- self._interp = LexerATNSimulator(self, self.atn, self.decisionsToDFA, PredictionContextCache())
106
- self._actions = None
107
- self._predicates = None
108
-
109
-
@@ -1,61 +0,0 @@
1
- # type: ignore
2
- # ruff: noqa
3
- # flake8: noqa
4
- # @omlish-generated
5
- # Generated from Json.g4 by ANTLR 4.13.2
6
- from ....text.antlr._runtime._all import *
7
- if "." in __name__:
8
- from .JsonParser import JsonParser
9
- else:
10
- from JsonParser import JsonParser
11
-
12
- # This class defines a complete listener for a parse tree produced by JsonParser.
13
- class JsonListener(ParseTreeListener):
14
-
15
- # Enter a parse tree produced by JsonParser#json.
16
- def enterJson(self, ctx:JsonParser.JsonContext):
17
- pass
18
-
19
- # Exit a parse tree produced by JsonParser#json.
20
- def exitJson(self, ctx:JsonParser.JsonContext):
21
- pass
22
-
23
-
24
- # Enter a parse tree produced by JsonParser#obj.
25
- def enterObj(self, ctx:JsonParser.ObjContext):
26
- pass
27
-
28
- # Exit a parse tree produced by JsonParser#obj.
29
- def exitObj(self, ctx:JsonParser.ObjContext):
30
- pass
31
-
32
-
33
- # Enter a parse tree produced by JsonParser#pair.
34
- def enterPair(self, ctx:JsonParser.PairContext):
35
- pass
36
-
37
- # Exit a parse tree produced by JsonParser#pair.
38
- def exitPair(self, ctx:JsonParser.PairContext):
39
- pass
40
-
41
-
42
- # Enter a parse tree produced by JsonParser#arr.
43
- def enterArr(self, ctx:JsonParser.ArrContext):
44
- pass
45
-
46
- # Exit a parse tree produced by JsonParser#arr.
47
- def exitArr(self, ctx:JsonParser.ArrContext):
48
- pass
49
-
50
-
51
- # Enter a parse tree produced by JsonParser#value.
52
- def enterValue(self, ctx:JsonParser.ValueContext):
53
- pass
54
-
55
- # Exit a parse tree produced by JsonParser#value.
56
- def exitValue(self, ctx:JsonParser.ValueContext):
57
- pass
58
-
59
-
60
-
61
- del JsonParser