module BindingDumper::CoreExt::BindingExt

Public Instance Methods

data_to_dump() click to toggle source

Returns all the data that represents a context

(including context, local variables, file, line and method name)

@return [Hash]

# File lib/binding_dumper/core_ext/binding_ext.rb, line 29
def data_to_dump
  context = eval('self')
  result = {
    context: context,
    method: eval('__method__'),
    file: eval('__FILE__'),
    line: eval('__LINE__'),
    lvars: lvars_to_dump
  }
end
dump(&block) click to toggle source

Dumps a binding and returns a dump

@return [String]

@yield [String] (if block given)

# File lib/binding_dumper/core_ext/binding_ext.rb, line 46
def dump(&block)
  dumped = UniversalDumper.dump(data_to_dump)
  block.call(dumped) if block_given?
  dumped
end
lvars_to_dump() click to toggle source

Returns mapping

{ local variable name => local variable }

@return [Hash]

# File lib/binding_dumper/core_ext/binding_ext.rb, line 18
def lvars_to_dump
  eval('local_variables').each_with_object({}) do |lvar_name, result|
    result[lvar_name] = eval(lvar_name.to_s)
  end
end