RegexLexer
# File lib/rouge/lexers/yaml.rb, line 56 def continue_indent(match) puts " yaml: continue_indent" if @debug @next_indent += match.size end
# File lib/rouge/lexers/yaml.rb, line 31 def dedent?(level) level < self.indent end
# File lib/rouge/lexers/yaml.rb, line 26 def indent raise 'empty indent stack!' if @indent_stack.empty? @indent_stack.last end
# File lib/rouge/lexers/yaml.rb, line 35 def indent?(level) level > self.indent end
reset the indentation levels
# File lib/rouge/lexers/yaml.rb, line 19 def reset_indent puts " yaml: reset_indent" if @debug @indent_stack = [0] @next_indent = 0 @block_scalar_indent = nil end
Save a possible indentation level
# File lib/rouge/lexers/yaml.rb, line 40 def save_indent(match) @next_indent = match.size puts " yaml: indent: #{self.indent}/#@next_indent" if @debug puts " yaml: popping indent stack - before: #@indent_stack" if @debug if dedent?(@next_indent) @indent_stack.pop while dedent?(@next_indent) puts " yaml: popping indent stack - after: #@indent_stack" if @debug puts " yaml: indent: #{self.indent}/#@next_indent" if @debug # dedenting to a state not previously indented to is an error [match[0...self.indent], match[self.indent..-1]] else [match, ''] end end
Generated with the Darkfish Rdoc Generator 2.