ruby_parser 3.8.3 → 3.8.4

Sign up to get free protection for your applications and to get access to all the features.
data/lib/ruby23_parser.y CHANGED
@@ -652,7 +652,7 @@ rule
652
652
  | arg tDOT2 arg
653
653
  {
654
654
  v1, v2 = val[0], val[2]
655
- if v1.node_type == :lit and v2.node_type == :lit and Fixnum === v1.last and Fixnum === v2.last then
655
+ if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then
656
656
  result = s(:lit, (v1.last)..(v2.last))
657
657
  else
658
658
  result = s(:dot2, v1, v2)
@@ -661,7 +661,7 @@ rule
661
661
  | arg tDOT3 arg
662
662
  {
663
663
  v1, v2 = val[0], val[2]
664
- if v1.node_type == :lit and v2.node_type == :lit and Fixnum === v1.last and Fixnum === v2.last then
664
+ if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then
665
665
  result = s(:lit, (v1.last)...(v2.last))
666
666
  else
667
667
  result = s(:dot3, v1, v2)
@@ -2216,7 +2216,7 @@ keyword_variable: kNIL { result = s(:nil) }
2216
2216
  }
2217
2217
  | kwrest_mark
2218
2218
  {
2219
- debug20 36, val, result
2219
+ result = :"**"
2220
2220
  }
2221
2221
 
2222
2222
  f_opt: f_arg_asgn tEQL arg_value
data/lib/ruby_lexer.rb CHANGED
@@ -788,7 +788,7 @@ class RubyLexer
788
788
  else
789
789
  result(state, :kDO, value)
790
790
  end
791
- when in_lex_state?(:expr_beg, :expr_value) then # TODO: :expr_labelarg
791
+ when in_lex_state?(:expr_beg, :expr_value, :expr_labelarg) then
792
792
  result(state, keyword.id0, value)
793
793
  when keyword.id0 != keyword.id1 then
794
794
  result(:expr_beg, keyword.id1, value)
@@ -1,7 +1,7 @@
1
1
  # encoding: UTF-8
2
2
  #--
3
3
  # This file is automatically generated. Do not modify it.
4
- # Generated by: oedipus_lex version 2.4.1.
4
+ # Generated by: oedipus_lex version 2.5.0.
5
5
  # Source: lib/ruby_lexer.rex
6
6
  #++
7
7
 
data/lib/ruby_parser.yy CHANGED
@@ -675,7 +675,7 @@ rule
675
675
  | arg tDOT2 arg
676
676
  {
677
677
  v1, v2 = val[0], val[2]
678
- if v1.node_type == :lit and v2.node_type == :lit and Fixnum === v1.last and Fixnum === v2.last then
678
+ if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then
679
679
  result = s(:lit, (v1.last)..(v2.last))
680
680
  else
681
681
  result = s(:dot2, v1, v2)
@@ -684,7 +684,7 @@ rule
684
684
  | arg tDOT3 arg
685
685
  {
686
686
  v1, v2 = val[0], val[2]
687
- if v1.node_type == :lit and v2.node_type == :lit and Fixnum === v1.last and Fixnum === v2.last then
687
+ if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then
688
688
  result = s(:lit, (v1.last)...(v2.last))
689
689
  else
690
690
  result = s(:dot3, v1, v2)
@@ -2287,7 +2287,7 @@ keyword_variable: kNIL { result = s(:nil) }
2287
2287
  }
2288
2288
  | kwrest_mark
2289
2289
  {
2290
- debug20 36, val, result
2290
+ result = :"**"
2291
2291
  }
2292
2292
 
2293
2293
  #if defined(RUBY20)
@@ -91,7 +91,7 @@ class RPStringScanner < StringScanner
91
91
  end
92
92
 
93
93
  module RubyParserStuff
94
- VERSION = "3.8.3" unless constants.include? "VERSION" # SIGH
94
+ VERSION = "3.8.4" unless constants.include? "VERSION" # SIGH
95
95
 
96
96
  attr_accessor :lexer, :in_def, :in_single, :file
97
97
  attr_reader :env, :comments
@@ -109,7 +109,7 @@ module RubyParserStuff
109
109
 
110
110
  ruby19 = "".respond_to? :encoding
111
111
 
112
- # Rhis is in sorted order of occurrence according to
112
+ # This is in sorted order of occurrence according to
113
113
  # charlock_holmes against 500k files, with UTF_8 forced
114
114
  # to the top.
115
115
  #
@@ -2083,6 +2083,13 @@ module TestRubyParserShared19to22
2083
2083
  assert_parse rb, pt
2084
2084
  end
2085
2085
 
2086
+ def test_call_assoc_new_if_multiline
2087
+ rb = "a(b: if :c\n1\nelse\n2\nend)"
2088
+ pt = s(:call, nil, :a, s(:hash, s(:lit, :b), s(:if, s(:lit, :c), s(:lit, 1), s(:lit, 2))))
2089
+
2090
+ assert_parse rb, pt
2091
+ end
2092
+
2086
2093
  def test_do_lambda
2087
2094
  rb = "->() do end"
2088
2095
  pt = s(:iter, s(:call, nil, :lambda), s(:args))
@@ -2255,6 +2262,13 @@ module TestRubyParserShared20to22
2255
2262
  assert_parse rb, pt
2256
2263
  end
2257
2264
 
2265
+ def test_defn_kwarg_kwsplat_anon
2266
+ rb = "def a(b: 1, **) end"
2267
+ pt = s(:defn, :a, s(:args, s(:kwarg, :b, s(:lit, 1)), :"**"), s(:nil))
2268
+
2269
+ assert_parse rb, pt
2270
+ end
2271
+
2258
2272
  def test_defn_kwarg_env
2259
2273
  rb = "def test(**testing) test_splat(**testing) end"
2260
2274
  pt = s(:defn, :test, s(:args, :"**testing"),
@@ -4,7 +4,7 @@ require 'rubygems'
4
4
  require 'minitest/autorun'
5
5
  require 'ruby_parser_extras'
6
6
 
7
- require 'minitest/unit'
7
+ require 'minitest/test'
8
8
 
9
9
  class TestStackState < Minitest::Test
10
10
  attr_reader :s
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.3
4
+ version: 3.8.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
@@ -30,92 +30,92 @@ cert_chain:
30
30
  E4oJcnPkJAr0rw504JGtlZtONZQblwmRJOIdXzolaE3NRGUzGVOUSptZppAKiavY
31
31
  fO6tdKQc/5RfA8oQEkg8hrxA5PQSz4TOFJGLpFvIapEk6tMruQ0bHgkhr9auXg==
32
32
  -----END CERTIFICATE-----
33
- date: 2016-10-09 00:00:00.000000000 Z
33
+ date: 2017-01-13 00:00:00.000000000 Z
34
34
  dependencies:
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: sexp_processor
37
37
  requirement: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ~>
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: '4.1'
42
42
  type: :runtime
43
43
  prerelease: false
44
44
  version_requirements: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ~>
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
48
  version: '4.1'
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: rake
51
51
  requirement: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - <
53
+ - - "<"
54
54
  - !ruby/object:Gem::Version
55
55
  version: '11'
56
56
  type: :development
57
57
  prerelease: false
58
58
  version_requirements: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - <
60
+ - - "<"
61
61
  - !ruby/object:Gem::Version
62
62
  version: '11'
63
63
  - !ruby/object:Gem::Dependency
64
64
  name: oedipus_lex
65
65
  requirement: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ~>
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
69
  version: '2.1'
70
70
  type: :development
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ~>
74
+ - - "~>"
75
75
  - !ruby/object:Gem::Version
76
76
  version: '2.1'
77
77
  - !ruby/object:Gem::Dependency
78
78
  name: rdoc
79
79
  requirement: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ~>
81
+ - - "~>"
82
82
  - !ruby/object:Gem::Version
83
83
  version: '4.0'
84
84
  type: :development
85
85
  prerelease: false
86
86
  version_requirements: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ~>
88
+ - - "~>"
89
89
  - !ruby/object:Gem::Version
90
90
  version: '4.0'
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: racc
93
93
  requirement: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ~>
95
+ - - "~>"
96
96
  - !ruby/object:Gem::Version
97
97
  version: 1.4.6
98
98
  type: :development
99
99
  prerelease: false
100
100
  version_requirements: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ~>
102
+ - - "~>"
103
103
  - !ruby/object:Gem::Version
104
104
  version: 1.4.6
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: hoe
107
107
  requirement: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ~>
109
+ - - "~>"
110
110
  - !ruby/object:Gem::Version
111
- version: '3.15'
111
+ version: '3.16'
112
112
  type: :development
113
113
  prerelease: false
114
114
  version_requirements: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - ~>
116
+ - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: '3.15'
118
+ version: '3.16'
119
119
  description: |-
120
120
  ruby_parser (RP) is a ruby parser written in pure ruby (utilizing
121
121
  racc--which does by default use a C extension). RP's output is
@@ -150,14 +150,14 @@ executables:
150
150
  - ruby_parse_extract_error
151
151
  extensions: []
152
152
  extra_rdoc_files:
153
- - History.txt
153
+ - History.rdoc
154
154
  - Manifest.txt
155
- - README.txt
155
+ - README.rdoc
156
156
  files:
157
- - .autotest
158
- - History.txt
157
+ - ".autotest"
158
+ - History.rdoc
159
159
  - Manifest.txt
160
- - README.txt
160
+ - README.rdoc
161
161
  - Rakefile
162
162
  - bin/ruby_parse
163
163
  - bin/ruby_parse_extract_error
@@ -189,23 +189,23 @@ licenses:
189
189
  metadata: {}
190
190
  post_install_message:
191
191
  rdoc_options:
192
- - --main
193
- - README.txt
192
+ - "--main"
193
+ - README.rdoc
194
194
  require_paths:
195
195
  - lib
196
196
  required_ruby_version: !ruby/object:Gem::Requirement
197
197
  requirements:
198
- - - '>='
198
+ - - ">="
199
199
  - !ruby/object:Gem::Version
200
200
  version: '0'
201
201
  required_rubygems_version: !ruby/object:Gem::Requirement
202
202
  requirements:
203
- - - '>='
203
+ - - ">="
204
204
  - !ruby/object:Gem::Version
205
205
  version: '0'
206
206
  requirements: []
207
207
  rubyforge_project:
208
- rubygems_version: 2.4.5
208
+ rubygems_version: 2.6.8
209
209
  signing_key:
210
210
  specification_version: 4
211
211
  summary: ruby_parser (RP) is a ruby parser written in pure ruby (utilizing racc--which
metadata.gz.sig CHANGED
Binary file