initial steps

This commit is contained in:
Torsten Ruger 2015-08-20 00:53:20 +02:00
parent 4257bc446f
commit 3c959fecb2
3 changed files with 44 additions and 23 deletions

25
lib/class_view.rb Normal file
View File

@ -0,0 +1,25 @@
class ClassView
def initialize
# 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)
layout = Virtual.machine.space.get_class_by_name(clas_model._name).object_layout
vars = []
layout.object_instance_names.each do |name|
vars.push name
end
vars
end
end

View File

@ -3,6 +3,4 @@ require "opal"
require "opal-parser"
require "main_view"
Virtual.machine.boot
MainView.new()

View File

@ -1,35 +1,34 @@
require 'browser'
require 'browser/canvas'
require 'browser/http'
require 'native'
require "salama"
require "point"
require "interpreter/interpreter"
require_relative "registers_view"
require_relative "object_view"
require_relative "space_view"
require_relative "class_view"
#require_relative "registers_view"
#require_relative "object_view"
#require_relative "space_view"
class MainView
def initialize
@canvas = Browser::Canvas.new
@canvas.element.width = 1000
@canvas.element.height = 500
Browser::HTTP.get "/tasks.json" do
on :success do |res|
is = Ast::Expression.from_basic(res.json)
Virtual::Compiler.compile( is , Virtual.machine.space.get_main )
Virtual.machine.run_before Virtual::Machine::FIRST_PASS
end
end
@canvas.append_to($document.body)
machine = Virtual.machine.boot
code = Ast::OperatorExpression.new("+", Ast::IntegerExpression.new(2),Ast::IntegerExpression.new(5))
Virtual::Compiler.compile( code , machine.space.get_main )
machine.run_before "Register::CallImplementation"
@interpreter = Interpreter::Interpreter.new
draw
end
def draw
DOM {
div.info {
span.red "I'm all cooked up."
}
}.append_to($document.body)
end
def no
height = `window.innerHeight`
width = `window.innerWidth`
body = Native(`window.document.body`)
# bit of a hack as it assumes index's structure
html_con = body.firstElementChild
@ -51,5 +50,4 @@ class MainView
end
attr_reader :container
end