OpenCascade
OpenCascade is subclass of OpenObject. It differs in a few significant ways.
The main reason this class is labeled "cascade", every internal Hash is trandformed into an OpenCascade dynamically upon access. This makes it easy to create "cascading" references.
h = { :x => { :y => { :z => 1 } } } c = OpenCascade[h] c.x.y.z #=> 1
Methods
Public Instance methods
[ show source ]
# File lib/facets/opencascade.rb, line 76 def method_missing( sym, arg=nil ) type = sym.to_s[-1,1] name = sym.to_s.gsub(/[=!?]$/, '').to_sym if type == '=' self[name] = arg elsif type == '!' self[name] = arg self else val = self[name] val = object_class[val] if Hash === val val end end