Module: Convinius::ASM
Instance Method Summary collapse
Instance Method Details
#asm(opts = {}, &block) ⇒ Object
5 6 7 8 9 10 11 12 13 |
# File 'lib/convinius/asm.rb', line 5 def asm(opts = {}, &block) object = opts[:object] || Object.new opts = { :file => "(asm)", :line => 1, :method => :call }.merge! opts Rubinius.(object).dynamic_method(opts[:method], opts[:file], opts[:line]) do |g| block.arity > 0 ? yield(g) : g.instance_eval(&block) g.ret end object end |