Commit afafd9e

mokha <mokha@cisco.com>
2018-03-21 01:16:03
extract each frame method.
1 parent 6741d5b
Changed files (1)
lib
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)