class CodeRay::Encoders::Debug
See also: Scanners::Debug
output, because consecutive :space tokens are merged.
You cannot fully restore the tokens information from the
It is readable and diff-able and is used for testing.
Fast encoder producing simple debug output.
= Debug Encoder
def begin_group kind
def begin_group kind @out << "#{kind}<" end
def begin_line kind
def begin_line kind @out << "#{kind}[" end
def end_group kind
def end_group kind @out << '>' end
def end_line kind
def end_line kind @out << ']' end
def text_token text, kind
def text_token text, kind if kind == :space @out << text else text = text.gsub('\\', '\\\\\\\\') if text.index('\\') text = text.gsub(')', '\\\\)') if text.index(')') @out << "#{kind}(#{text})" end end