module Byebug::FrameFunctions
def get_frame_call(prefix, pos, context)
def get_frame_call(prefix, pos, context) id = context.frame_method(pos) klass = context.frame_class(pos) call_str = "" if id args = context.frame_args(pos) locals = context.frame_locals(pos) if Command.settings[:callstyle] != :short && klass if Command.settings[:callstyle] == :tracked arg_info = context.frame_args_info(pos) end call_str << "#{klass}." end call_str << id.id2name if args.any? call_str << "(" args.each_with_index do |name, i| case Command.settings[:callstyle] when :short call_str += "%s, " % [name] when :last klass = locals[name].class if klass.inspect.size > 20+3 klass = klass.inspect[0..20]+"..." end call_str += "%s#%s, " % [name, klass] when :tracked if arg_info && arg_info.size > i call_str += "#{name}: #{arg_info[i].inspect}, " else call_str += "%s, " % name end end if call_str.size > self.class.settings[:width] - prefix.size # Strip off trailing ', ' if any but add stuff for later trunc call_str[-2..-1] = ",...XX" break end end call_str[-2..-1] = ")" # Strip off trailing ', ' if any end end return call_str end