class Printers::Xml::AllVariables

Public Class Methods

new(object) click to toggle source
# File lib/debugger/printers/xml.rb, line 157
def initialize(object)
  @object = object
  @instance_binding = object.instance_eval{binding()}
  @class_binding = object.class.class_eval('binding()')

  @instance_variable_names = object.instance_variables
  @self_variable_name = @instance_variable_names.delete('self')
  @class_variable_names = object.class.class_variables
end

Public Instance Methods

variables() click to toggle source
# File lib/debugger/printers/xml.rb, line 167
def variables
  self_variables + instance_variables + class_variables
end

Private Instance Methods

class_variables() click to toggle source
# File lib/debugger/printers/xml.rb, line 187
def class_variables
  @class_variable_names.map do |var|
    [var.to_s, (eval(var.to_s, @class_binding) rescue "<raised exception>"), 'class']
  end
end
instance_variables() click to toggle source
# File lib/debugger/printers/xml.rb, line 173
def instance_variables
  @instance_variable_names.map do |var|
    [var.to_s, (eval(var.to_s, @instance_binding) rescue "<raised exception>"), 'instance']
  end
end
self_variables() click to toggle source
# File lib/debugger/printers/xml.rb, line 179
def self_variables
  if @self_variable_name
    [@self_variable_name, (eval(@self_variable_name, @instance_binding)), 'instance']
  else
    []
  end
end