Module: Skiptrace

Defined in:
lib/skiptrace/version.rb,
lib/skiptrace/location.rb,
lib/skiptrace/internal/jruby.rb,
lib/skiptrace/binding_locations.rb,
lib/skiptrace/internal/rubinius.rb,
ext/skiptrace/cruby.c

Defined Under Namespace

Modules: Rubinius Classes: BindingLocations, Location

Constant Summary collapse

VERSION =
"0.8.1"

Class Method Summary collapse

Class Method Details

.current_bindingsObject

Gets the current bindings for all available Ruby frames.

Filters the internal Rubinius and Skiptrace frames.



36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/skiptrace/internal/rubinius.rb', line 36

def Skiptrace.current_bindings
  locations = ::Rubinius::VM.backtrace(1, true)

  Skiptrace::Rubinius::InternalLocationFilter.new(locations).filter.map do |location|
    Binding.setup(
      location.variables,
      location.variables.method,
      location.constant_scope,
      location.variables.self,
      location
    )
  end
end