@JRubyMethod public IRubyObject label(ThreadContext context) { if (element.getFrameType() == FrameType.BLOCK) { // NOTE: "block in " + ... logic, now, also at RubyStackTraceElement.to_s_mri if (label == null) label = context.runtime.newString("block in " + element.getMethodName()); return label; } return base_label(context); }
@JRubyMethod public IRubyObject label(ThreadContext context) { if (element.getFrameType() == FrameType.BLOCK) { // NOTE: "block in " + ... logic, now, also at RubyStackTraceElement.to_s_mri if (label == null) label = context.runtime.newString("block in " + element.getMethodName()); return label; } return base_label(context); }
trace.add(new RubyStackTraceElement(rubyElement.getClassName(), dupFrameName, rubyElement.getFileName(), rubyElement.getLineNumber(), rubyElement.isBinding(), rubyElement.getFrameType()));
trace.add(new RubyStackTraceElement(rubyElement.getClassName(), dupFrameName, rubyElement.getFileName(), rubyElement.getLineNumber(), rubyElement.isBinding(), rubyElement.getFrameType()));
public static RubyString to_s_mri(ThreadContext context, RubyStackTraceElement element) { RubySymbol methodSym = context.runtime.newSymbol(element.getMethodName()); RubyString line = context.runtime.newString(new ByteList(methodSym.getBytes().length() + element.getFileName().length() + 18)); line.setEncoding(methodSym.getEncoding()); line.cat(element.getFileName().getBytes()); line.cat(CommonByteLists.COLON); line.cat(ConvertBytes.longToByteList(element.getLineNumber())); line.cat(CommonByteLists.BACKTRACE_IN); if (element.getFrameType() == FrameType.BLOCK) line.catString("block in "); line.cat(methodSym.getBytes()); line.cat('\''); return line; }
public static RubyString to_s_mri(ThreadContext context, RubyStackTraceElement element) { RubySymbol methodSym = context.runtime.newSymbol(element.getMethodName()); RubyString line = context.runtime.newString(new ByteList(methodSym.getBytes().length() + element.getFileName().length() + 18)); line.setEncoding(methodSym.getEncoding()); line.cat(element.getFileName().getBytes()); line.cat(CommonByteLists.COLON); line.cat(ConvertBytes.longToByteList(element.getLineNumber())); line.cat(CommonByteLists.BACKTRACE_IN); if (element.getFrameType() == FrameType.BLOCK) line.catString("block in "); line.cat(methodSym.getBytes()); line.cat('\''); return line; }