class ExecJS::MiniRacerRuntime::Context
def translate
def translate begin strip_functions! yield rescue MiniRacer::RuntimeError => e ex = ProgramError.new e.message if backtrace = e.backtrace backtrace = backtrace.map { |line| if line =~ /JavaScript at/ line.sub("JavaScript at ", "") .sub("<anonymous>", "(execjs)") .strip else line end } ex.set_backtrace backtrace end raise ex rescue MiniRacer::ParseError => e ex = RuntimeError.new e.message ex.set_backtrace(["(execjs):1"] + e.backtrace) raise ex end end