Torsten Rüger
fa0aa30386
Since Builtin generates risc, just like mom instructions, it was a design mistake to put builtin into risc in the first place. Now that borders are coming more into focus, it make much more sense to have the builtin in mom. In fact the instructions should be moved out and a seperate invocation mechanism used , so functions can be parsed, not generated (wip)
47 lines
1004 B
Ruby
47 lines
1004 B
Ruby
class String
|
|
def camelise
|
|
self.split("_").collect{|str| str.capitalize_first }.join
|
|
end
|
|
def capitalize_first
|
|
self[0].capitalize + self[1..-1]
|
|
end
|
|
end
|
|
class Class
|
|
def short_name
|
|
self.name.split("::").last
|
|
end
|
|
end
|
|
|
|
# See risc/Readme
|
|
module Risc
|
|
# module method to reset, and init
|
|
def self.boot!
|
|
Position.clear_positions
|
|
end
|
|
end
|
|
|
|
require_relative "risc/padding"
|
|
require_relative "risc/position/position"
|
|
require_relative "risc/platform"
|
|
require_relative "risc/parfait_boot"
|
|
require_relative "risc/parfait_adapter"
|
|
require "parfait"
|
|
require_relative "risc/linker"
|
|
require_relative "risc/callable_compiler"
|
|
require_relative "risc/method_compiler"
|
|
require_relative "risc/block_compiler"
|
|
require_relative "risc/assembler"
|
|
require_relative "risc/risc_collection"
|
|
|
|
class Integer
|
|
def fits_u8?
|
|
self >= 0 and self <= 255
|
|
end
|
|
end
|
|
|
|
|
|
require_relative "risc/instruction"
|
|
require_relative "risc/register_value"
|
|
require_relative "risc/text_writer"
|
|
require_relative "risc/builder"
|