diff options
| author | mokha <mokha@cisco.com> | 2018-03-20 19:16:03 -0600 |
|---|---|---|
| committer | mokha <mokha@cisco.com> | 2018-03-20 19:16:03 -0600 |
| commit | afafd9ebeb515a41b94984bd838958b6f36b688f (patch) | |
| tree | f842532f84ba421fd16d4c43018f22103441a5bd | |
| parent | 6741d5bf7361d20d0968d54e26b57f370c5a5cc7 (diff) | |
extract each frame method.
| -rw-r--r-- | lib/xsay/render.rb | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/xsay/render.rb b/lib/xsay/render.rb index 4b542ab..5d5e61c 100644 --- a/lib/xsay/render.rb +++ b/lib/xsay/render.rb @@ -15,15 +15,19 @@ module Xsay def render(message, template) message = message.join(' ') if message.respond_to?(:join) line_break = "-" * message.length - distance.downto(0) do |frame| - draw(message, template, line_break, frame) - end - 0.upto(distance) do |frame| + each_frame do |frame| draw(message, template, line_break, frame) end nil end + def each_frame + frames = distance.downto(0).to_a + 0.upto(distance).to_a + frames.each do |frame| + yield frame + end + end + private def draw(message, template, line_break, frame) |
