class Haml::Parser::Line
@private
def tabs
- Private: -
def tabs line = self @tabs ||= compiler.instance_eval do break 0 if line.text.empty? || !(whitespace = line.full[/^\s+/]) if @indentation.nil? @indentation = whitespace if @indentation.include?(?\s) && @indentation.include?(?\t) raise SyntaxError.new("Indentation can't use both tabs and spaces.", line.index) end @flat_spaces = @indentation * (@template_tabs+1) if flat? break 1 end tabs = whitespace.length / @indentation.length break tabs if whitespace == @indentation * tabs break @template_tabs + 1 if flat? && whitespace =~ /^#{@flat_spaces}/ raise SyntaxError.new(<<END.strip.gsub("\n", ' '), line.index) istent indentation: #{Haml::Shared.human_indentation whitespace, true} used for indentation, e rest of the document was indented using #{Haml::Shared.human_indentation @indentation}. end end