c_lexer 2.6.2.1.1 → 2.6.3.0.0

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.
data/ext/lexer/lexer.h CHANGED
@@ -177,6 +177,8 @@ VALUE tASSOC;
177
177
  VALUE tBACK_REF2;
178
178
  VALUE tBACK_REF;
179
179
  VALUE tBANG;
180
+ VALUE tBDOT2;
181
+ VALUE tBDOT3;
180
182
  VALUE tCARET;
181
183
  VALUE tCHARACTER;
182
184
  VALUE tCMP;
data/ext/lexer/lexer.rl CHANGED
@@ -788,6 +788,8 @@ void Init_lexer()
788
788
  init_symbol(tASSOC);
789
789
  init_symbol(tBACK_REF);
790
790
  init_symbol(tBACK_REF2);
791
+ init_symbol(tBDOT2);
792
+ init_symbol(tBDOT3);
791
793
  init_symbol(tBANG);
792
794
  init_symbol(tCARET);
793
795
  init_symbol(tCHARACTER);
@@ -2105,6 +2107,30 @@ void Init_lexer()
2105
2107
  fbreak;
2106
2108
  };
2107
2109
 
2110
+ # RUBY 2.7 BEGINLESS RANGE
2111
+
2112
+ '..'
2113
+ => {
2114
+ if (lexer->version >= 27) {
2115
+ emit(tBDOT2);
2116
+ } else {
2117
+ emit(tDOT2);
2118
+ }
2119
+
2120
+ fnext expr_beg; fbreak;
2121
+ };
2122
+
2123
+ '...'
2124
+ => {
2125
+ if (lexer->version >= 27) {
2126
+ emit(tBDOT3);
2127
+ } else {
2128
+ emit(tDOT3);
2129
+ }
2130
+
2131
+ fnext expr_beg; fbreak;
2132
+ };
2133
+
2108
2134
  bareword ambiguous_ident_suffix | keyword => { p = ts - 1; fgoto expr_end; };
2109
2135
 
2110
2136
  call_or_var => local_ident;
@@ -1,3 +1,3 @@
1
1
  module CLexer
2
- VERSION = '2.6.2.1.1'
2
+ VERSION = '2.6.3.0.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: c_lexer
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.2.1.1
4
+ version: 2.6.3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ilya Bylich
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 2.6.2.1
33
+ version: 2.6.3.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 2.6.2.1
40
+ version: 2.6.3.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement