def tokadd_escape term
case
when src.scan(/\\\n/) then
when src.scan(/\\([0-7]{1,3}|x[0-9a-fA-F]{1,2})/) then
self.string_buffer << src.matched
when src.scan(/\\([MC]-|c)(?=\\)/) then
self.string_buffer << src.matched
self.tokadd_escape term
when src.scan(/\\([MC]-|c)(.)/) then
self.string_buffer << src.matched
when src.scan(/\\[McCx]/) then
rb_compile_error "Invalid escape character syntax"
when src.scan(/\\(.)/m) then
self.string_buffer << src.matched
else
rb_compile_error "Invalid escape character syntax"
end
end