class CSSNative::Rule::Stylesheet
Public Class Methods
new(controller)
click to toggle source
# File lib/css-native/rule/stylesheet.rb, line 5 def initialize(controller) @properties = {} @controller = controller end
Public Instance Methods
method_missing(m, *args, &block)
click to toggle source
Calls superclass method
# File lib/css-native/rule/stylesheet.rb, line 26 def method_missing(m, *args, &block) if m.to_s.end_with? "=" props = args[0] props = props.join(" ") if props.kind_of?(Array) @properties[m.to_s.gsub("_", "-")[...-1]] = props.to_s else super(m, *args, &block) end end
subrule()
click to toggle source
# File lib/css-native/rule/stylesheet.rb, line 10 def subrule parent = @controller.instance_variable_get(:@parent) selector = @controller.instance_variable_get(:@selector) previous = @controller.instance_variable_get(:@previous) Rule.new(parent, selector, previous: previous) end
to_s()
click to toggle source
# File lib/css-native/rule/stylesheet.rb, line 18 def to_s "{\n" + @properties.map do |k, v| " #{k}: #{v};" end.join("\n") + "\n}" end