Sha256: 7d82f4af67e9cc9d401016ca81eca6963effab9322dbffca6d0b88f9645dc980
Contents?: true
Size: 1.91 KB
Versions: 7
Compression:
Stored size: 1.91 KB
Contents
# -*- coding: utf-8 -*- # Copyright (C) 2010, 2011 Rocky Bernstein <rockyb@rubyforge.net> require 'rubygems'; require 'require_relative' require_relative 'locals' class Trepan::SubSubcommand::InfoVariablesGlobals < Trepan::SubSubcommand Trepan::Util.suppress_warnings { Trepanning::Subcommand.set_name_prefix(__FILE__, self) HELP = <<-EOH #{CMD} #{CMD} [names] Show global variables. Normally for each which show both the name and value. If you just want a list of names add parameter 'names'. EOH SHORT_HELP = 'Show global variables' MIN_ARGS = 0 MAX_ARGS = 1 NEED_STACK = true } def get_names global_variables.sort end def run(args) if args.size == 2 if 0 == 'names'.index(args[-1].downcase) names = get_names() if names.empty? msg "No global variables defined." else section "Global variable names:" width = settings[:maxwidth] mess = Columnize::columnize(names, @proc.settings[:maxwidth], ' ', false, true, ' ' * 2).chomp msg mess end else errmsg("unrecognized argument: #{args[-1]}") end elsif args.size == 1 names = get_names if names.empty? msg "No global variables defined." else section "Global variables:" names.each do |var_name| s = @proc.debug_eval(var_name.to_s) msg("#{var_name} = #{s.inspect}", :code=>true) end end else errmsg("Wrong number of arguments #{args.size}") end end end if __FILE__ == $0 # Demo it. require_relative '../../../mock' require_relative '../variables' cmd = MockDebugger::subsub_setup(Trepan::Subcommand::InfoVariables, Trepan::SubSubcommand::InfoVariablesGlobals) cmd.run(cmd.prefix) cmd.run(cmd.prefix + ['name']) end
Version data entries
7 entries across 7 versions & 2 rubygems