Sha256: 9ca50831a359f3ff1d3193564ae5a164abe39329264246ae8f95d471e9561e78

Contents?: true

Size: 307 Bytes

Versions: 5

Compression:

Stored size: 307 Bytes

Contents

module BSFlow
  class UntilTrueLoop
    def initialize(condition_proc:, loop_proc:)
      @loop_proc = loop_proc
      @condition_proc = condition_proc
    end
    
    def call(input)
      until @condition_proc.call(input) do
        input = @loop_proc.call(input)
      end
      input
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
bsflow-2.6.0 lib/bsflow/until_true_loop.rb
bsflow-2.5.0 lib/bsflow/until_true_loop.rb
bsflow-2.4.0 lib/bsflow/until_true_loop.rb
bsflow-2.3.0 lib/bsflow/until_true_loop.rb
bsflow-2.2.0 lib/bsflow/until_true_loop.rb