parsanol 1.3.78 → 1.3.79

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8b7c210627fda0c572855efe7f2e27930aff2e01f632de082abeb68dba5a99f7
4
- data.tar.gz: e6bcb584fe1de6cb62f35273980dfe78e8e24688e76ba089a734606338fe94b6
3
+ metadata.gz: f90cccf03f794735b2131a222d62f165fea5246e46f25faf3ad15e2a2fb11618
4
+ data.tar.gz: 665aab354700ae95ee32bacde22849837fdb5af2cdb07097653fda52fd0aa884
5
5
  SHA512:
6
- metadata.gz: 49caa14b1f70ecefe02e75e44f572823613f30aabcfcfeb21b9477358cfb20fff09823ff6f2497c90353866de94af3c571072df859ecad702cfb532252547238
7
- data.tar.gz: 6822401276fc2af955631834129ee5d75ffb64736f76d5719cba1180139d56a778fe8fad599ef59e8ab73cc634190644b4f148c808e1d92ff9065ed47ec05631
6
+ metadata.gz: 2950e9ac8aab3f4e744ec19d86f48f66d282a5af7a850fca6110092bfdbaa1dedc0e15e620d78f9b04aa32b3682f9ab12c63d75779e51f572697a3e344a921f9
7
+ data.tar.gz: 410074a54bc45c14edd24bd1806b0361c6ed3189ea8e7671e8c49aeef418212c823fe74ceee7c8f2103f1529a582e93f67d641562f6aa7909e6c0edf7569a295
data/Cargo.lock CHANGED
@@ -307,9 +307,9 @@ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
307
307
 
308
308
  [[package]]
309
309
  name = "parsanol"
310
- version = "0.17.1"
310
+ version = "0.17.2"
311
311
  source = "registry+https://github.com/rust-lang/crates.io-index"
312
- checksum = "170442a26c6a0b5ac25fbdb9c249dbaee821a2d364d4a42219c32af11f008b3d"
312
+ checksum = "2b6296dcfe8a2055273a1cb76ffb383c586dfbb6e647ff11b9f396f1b8f6fc36"
313
313
  dependencies = [
314
314
  "ahash",
315
315
  "getrandom 0.3.4",
@@ -326,9 +326,9 @@ dependencies = [
326
326
 
327
327
  [[package]]
328
328
  name = "parsanol-derive"
329
- version = "0.17.1"
329
+ version = "0.17.2"
330
330
  source = "registry+https://github.com/rust-lang/crates.io-index"
331
- checksum = "c3567bd641f8a18ee4a1e0339d9e1d0bd804764c1d813efc25b8fd7f24ed8ad3"
331
+ checksum = "60e96bd9d40164ef69ba879c97ba0d3efcf5e4183062ef6bf1eb66c4cdf91ae5"
332
332
  dependencies = [
333
333
  "proc-macro2",
334
334
  "quote",
@@ -13,4 +13,4 @@ doc = false
13
13
 
14
14
  [dependencies]
15
15
  # 0.17.0 carries LookSpec + the widened opaque writeback
16
- parsanol = { version = "0.17.1" }
16
+ parsanol = { version = "0.17.2" }
@@ -32,7 +32,7 @@ magnus = { version = "0.9" }
32
32
  # parsanol parser library (crates.io; 0.17.0 carries the LookSpec regex
33
33
  # lookbehind (rs#163 gap 1) and the widened opaque writeback: the
34
34
  # lazy-continuation fix, parsanol-ruby#160)
35
- parsanol = { version = "0.17.1", features = ["ruby"] }
35
+ parsanol = { version = "0.17.2", features = ["ruby"] }
36
36
 
37
37
  # Logging
38
38
  log = "0.4"
@@ -74,7 +74,15 @@ module Parsanol
74
74
  # grammar JSON and re-registered it per parse (~8x).
75
75
  # Dynamic artifacts carry ruby-tier atoms their wire
76
76
  # cannot express — they keep the interpreter.
77
- return root_atom(entry_name).parse(input, mode: :native)
77
+ begin
78
+ return root_atom(entry_name).parse(input, mode: :native)
79
+ rescue Parsanol::ParseFailed
80
+ # The atom-tree native path reports the root position; the
81
+ # wire-registration path carries the deepest-failure
82
+ # diagnostics (parsanol-ruby#171). Failures pay the
83
+ # serialization once; successes keep the fast lane.
84
+ return Native.parse(JSON.generate(entry(entry_name).fetch("grammar")), input)
85
+ end
78
86
  end
79
87
 
80
88
  root_atom(entry_name).parse(input)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Parsanol
4
- VERSION = "1.3.78"
4
+ VERSION = "1.3.79"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: parsanol
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.78
4
+ version: 1.3.79
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.