rubinius-ast 2.0.8 → 2.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rubinius/ast/control_flow.rb +4 -4
- data/lib/rubinius/ast/node.rb +4 -5
- data/lib/rubinius/ast/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c25791d2dc31507b6ffb8b4b35ac53db7f1f404d
|
4
|
+
data.tar.gz: 12b8176f823e570b78057b1b243652d45d87887f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ff7c2feeda9cc692272f725b15b6d6e9c66d1068c5bac81bb5037c0bf7231ed9a97f96375f5730bc754434a2b657b669def2547ae8ad832737f80d6ce0d7db68
|
7
|
+
data.tar.gz: 1aedaa13767341a2ff08bacd5a8d9b493ce444907be01cf1aba69f38f3c4255bc5ccd698e3221e8a31101ce1fcf342cd18bdb57ea142af6a8d2a58ca9bd199d7
|
@@ -551,7 +551,7 @@ module Rubinius::ToolSet.current::TS
|
|
551
551
|
def bytecode(g)
|
552
552
|
pos(g)
|
553
553
|
|
554
|
-
g.pop if g.state.
|
554
|
+
g.pop if g.state.top_level_ensure?
|
555
555
|
|
556
556
|
@value.bytecode(g)
|
557
557
|
|
@@ -564,7 +564,7 @@ module Rubinius::ToolSet.current::TS
|
|
564
564
|
jump_error g, :break
|
565
565
|
end
|
566
566
|
|
567
|
-
g.push_nil if g.state.
|
567
|
+
g.push_nil if g.state.top_level_ensure?
|
568
568
|
end
|
569
569
|
|
570
570
|
def defined(g)
|
@@ -591,7 +591,7 @@ module Rubinius::ToolSet.current::TS
|
|
591
591
|
def bytecode(g)
|
592
592
|
pos(g)
|
593
593
|
|
594
|
-
g.pop if g.state.
|
594
|
+
g.pop if g.state.top_level_ensure?
|
595
595
|
|
596
596
|
# From "The Ruby Programming Lanuage"
|
597
597
|
# "When next is used in a loop, any values following the next
|
@@ -620,7 +620,7 @@ module Rubinius::ToolSet.current::TS
|
|
620
620
|
jump_error g, :next
|
621
621
|
end
|
622
622
|
|
623
|
-
g.push_nil if g.state.
|
623
|
+
g.push_nil if g.state.top_level_ensure?
|
624
624
|
end
|
625
625
|
|
626
626
|
def sexp_name
|
data/lib/rubinius/ast/node.rb
CHANGED
@@ -272,7 +272,6 @@ module Rubinius::ToolSet.current::TS
|
|
272
272
|
def initialize(scope)
|
273
273
|
@scope = scope
|
274
274
|
@ensure = 0
|
275
|
-
@inside_ensure = 0
|
276
275
|
@block = 0
|
277
276
|
@masgn = 0
|
278
277
|
@loop = 0
|
@@ -319,15 +318,15 @@ module Rubinius::ToolSet.current::TS
|
|
319
318
|
end
|
320
319
|
|
321
320
|
def push_inside_ensure
|
322
|
-
@
|
321
|
+
@ensure_level = @loop
|
323
322
|
end
|
324
323
|
|
325
324
|
def pop_inside_ensure
|
326
|
-
@
|
325
|
+
@ensure_level = nil
|
327
326
|
end
|
328
327
|
|
329
|
-
def
|
330
|
-
@
|
328
|
+
def top_level_ensure?
|
329
|
+
@ensure_level && @ensure_level == @loop
|
331
330
|
end
|
332
331
|
|
333
332
|
def push_block
|
data/lib/rubinius/ast/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubinius-ast
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brian Shirai
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-10-
|
11
|
+
date: 2013-10-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|