Sha256: 95299d60030d16f7ca187a66fc731f005aa02b803ec9e10244efdcc99457f305

Contents?: true

Size: 670 Bytes

Versions: 1

Compression:

Stored size: 670 Bytes

Contents

require 'sandbox'
require 'pp'

module Interface
  def self.mputs(*s)
    puts(*s)
  end
end

box=Sandbox.safe
pp box
box.ref Interface
box.eval("def self.a;\nInterface::mputs 123\nend\n self.a")
box.eval('self.a')

normal=Sandbox.new
normal.eval("a=12")
pp normal.eval("a")

s=Sandbox.safe
s.eval("a=12")
pp s.eval("a")



s=Sandbox.safe
s.ref Interface
s.eval("$a=12")
pp s.eval("$a")


s=Sandbox.safe
s.ref Interface
s.eval("class X\n@@x||=123\n@@x+=1\ndef self.x\n@@x\nend\nend")
pp s.eval("X::x")


s=Sandbox.safe
s.eval("class X
@@x=X.new
def self.x
@@x
end
def a
self.object_id
end
end
")
pp s.eval("X::x.a")
pp s.eval("X::x.a")
s.load('defa.rb')
s.eval('a')




Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
appswarm-0.0.1 packages/msandbox/old/test2.rb