edn-abnf 0.5.28 → 0.5.30

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: 254c7ec5b1f24c1b4437b853694c729d58dbc5f4a1b91ecb715f613e45dbbbfe
4
- data.tar.gz: e1da36e9da61a6d507b61dee58c3e91501196b32c871c445283db7ba24865fe5
3
+ metadata.gz: 2ebeb1470b1565a31939bfbca8e695d4376220f29ad26b3e299b870358f4e063
4
+ data.tar.gz: 6c9947fa5ca0f670c952ef8a180f4712220bf8a142488f5f040a412b8209f53f
5
5
  SHA512:
6
- metadata.gz: 10fccb5a3e4524830ec86d7c671ca298d2bb25800438b4334e9209120a1340d3c0946ec65093c81973edb4dadc8d7014776c2e6f93f7f63085528ad75a18a20c
7
- data.tar.gz: c6b14fdbbfe4d951aa2a8e74d86c4764675a1ceecdfed62a262251da0a8be803ee26a98143387d42a0f30b24968177e1fd8f1de7617aae0dd463bb5cb18e27aa
6
+ metadata.gz: 3d16fd0184ae65329b09eac63f2a27d24ccf7609bc6f2da5993272e844f58667d87dcd31163481323858fe92049dbc41beed7a7ad8ba33595ab65acf6cc2e492
7
+ data.tar.gz: dc225c8629265f47e3921ae6db088534e337f215d7de5f5f7152e493090fb15b740884fd4b3d0fdca35912e833355943aa259e67ba3f972fb3f3f3bedf53a653
data/bin/edn-abnf CHANGED
@@ -180,10 +180,10 @@ begin
180
180
  result = edn.tree # XXX .tree?
181
181
  end
182
182
  rescue CBOR_DIAG::AppParseError, ArgumentError => e
183
- puts "** #{e}"
183
+ warn "** #{e}"
184
184
  exit 1
185
185
  rescue CBOR::OutOfBytesError, RuntimeError, JSON::GeneratorError => e
186
- puts "** (encoded CBOR input:) #{e}"
186
+ warn "** (encoded CBOR input:) #{e}"
187
187
  exit 1
188
188
  end
189
189
 
data/edn-abnf.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "edn-abnf"
3
- s.version = "0.5.28"
3
+ s.version = "0.5.30"
4
4
  s.summary = "CBOR Extended Diagnostic Notation (EDN) implemented in ABNF"
