1
0
Fork 0
mirror of https://github.com/rubyjs/therubyracer synced 2023-03-27 23:21:42 -04:00

Load javascript from IO objets and by file name

This commit is contained in:
Charles Lowell 2010-01-10 21:09:11 +02:00
parent 9daf0f7ee7
commit f35a43763e

View file

@ -10,7 +10,10 @@ module V8
end if block_given?
end
def eval(javascript)
def eval(javascript, sourcename = '<eval>', line = 1)
if IO === javascript || StringIO === javascript
javascript = javascript.read()
end
@native.eval(javascript).tap do |result|
raise JavascriptError.new(result) if result.kind_of?(C::Message)
return To.ruby(result)
@ -21,6 +24,16 @@ module V8
self.eval(*args)
end
def load(filename)
File.open(filename) do |file|
evaluate file, filename, 1
end
end
def [](key)
To.ruby(@native.Global().Get(key.to_s))
end
def []=(key, value)
value.tap do
@native.Global().tap do |scope|