stages 0.2.0 → 0.2.1

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.0
1
+ 0.2.1
data/lib/stage_base.rb CHANGED
@@ -18,9 +18,15 @@ module Stages
18
18
  @fiber_delegate.resume
19
19
  end
20
20
 
21
- def continue
21
+ #seperate from reset! for restrict/resume purposes.
22
+ def reset
22
23
  initialize_loop
23
- @source.continue if @source
24
+ @source.reset if @source
25
+ end
26
+
27
+ def reset!
28
+ initialize_loop
29
+ @source.reset! if @source
24
30
  end
25
31
 
26
32
  def die
@@ -1,13 +1,12 @@
1
1
  module Stages
2
2
  class Restrict < Stage
3
- alias :super_continue :continue
4
3
 
5
4
  def initialize
6
5
  @open = true
7
6
  super()
8
7
  end
9
8
 
10
- def continue
9
+ def reset
11
10
  @open = true
12
11
  r = @last_value
13
12
  @last_value = nil
data/lib/stages/resume.rb CHANGED
@@ -5,7 +5,7 @@ module Stages
5
5
  while v = source.run
6
6
  result << v
7
7
  end
8
- continued = @source.continue
8
+ continued = @source.reset
9
9
  if continued.nil?
10
10
  nil
11
11
  else
@@ -5,7 +5,7 @@ module Stages
5
5
  while v = source.run
6
6
  result[v] += 1
7
7
  end
8
- continued = @source.continue
8
+ continued = @source.reset
9
9
  if continued.nil?
10
10
  nil
11
11
  else
data/lib/stages/wrap.rb CHANGED
@@ -27,7 +27,7 @@ module Stages
27
27
  output results if @output_style == :array
28
28
  output({ value => results}) if @output_style == :hash
29
29
  @pipeline.drop_leftmost!
30
- @pipeline.continue
30
+ @pipeline.reset!
31
31
  end
32
32
  end
33
33
  end
data/stages.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "stages"
8
- s.version = "0.2.0"
8
+ s.version = "0.2.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["The Justice Eight"]
@@ -54,8 +54,11 @@ class TestPipeline < MiniTest::Unit::TestCase
54
54
  end
55
55
 
56
56
  test 'reset! resets everything' do
57
- assert false
58
- #todo
57
+ pipeline = Each.new([1, 2, 3])
58
+ assert_equal(1, pipeline.run)
59
+ pipeline.reset!
60
+ assert_equal(1, pipeline.run)
61
+ assert_equal(2, pipeline.run)
59
62
  end
60
63
 
61
64
  end
data/test/test_stages.rb CHANGED
@@ -46,7 +46,7 @@ class TestStages < MiniTest::Unit::TestCase
46
46
  result << v
47
47
  end
48
48
  assert_equal([0], result)
49
- pipeline.continue
49
+ pipeline.reset
50
50
  while v = pipeline.run
51
51
  result << v
52
52
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: stages
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.2.0
5
+ version: 0.2.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - The Justice Eight
@@ -69,7 +69,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
69
69
  requirements:
70
70
  - - ">="
71
71
  - !ruby/object:Gem::Version
72
- hash: 1341798131382787657
72
+ hash: -2518020678826236574
73
73
  segments:
74
74
  - 0
75
75
  version: "0"