parser 3.0.2.0 → 3.1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/parser/builders/default.rb +100 -15
- data/lib/parser/context.rb +22 -41
- data/lib/parser/current.rb +10 -10
- data/lib/parser/lexer/dedenter.rb +7 -1
- data/lib/parser/lexer/explanation.rb +1 -1
- data/lib/parser/lexer.rb +12576 -11401
- data/lib/parser/macruby.rb +2476 -2448
- data/lib/parser/max_numparam_stack.rb +5 -5
- data/lib/parser/messages.rb +4 -0
- data/lib/parser/ruby18.rb +2155 -2114
- data/lib/parser/ruby19.rb +2458 -2424
- data/lib/parser/ruby20.rb +2634 -2598
- data/lib/parser/ruby21.rb +2700 -2667
- data/lib/parser/ruby22.rb +2533 -2491
- data/lib/parser/ruby23.rb +2616 -2571
- data/lib/parser/ruby24.rb +2651 -2609
- data/lib/parser/ruby25.rb +2545 -2513
- data/lib/parser/ruby26.rb +2669 -2624
- data/lib/parser/ruby27.rb +3217 -3165
- data/lib/parser/ruby30.rb +3511 -3475
- data/lib/parser/ruby31.rb +3940 -3812
- data/lib/parser/rubymotion.rb +2454 -2415
- data/lib/parser/static_environment.rb +9 -0
- data/lib/parser/version.rb +1 -1
- metadata +6 -6
@@ -35,21 +35,21 @@ module Parser
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def top
|
38
|
-
@stack.last
|
38
|
+
@stack.last[:value]
|
39
39
|
end
|
40
40
|
|
41
|
-
def push
|
42
|
-
@stack.push(0)
|
41
|
+
def push(static:)
|
42
|
+
@stack.push(value: 0, static: static)
|
43
43
|
end
|
44
44
|
|
45
45
|
def pop
|
46
|
-
@stack.pop
|
46
|
+
@stack.pop[:value]
|
47
47
|
end
|
48
48
|
|
49
49
|
private
|
50
50
|
|
51
51
|
def set(value)
|
52
|
-
@stack[
|
52
|
+
@stack.last[:value] = value
|
53
53
|
end
|
54
54
|
end
|
55
55
|
|
data/lib/parser/messages.rb
CHANGED
@@ -76,9 +76,13 @@ module Parser
|
|
76
76
|
:duplicate_variable_name => 'duplicate variable name %{name}',
|
77
77
|
:duplicate_pattern_key => 'duplicate hash pattern key %{name}',
|
78
78
|
:endless_setter => 'setter method cannot be defined in an endless method definition',
|
79
|
+
:invalid_id_to_get => 'identifier %{identifier} is not valid to get',
|
80
|
+
:forward_arg_after_restarg => '... after rest argument',
|
81
|
+
:no_anonymous_blockarg => 'no anonymous block parameter',
|
79
82
|
|
80
83
|
# Parser warnings
|
81
84
|
:useless_else => 'else without rescue is useless',
|
85
|
+
:duplicate_hash_key => 'key is duplicated and overwritten',
|
82
86
|
|
83
87
|
# Parser errors that are not Ruby errors
|
84
88
|
:invalid_encoding => 'literal contains escape sequences incompatible with UTF-8',
|