5
5
  s.description = %q{edn-abnf implements converters and miscellaneous tools for CBOR EDN's ABNF}
6
6
  s.author = "Carsten Bormann"
@@ -1299,7 +1299,7 @@ module EDNGRAMMAR
1299
1299
  elements[1]
1300
1300
  end
1301
1301
 
1302
- def item
1302
+ def simple_number
1303
1303
  elements[2]
1304
1304
  end
1305
1305
 
@@ -1310,7 +1310,7 @@ module EDNGRAMMAR
1310
1310
  end
1311
1311
 
1312
1312
  module Simple5
1313
- def ast; CBOR::Simple.new(item.ast) end
1313
+ def ast; CBOR::Simple(simple_number.text_value.to_i) end
1314
1314
  end
1315
1315
 
1316
1316
  def _nt_simple
@@ -1386,7 +1386,7 @@ module EDNGRAMMAR
1386
1386
  r7 = _nt_S
1387
1387
  s5 << r7
1388
1388
  if r7
1389
- r8 = _nt_item
1389
+ r8 = _nt_simple_number
1390
1390
  s5 << r8
1391
1391
  if r8
1392
1392
  r9 = _nt_S
@@ -1429,6 +1429,285 @@ module EDNGRAMMAR
1429
1429
  r0
1430
1430
  end
1431
1431
 
1432
+ module SimpleNumber0
1433
+ end
1434
+
1435
+ module SimpleNumber1
1436
+ def DIGIT
1437
+ elements[2]
1438
+ end
1439
+ end
1440
+
1441
+ module SimpleNumber2
1442
+ end
1443
+
1444
+ module SimpleNumber3
1445
+ def DIGIT
1446
+ elements[1]
1447
+ end
1448
+ end
1449
+
1450
+ module SimpleNumber4
1451
+ end
1452
+
1453
+ module SimpleNumber5
1454
+ end
1455
+
1456
+ module SimpleNumber6
1457
+ def DIGIT
1458
+ elements[1]
1459
+ end
1460
+ end
1461
+
1462
+ def _nt_simple_number
1463
+ start_index = index
1464
+ if node_cache[:simple_number].has_key?(index)
1465
+ cached = node_cache[:simple_number][index]
1466
+ if cached
1467
+ node_cache[:simple_number][index] = cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1468
+ @index = cached.interval.end
1469
+ end
1470
+ return cached
1471
+ end
1472
+
1473
+ i0 = index
1474
+ i1, s1 = index, []
1475
+ if (match_len = has_terminal?("25", false, index))
1476
+ r2 = instantiate_node(SyntaxNode,input, index...(index + match_len))
1477
+ @index += match_len
1478
+ else
1479
+ terminal_parse_failure('"25"')
1480
+ r2 = nil
1481
+ end
1482
+ s1 << r2
1483
+ if r2
1484
+ if has_terminal?(@regexps[gr = '\A[0-5]'] ||= Regexp.new(gr), :regexp, index)
1485
+ r3 = true
1486
+ @index += 1
1487
+ else
1488
+ terminal_parse_failure('[0-5]')
1489
+ r3 = nil
1490
+ end
1491
+ s1 << r3
1492
+ end
1493
+ if s1.last
1494
+ r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
1495
+ r1.extend(SimpleNumber0)
1496
+ else
1497
+ @index = i1
1498
+ r1 = nil
1499
+ end
1500
+ if r1
1501
+ r1 = SyntaxNode.new(input, (index-1)...index) if r1 == true
1502
+ r0 = r1
1503
+ else
1504
+ i4, s4 = index, []
1505
+ if (match_len = has_terminal?("2", false, index))
1506
+ r5 = true
1507
+ @index += match_len
1508
+ else
1509
+ terminal_parse_failure('"2"')
1510
+ r5 = nil
1511
+ end
1512
+ s4 << r5
1513
+ if r5
1514
+ if has_terminal?(@regexps[gr = '\A[0-4]'] ||= Regexp.new(gr), :regexp, index)
1515
+ r6 = true
1516
+ @index += 1
1517
+ else
1518
+ terminal_parse_failure('[0-4]')
1519
+ r6 = nil
1520
+ end
1521
+ s4 << r6
1522
+ if r6
1523
+ r7 = _nt_DIGIT
1524
+ s4 << r7
1525
+ end
1526
+ end
1527
+ if s4.last
1528
+ r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
1529
+ r4.extend(SimpleNumber1)
1530
+ else
1531
+ @index = i4
1532
+ r4 = nil
1533
+ end
1534
+ if r4
1535
+ r4 = SyntaxNode.new(input, (index-1)...index) if r4 == true
1536
+ r0 = r4
1537
+ else
1538
+ i8, s8 = index, []
1539
+ if (match_len = has_terminal?("1", false, index))
1540
+ r9 = true
1541
+ @index += match_len
1542
+ else
1543
+ terminal_parse_failure('"1"')
1544
+ r9 = nil
1545
+ end
1546
+ s8 << r9
1547
+ if r9
1548
+ s10, i10 = [], index
1549
+ loop do
1550
+ r11 = _nt_DIGIT
1551
+ if r11
1552
+ s10 << r11
1553
+ else
1554
+ break
1555
+ end
1556
+ if s10.size == 2
1557
+ break
1558
+ end
1559
+ end
1560
+ if s10.size < 2
1561
+ @index = i10
1562
+ r10 = nil
1563
+ else
1564
+ if s10.size < 2
1565
+ @terminal_failures.pop
1566
+ end
1567
+ r10 = instantiate_node(SyntaxNode,input, i10...index, s10)
1568
+ end
1569
+ s8 << r10
1570
+ end
1571
+ if s8.last
1572
+ r8 = instantiate_node(SyntaxNode,input, i8...index, s8)
1573
+ r8.extend(SimpleNumber2)
1574
+ else
1575
+ @index = i8
1576
+ r8 = nil
1577
+ end
1578
+ if r8
1579
+ r8 = SyntaxNode.new(input, (index-1)...index) if r8 == true
1580
+ r0 = r8
1581
+ else
1582
+ i12, s12 = index, []
1583
+ if has_terminal?(@regexps[gr = '\A[4-9]'] ||= Regexp.new(gr), :regexp, index)
1584
+ r13 = true
1585
+ @index += 1
1586
+ else
1587
+ terminal_parse_failure('[4-9]')
1588
+ r13 = nil
1589
+ end
1590
+ s12 << r13
1591
+ if r13
1592
+ r14 = _nt_DIGIT
1593
+ s12 << r14
1594
+ end
1595
+ if s12.last
1596
+ r12 = instantiate_node(SyntaxNode,input, i12...index, s12)
1597
+ r12.extend(SimpleNumber3)
1598
+ else
1599
+ @index = i12
1600
+ r12 = nil
1601
+ end
1602
+ if r12
1603
+ r12 = SyntaxNode.new(input, (index-1)...index) if r12 == true
1604
+ r0 = r12
1605
+ else
1606
+ i15, s15 = index, []
1607
+ if (match_len = has_terminal?("3", false, index))
1608
+ r16 = true
1609
+ @index += match_len
1610
+ else
1611
+ terminal_parse_failure('"3"')
1612
+ r16 = nil
1613
+ end
1614
+ s15 << r16
1615
+ if r16
1616
+ if has_terminal?(@regexps[gr = '\A[2-9]'] ||= Regexp.new(gr), :regexp, index)
1617
+ r17 = true
1618
+ @index += 1
1619
+ else
1620
+ terminal_parse_failure('[2-9]')
1621
+ r17 = nil
1622
+ end
1623
+ s15 << r17
1624
+ end
1625
+ if s15.last
1626
+ r15 = instantiate_node(SyntaxNode,input, i15...index, s15)
1627
+ r15.extend(SimpleNumber4)
1628
+ else
1629
+ @index = i15
1630
+ r15 = nil
1631
+ end
1632
+ if r15
1633
+ r15 = SyntaxNode.new(input, (index-1)...index) if r15 == true
1634
+ r0 = r15
1635
+ else
1636
+ i18, s18 = index, []
1637
+ if (match_len = has_terminal?("2", false, index))
1638
+ r19 = true
1639
+ @index += match_len
1640
+ else
1641
+ terminal_parse_failure('"2"')
1642
+ r19 = nil
1643
+ end
1644
+ s18 << r19
1645
+ if r19
1646
+ if has_terminal?(@regexps[gr = '\A[0-3]'] ||= Regexp.new(gr), :regexp, index)
1647
+ r20 = true
1648
+ @index += 1
1649
+ else
1650
+ terminal_parse_failure('[0-3]')
1651
+ r20 = nil
1652
+ end
1653
+ s18 << r20
1654
+ end
1655
+ if s18.last
1656
+ r18 = instantiate_node(SyntaxNode,input, i18...index, s18)
1657
+ r18.extend(SimpleNumber5)
1658
+ else
1659
+ @index = i18
1660
+ r18 = nil
1661
+ end
1662
+ if r18
1663
+ r18 = SyntaxNode.new(input, (index-1)...index) if r18 == true
1664
+ r0 = r18
1665
+ else
1666
+ i21, s21 = index, []
1667
+ if (match_len = has_terminal?("1", false, index))
1668
+ r22 = true
1669
+ @index += match_len
1670
+ else
1671
+ terminal_parse_failure('"1"')
1672
+ r22 = nil
1673
+ end
1674
+ s21 << r22
1675
+ if r22
1676
+ r23 = _nt_DIGIT
1677
+ s21 << r23
1678
+ end
1679
+ if s21.last
1680
+ r21 = instantiate_node(SyntaxNode,input, i21...index, s21)
1681
+ r21.extend(SimpleNumber6)
1682
+ else
1683
+ @index = i21
1684
+ r21 = nil
1685
+ end
1686
+ if r21
1687
+ r21 = SyntaxNode.new(input, (index-1)...index) if r21 == true
1688
+ r0 = r21
1689
+ else
1690
+ r24 = _nt_DIGIT
1691
+ if r24
1692
+ r24 = SyntaxNode.new(input, (index-1)...index) if r24 == true
1693
+ r0 = r24
1694
+ else
1695
+ @index = i0
1696
+ r0 = nil
1697
+ end
1698
+ end
1699
+ end
1700
+ end
1701
+ end
1702
+ end
1703
+ end
1704
+ end
1705
+
1706
+ node_cache[:simple_number][start_index] = r0
1707
+
1708
+ r0
1709
+ end
1710
+
1432
1711
  module Uint0
1433
1712
  def DIGIT1
1434
1713
  elements[0]
@@ -1879,7 +2158,8 @@ module EDNGRAMMAR
1879
2158
  end
1880
2159
 
1881
2160
  module Rawstring1
1882
- def ast; rawcontent.text_value.gsub("\r", "") + (
2161
+ def ast
2162
+ rawcontent.text_value.gsub("\r", "") + (
1883
2163
  tv = matchrawdelim.text_value
1884
2164
  dv = startrawdelim.text_value.length
1885
2165
  tv[dv..]) end
@@ -3401,15 +3681,15 @@ module EDNGRAMMAR
3401
3681
  r0
3402
3682
  end
3403
3683
 
3404
- module EndStar0
3684
+ module EndsInStar0
3405
3685
  end
3406
3686
 
3407
- def _nt_end_star
3687
+ def _nt_ends_in_star
3408
3688
  start_index = index
3409
- if node_cache[:end_star].has_key?(index)
3410
- cached = node_cache[:end_star][index]
3689
+ if node_cache[:ends_in_star].has_key?(index)
3690
+ cached = node_cache[:ends_in_star][index]
3411
3691
  if cached
3412
- node_cache[:end_star][index] = cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3692
+ node_cache[:ends_in_star][index] = cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
3413
3693
  @index = cached.interval.end
3414
3694
  end
3415
3695
  return cached
@@ -3453,13 +3733,13 @@ module EDNGRAMMAR
3453
3733
  end
3454
3734
  if s0.last
3455
3735
  r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
3456
- r0.extend(EndStar0)
3736
+ r0.extend(EndsInStar0)
3457
3737
  else
3458
3738
  @index = i0
3459
3739
  r0 = nil
3460
3740
  end
3461
3741
 
3462
- node_cache[:end_star][start_index] = r0
3742
+ node_cache[:ends_in_star][start_index] = r0
3463
3743
 
3464
3744
  r0
3465
3745
  end
@@ -3582,13 +3862,13 @@ module EDNGRAMMAR
3582
3862
  elements[0]
3583
3863
  end
3584
3864
 
3585
- def end_star
3865
+ def ends_in_star
3586
3866
  elements[1]
3587
3867
  end
3588
3868
  end
3589
3869
 
3590
3870
  module Comment2
3591
- def end_star
3871
+ def ends_in_star
3592
3872
  elements[1]
3593
3873
  end
3594
3874
 
@@ -3670,7 +3950,7 @@ module EDNGRAMMAR
3670
3950
  end
3671
3951
  s7 << r8
3672
3952
  if r8
3673
- r9 = _nt_end_star
3953
+ r9 = _nt_ends_in_star
3674
3954
  s7 << r9
3675
3955
  if r9
3676
3956
  s10, i10 = [], index
@@ -3679,7 +3959,7 @@ module EDNGRAMMAR
3679
3959
  r12 = _nt_non_slash_star
3680
3960
  s11 << r12
3681
3961
  if r12
3682
- r13 = _nt_end_star
3962
+ r13 = _nt_ends_in_star
3683
3963
  s11 << r13
3684
3964
  end
3685
3965
  if s11.last
@@ -9081,15 +9361,15 @@ module EDNGRAMMAR
9081
9361
  r0
9082
9362
  end
9083
9363
 
9084
- module HEndStar0
9364
+ module HEndsInStar0
9085
9365
  end
9086
9366
 
9087
- def _nt_h_end_star
9367
+ def _nt_h_ends_in_star
9088
9368
  start_index = index
9089
- if node_cache[:h_end_star].has_key?(index)
9090
- cached = node_cache[:h_end_star][index]
9369
+ if node_cache[:h_ends_in_star].has_key?(index)
9370
+ cached = node_cache[:h_ends_in_star][index]
9091
9371
  if cached
9092
- node_cache[:h_end_star][index] = cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
9372
+ node_cache[:h_ends_in_star][index] = cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
9093
9373
  @index = cached.interval.end
9094
9374
  end
9095
9375
  return cached
@@ -9133,13 +9413,13 @@ module EDNGRAMMAR
9133
9413
  end
9134
9414
  if s0.last
9135
9415
  r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
9136
- r0.extend(HEndStar0)
9416
+ r0.extend(HEndsInStar0)
9137
9417
  else
9138
9418
  @index = i0
9139
9419
  r0 = nil
9140
9420
  end
9141
9421
 
9142
- node_cache[:h_end_star][start_index] = r0
9422
+ node_cache[:h_ends_in_star][start_index] = r0
9143
9423
 
9144
9424
  r0
9145
9425
  end
@@ -9156,13 +9436,13 @@ module EDNGRAMMAR
9156
9436
  elements[0]
9157
9437
  end
9158
9438
 
9159
- def h_end_star
9439
+ def h_ends_in_star
9160
9440
  elements[1]
9161
9441
  end
9162
9442
  end
9163
9443
 
9164
9444
  module HComment2
9165
- def h_end_star
9445
+ def h_ends_in_star
9166
9446
  elements[1]
9167
9447
  end
9168
9448
 
@@ -9247,7 +9527,7 @@ module EDNGRAMMAR
9247
9527
  end
9248
9528
  s7 << r8
9249
9529
  if r8
9250
- r9 = _nt_h_end_star
9530
+ r9 = _nt_h_ends_in_star
9251
9531
  s7 << r9
9252
9532
  if r9
9253
9533
  s10, i10 = [], index
@@ -9256,7 +9536,7 @@ module EDNGRAMMAR
9256
9536
  r12 = _nt_h_non_slash_star
9257
9537
  s11 << r12
9258
9538
  if r12
9259
- r13 = _nt_h_end_star
9539
+ r13 = _nt_h_ends_in_star
9260
9540
  s11 << r13
9261
9541
  end
9262
9542
  if s11.last
@@ -9693,15 +9973,15 @@ module EDNGRAMMAR
9693
9973
  r0
9694
9974
  end
9695
9975
 
9696
- module RhEndStar0
9976
+ module RhEndsInStar0
9697
9977
  end
9698
9978
 
9699
- def _nt_rh_end_star
9979
+ def _nt_rh_ends_in_star
9700
9980
  start_index = index
9701
- if node_cache[:rh_end_star].has_key?(index)
9702
- cached = node_cache[:rh_end_star][index]
9981
+ if node_cache[:rh_ends_in_star].has_key?(index)
9982
+ cached = node_cache[:rh_ends_in_star][index]
9703
9983
  if cached
9704
- node_cache[:rh_end_star][index] = cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
9984
+ node_cache[:rh_ends_in_star][index] = cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
9705
9985
  @index = cached.interval.end
9706
9986
  end
9707
9987
  return cached
@@ -9745,13 +10025,13 @@ module EDNGRAMMAR
9745
10025
  end
9746
10026
  if s0.last
9747
10027
  r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
9748
- r0.extend(RhEndStar0)
10028
+ r0.extend(RhEndsInStar0)
9749
10029
  else
9750
10030
  @index = i0
9751
10031
  r0 = nil
9752
10032
  end
9753
10033
 
9754
- node_cache[:rh_end_star][start_index] = r0
10034
+ node_cache[:rh_ends_in_star][start_index] = r0
9755
10035
 
9756
10036
  r0
9757
10037
  end
@@ -9768,13 +10048,13 @@ module EDNGRAMMAR
9768
10048
  elements[0]
9769
10049
  end
9770
10050
 
9771
- def rh_end_star
10051
+ def rh_ends_in_star
9772
10052
  elements[1]
9773
10053
  end
9774
10054
  end
9775
10055
 
9776
10056
  module RhComment2
9777
- def rh_end_star
10057
+ def rh_ends_in_star
9778
10058
  elements[1]
9779
10059
  end
9780
10060
 
@@ -9856,7 +10136,7 @@ module EDNGRAMMAR
9856
10136
  end
9857
10137
  s7 << r8
9858
10138
  if r8
9859
- r9 = _nt_rh_end_star
10139
+ r9 = _nt_rh_ends_in_star
9860
10140
  s7 << r9
9861
10141
  if r9
9862
10142
  s10, i10 = [], index
@@ -9865,7 +10145,7 @@ module EDNGRAMMAR
9865
10145
  r12 = _nt_rh_non_slash_star
9866
10146
  s11 << r12
9867
10147
  if r12
9868
- r13 = _nt_rh_end_star
10148
+ r13 = _nt_rh_ends_in_star
9869
10149
  s11 << r13
9870
10150
  end
9871
10151
  if s11.last
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: edn-abnf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.28
4
+ version: 0.5.30
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carsten Bormann