class PutText::Parser::Slim::IgnoreEmbedded

Public Instance Methods

on_slim_embedded(_name, body) click to toggle source
# File lib/puttext/parser/slim.rb, line 28
def on_slim_embedded(_name, body)
  newlines = count_newlines(body)

  node = [:multi]
  newlines.times { node.push [:newline] }
  node
end

Private Instance Methods

count_newlines(body) click to toggle source
# File lib/puttext/parser/slim.rb, line 38
def count_newlines(body)
  newlines = 0
  newlines += 1 if body.first == :newline

  body.each do |el|
    newlines += count_newlines(el) if el.is_a?(Array)
  end

  newlines
end