parser 3.0.3.0 → 3.1.1.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/all.rb +1 -0
- data/lib/parser/builders/default.rb +29 -5
- data/lib/parser/context.rb +22 -41
- data/lib/parser/current.rb +16 -7
- data/lib/parser/lexer/dedenter.rb +1 -1
- data/lib/parser/lexer/explanation.rb +1 -1
- data/lib/parser/lexer.rb +11527 -11221
- data/lib/parser/macruby.rb +2476 -2448
- data/lib/parser/max_numparam_stack.rb +5 -5
- data/lib/parser/messages.rb +2 -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 +3181 -3133
- data/lib/parser/ruby30.rb +3476 -3444
- data/lib/parser/ruby31.rb +3872 -3801
- data/lib/parser/ruby32.rb +8330 -0
- data/lib/parser/rubymotion.rb +2454 -2415
- data/lib/parser/runner.rb +6 -0
- data/lib/parser/static_environment.rb +9 -0
- data/lib/parser/version.rb +1 -1
- metadata +6 -5
@@ -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
@@ -77,6 +77,8 @@ module Parser
|
|
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
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',
|
80
82
|
|
81
83
|
# Parser warnings
|
82
84
|
:useless_else => 'else without rescue is useless',
|