more and meaningful tooltips
This commit is contained in:
@ -5,12 +5,28 @@ module Main
|
||||
super(*args)
|
||||
|
||||
page._classes!.clear
|
||||
all = []
|
||||
Virtual.machine.space.classes.each do |name , claz|
|
||||
next if [:Kernel,:Module,:MetaClass,:BinaryCode].index name
|
||||
all << name
|
||||
end
|
||||
all.sort.each do |name|
|
||||
c = Volt::Model.new :name => name
|
||||
page._classes << c
|
||||
end
|
||||
end
|
||||
|
||||
def variables(clas_model)
|
||||
self.variables(clas_model.name)
|
||||
end
|
||||
|
||||
def self.variables(clas_name)
|
||||
layout = Virtual.machine.space.get_class_by_name(clas_name).object_layout
|
||||
vars = []
|
||||
layout.object_instance_names.each do |name|
|
||||
vars << name
|
||||
end
|
||||
vars
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -23,5 +23,25 @@ module Main
|
||||
var.class.name.split("::").last[0,2]
|
||||
end
|
||||
|
||||
def variables val
|
||||
name = val.class.name.split("::").last
|
||||
ClassesController.variables(name)
|
||||
end
|
||||
|
||||
def content(id)
|
||||
object = Virtual.machine.objects[id]
|
||||
fields = []
|
||||
if object and ! object.is_a?(String)
|
||||
clazz = object.class.name.split("::").last
|
||||
fields << "#{clazz}:#{object.internal_object_length}"
|
||||
fields << "--------------------"
|
||||
object.get_instance_variables.each do |variable|
|
||||
f = object.get_instance_variable(variable)
|
||||
fields << "#{f.class.name.split('::').last} : #{f.object_id}"
|
||||
end
|
||||
end
|
||||
fields
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user