2008-10-13 09:49:35 -07:00
|
|
|
require 'sass/tree/node'
|
|
|
|
|
|
|
|
module Sass::Tree
|
|
|
|
class ForNode < Node
|
|
|
|
def initialize(var, from, to, exclusive, options)
|
|
|
|
@var = var
|
|
|
|
@from = from
|
|
|
|
@to = to
|
|
|
|
@exclusive = exclusive
|
|
|
|
super(options)
|
|
|
|
end
|
|
|
|
|
|
|
|
protected
|
|
|
|
|
|
|
|
def _perform(environment)
|
|
|
|
from = @from.perform(environment).to_i
|
|
|
|
to = @to.perform(environment).to_i
|
|
|
|
range = Range.new(from, to, @exclusive)
|
|
|
|
|
|
|
|
children = []
|
2009-04-14 02:13:24 -07:00
|
|
|
environment = Sass::Environment.new(environment)
|
2008-10-15 20:00:28 -07:00
|
|
|
range.each do |i|
|
|
|
|
environment.set_local_var(@var, Sass::Script::Number.new(i))
|
|
|
|
children += perform_children(environment)
|
|
|
|
end
|
2008-10-13 09:49:35 -07:00
|
|
|
children
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|