class Byebug::Command
def settings
def settings unless defined? @settings and @settings @settings = Object.new map = settings_map c = class << @settings; self end c.send(:define_method, :[]) do |name| raise "No such setting #{name}" unless map.has_key?(name) map[name][:getter].call end c.send(:define_method, :[]=) do |name, value| raise "No such setting #{name}" unless map.has_key?(name) map[name][:setter].call(value) end end @settings end