salaam update

fixes (last?) index bug
This commit is contained in:
Torsten Ruger 2015-10-27 20:08:23 +02:00
parent 18cb04240d
commit 3477de8c81
4 changed files with 11 additions and 15 deletions

View File

@ -7,7 +7,7 @@ gem "ast" , :github => "whitequark/ast"
#gem "salama" , "0.3" , :path => "../salama"
gem "salama" , github: "salama/salama"
gem "parslet" , github: "salama/parslet"
gem "parslet"
gem "salama-reader" , github: "salama/salama-reader"
gem "salama-arm" , github: "salama/salama-arm"
gem "salama-object-file" , github: "salama/salama-object-file"

View File

@ -8,12 +8,6 @@ GIT
sprockets (~> 3.1)
tilt (>= 1.4)
GIT
remote: git://github.com/salama/parslet.git
revision: 1381e3320efd0133b1d2935ef80079717ce9f245
specs:
parslet (1.7.1)
GIT
remote: git://github.com/salama/salama-arm.git
revision: 9b011ee365ea0312568ba858662023747154c59f
@ -36,7 +30,7 @@ GIT
GIT
remote: git://github.com/salama/salama.git
revision: bb908dcf76b4497078afb5aa57a4d5643abfc4e6
revision: 79cf59c4e24dabaa4fc114a2dee4536b8c55e2a6
specs:
salama (0.3.0)
salama-object-file (~> 0.3)
@ -51,6 +45,7 @@ GIT
GEM
remote: https://rubygems.org/
specs:
blankslate (3.1.3)
capybara (2.4.4)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
@ -77,6 +72,8 @@ GEM
opal-rspec (0.4.3)
opal (>= 0.7.0, < 0.9)
paggio (0.2.5)
parslet (1.7.1)
blankslate (>= 2.0, <= 4.0)
poltergeist (1.5.1)
capybara (~> 2.1)
cliver (~> 0.3.1)
@ -129,7 +126,7 @@ DEPENDENCIES
opal!
opal-browser
opal-rspec (~> 0.4.2)
parslet!
parslet
poltergeist (~> 1.5.0)
rspec (~> 3.2.0)
salama!

View File

@ -14,6 +14,7 @@ class Object
int t_seven()
int tim = times(5,3)
tim.putint()
return tim
end
int main()

View File

@ -14,13 +14,12 @@ class ObjectView < ListView
def draw
@element = super(@interpreter ? "ul.nav!" : "ul")
prepend_element div("li" , "-------------------------")
prepend_element div( "li" ) << div("span" , class_header(@object_id) )
return @element
end
def object_changed reg , at
puts "Object changed in #{reg} , at #{at}"
#puts "Object changed in #{reg} , at #{at}"
for_object = @interpreter.get_register( reg )
return unless for_object == @object_id
#puts "Object changed #{for_object} , at #{at}"
@ -35,8 +34,8 @@ class ObjectView < ListView
end
#puts "got var name #{variable}#{variable.class} for #{at}, #{f}"
view = RefView.new( variable , oid(f) , @z )
if( @children[at-1] )
replace_at(at-1 , view)
if( @children[at] )
replace_at(at , view)
else
append_view(view)
end
@ -50,7 +49,7 @@ class ObjectView < ListView
def content_elements
object = Register.machine.objects[@object_id]
fields = []
fields = [ConstantView.new("li" , "-------------------------")]
if object and ! object.is_a?(String)
object.get_instance_variables.each do |variable|
f = object.get_instance_variable(variable)
@ -59,7 +58,6 @@ class ObjectView < ListView
if( object.is_a?(Parfait::Indexed) )
index = 1
object.each do | o|
puts "gett #{o}"
fields << RefView.new( index.to_s , oid(o) , @z )
index += 1
end