class Less::Node::Variable

Attributes

declaration[R]

Public Class Methods

new(key, value = nil, parent = nil) click to toggle source
Calls superclass method Less::Node::Property.new
# File lib/less/engine/nodes/property.rb, line 91
def initialize key, value = nil, parent = nil
  @declaration = value ? true : false
  super key.delete('@'), value, parent
end

Public Instance Methods

evaluate(env = nil) click to toggle source
# File lib/less/engine/nodes/property.rb, line 104
      def evaluate env = nil
        if declaration
#          puts "evaluating DEC"
          value.evaluate #2
        else
#          puts "evaluating #{to_s} par: #{parent} env: #{env ? env.variables : "nil"}"
        begin
          var = (env || self.parent).nearest(to_s) #3
        rescue VariableNameError
          var = self.parent.nearest(to_s)
        end
          var.evaluate
        end
      end
inspect() click to toggle source
# File lib/less/engine/nodes/property.rb, line 96
def inspect
  "@#{super}"
end
to_css(env = nil) click to toggle source
# File lib/less/engine/nodes/property.rb, line 123
def to_css env = nil
  val = evaluate env
  if val.respond_to? :to_css
    env ? val.to_css(env) : val.to_css
  else
    val.map {|i| env ? i.to_css(env) : i.to_css }.join ', '
  end
end
to_ruby() click to toggle source
# File lib/less/engine/nodes/property.rb, line 119
def to_ruby
  evaluate.to_ruby
end
to_s() click to toggle source
# File lib/less/engine/nodes/property.rb, line 100
def to_s
  "@#{super}"
end