class Compass::Configuration::Inheritance::ClassMethods::ArrayProxy
Public Class Methods
new(data, attr)
click to toggle source
# File lib/compass/configuration/inheritance.rb, line 65 def initialize(data, attr) @data, @attr = data, attr end
Public Instance Methods
<<(v)
click to toggle source
# File lib/compass/configuration/inheritance.rb, line 74 def <<(v) @data.send(:"add_to_#{@attr}", v) end
>>(v)
click to toggle source
# File lib/compass/configuration/inheritance.rb, line 77 def >>(v) @data.send(:"remove_from_#{@attr}", v) end
method_missing(m, *args, &block)
click to toggle source
Calls superclass method
# File lib/compass/configuration/inheritance.rb, line 102 def method_missing(m, *args, &block) a = to_ary if a.respond_to?(m) a.send(m,*args, &block) else super end end
serialize_to_config(prop)
click to toggle source
# File lib/compass/configuration/inheritance.rb, line 80 def serialize_to_config(prop) if v = @data.raw(prop) "#{prop} = #{v.inspect}" else s = "" if added = @data.instance_variable_get("@added_to_#{@attr}") added.each do |a| s << "#{prop} << #{a.inspect}\n" end end if removed = @data.instance_variable_get("@removed_from_#{@attr}") removed.each do |r| s << "#{prop} >> #{r.inspect}\n" end end if s[-1..-1] == "\n" s[0..-2] else s end end end
to_a()
click to toggle source
# File lib/compass/configuration/inheritance.rb, line 71 def to_a to_ary end
to_ary()
click to toggle source
# File lib/compass/configuration/inheritance.rb, line 68 def to_ary @data.send(:"read_inherited_#{@attr}_array") end