Class Sass::Tree::AttrNode
In: lib/sass/tree/attr_node.rb
Parent: ValueNode

Methods

==   new   to_s  

Attributes

name  [RW] 

Public Class methods

[Source]

    # File lib/sass/tree/attr_node.rb, line 7
 7:     def initialize(name, value, style)
 8:       @name = name
 9:       super(value, style)
10:     end

Public Instance methods

[Source]

    # File lib/sass/tree/attr_node.rb, line 12
12:     def ==(other)
13:       self.class == other.class && name == other.name && super
14:     end

[Source]

    # File lib/sass/tree/attr_node.rb, line 16
16:     def to_s(tabs, parent_name = nil)
17:       if value[-1] == ?;
18:         raise Sass::SyntaxError.new("Invalid attribute: #{declaration.dump} (This isn't CSS!).", @line)
19:       end
20:       real_name = name
21:       real_name = "#{parent_name}-#{real_name}" if parent_name
22: 
23:       if value.empty? && children.empty?
24:         raise Sass::SyntaxError.new("Invalid attribute: #{declaration.dump}.", @line)
25:       end
26: 
27:       join_string = case @style
28:                     when :compact; ' '
29:                     when :compressed; ''
30:                     else "\n"
31:                     end
32:       spaces = '  ' * (tabs - 1)
33:       to_return = ''
34:       if !value.empty?
35:         to_return << "#{spaces}#{real_name}:#{@style == :compressed ? '' : ' '}#{value};#{join_string}"
36:       end
37: 
38:       children.each do |kid|
39:         to_return << "#{kid.to_s(tabs, real_name)}" << join_string
40:       end
41: 
42:       (@style == :compressed && parent_name) ? to_return : to_return[0...-1]
43:     end

[Validate]