class Minjs::ECMA262::Prog
Class of ECMA262
Program
Attributes
exe_context[RW]
source_elements[R]
var_env[R]
Public Class Methods
new(var_env, source_elements)
click to toggle source
# File lib/minjs/ecma262/base.rb, line 324 def initialize(var_env, source_elements) @source_elements = source_elements @var_env = var_env end
Public Instance Methods
==(obj)
click to toggle source
compare object
# File lib/minjs/ecma262/base.rb, line 351 def ==(obj) self.class == obj.class and self.source_elements == obj.source_elements end
deep_dup()
click to toggle source
duplicate object @see Base#deep_dup
# File lib/minjs/ecma262/base.rb, line 331 def deep_dup self.class.new(var_env, source_elements.deep_dup) end
replace(from, to)
click to toggle source
Replaces children object @see Base#replace
# File lib/minjs/ecma262/base.rb, line 337 def replace(from, to) if from == @source_elements @source_elements = to end end
to_js(options = {})
click to toggle source
Returns a ECMAScript string containg the representation of element. @see Base#to_js
# File lib/minjs/ecma262/base.rb, line 357 def to_js(options = {}) concat options, @source_elements end
traverse(parent) { |parent, self| ... }
click to toggle source
Traverses this children and itself with given block. @see Base#traverse
# File lib/minjs/ecma262/base.rb, line 345 def traverse(parent, &block) @source_elements.traverse(self, &block) yield parent, self end