template-ruby-parser 0.1.4 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3652d9bb92099379a929df14b999cd8508f3be60c5ceb884f062453c921e7b09
4
- data.tar.gz: 744449bccfc4e058222b17d27d1402f134012dfb87c2a66239c82ee7802c0003
3
+ metadata.gz: 1930e12f26e42bbe9273ce7f922adfff84931da89fa381cb9df9a9f2572da140
4
+ data.tar.gz: ccceda81f10d2d073ec1e1a8060f8b4ad8e59307802c42825fa13e25a760922e
5
5
  SHA512:
6
- metadata.gz: ffbfc9e64b65b7bb9ba68917ca9340a9904b25b871ef0630bf9d4cd4a87189bd0b34889b1fbea7231c50ba2726a15ebd524d7886a2655acdd0f71bf815fb297c
7
- data.tar.gz: 8a1e76fd57dfad95201f0259b962bdfea907fac4f92704e6af2dc9eee3450d1d0cea35ba55cc348762b91d606152a6fbd1cb30249b31f7993abb5d46eab6aa24
6
+ metadata.gz: 29a6f68418e579de7fd8949be837e84c56f2364ab099943ea128b29c5ce69aa999b71479710d6cbb2d7f61d0be27017308c71bd0accb33cefae84a6471d956dc
7
+ data.tar.gz: 9e77b562a8908eaa4801aa27b3d98a43a54e09c1afc6784816a8d2d89157c5d5c16f716c21efad170f2310f65f1a5d5e0b780baa02bd8f2c14f9b08a675e8ff5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ### 0.1.6 - November 13, 2022
2
+
3
+ - Add missing operator from equal, e.g. a += 1, a = 2
4
+
5
+ ### 0.1.5 - November 13, 2022
6
+
7
+ - Restrict equal to simplify
8
+
1
9
  ### 0.1.4 - November 13, 2022
2
10
 
3
11
  - Fix a || b
File without changes
data/bin/parse-docs ADDED
@@ -0,0 +1,6 @@
1
+ #!/bin/bash
2
+
3
+ for f in docs/*.code
4
+ do
5
+ bin/code-parser -i $f
6
+ done
@@ -2,13 +2,13 @@ class Code
2
2
  class Parser
3
3
  class Equal < ::Code::Parser
4
4
  def parse
5
- left = parse_subclass(::Code::Parser::Rescue)
6
-
7
5
  previous_cursor = cursor
8
6
 
7
+ left = parse_left
8
+
9
9
  comments_before = parse_comments
10
10
 
11
- if operator = match(EQUALS)
11
+ if left && operator = match(EQUALS)
12
12
  comments_after = parse_comments
13
13
 
14
14
  right = parse_subclass(::Code::Parser::Equal)
@@ -16,6 +16,7 @@ class Code
16
16
  if right
17
17
  {
18
18
  equal: {
19
+ operator: operator,
19
20
  left: left,
20
21
  right: right,
21
22
  comments_before: comments_before,
@@ -25,7 +26,36 @@ class Code
25
26
  else
26
27
  @cursor = previous_cursor
27
28
  buffer!
28
- left
29
+ parse_next
30
+ end
31
+ else
32
+ @cursor = previous_cursor
33
+ buffer!
34
+ parse_next
35
+ end
36
+ end
37
+
38
+ private
39
+
40
+ def parse_next
41
+ parse_subclass(::Code::Parser::Rescue)
42
+ end
43
+
44
+ def parse_left
45
+ left = parse_subclass(::Code::Parser::Name)
46
+ return unless left
47
+
48
+ previous_cursor = cursor
49
+ comments_before = parse_comments
50
+
51
+ if match(DOT) || match(COLON + COLON)
52
+ right = parse_subclass(::Code::Parser::Name)
53
+ if right
54
+ { left: left, right: right }
55
+ else
56
+ @cursor = previous_cursor
57
+ buffer!
58
+ return
29
59
  end
30
60
  else
31
61
  @cursor = previous_cursor
@@ -1,6 +1,6 @@
1
1
  class Template
2
2
  class Parser < ::Code::Parser
3
- Version = Gem::Version.new("0.1.4")
3
+ Version = Gem::Version.new("0.1.6")
4
4
 
5
5
  def parse
6
6
  parts = []
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: template-ruby-parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié
@@ -22,8 +22,9 @@ files:
22
22
  - Gemfile
23
23
  - Gemfile.lock
24
24
  - bin/code-parser
25
+ - bin/deploy
25
26
  - bin/format
26
- - bin/push
27
+ - bin/parse-docs
27
28
  - bin/template-parser
28
29
  - code-ruby-parser.gemspec
29
30
  - docs/class.code