rubinius-ast 2.0.8 → 2.0.9
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.
- 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
|