class Sass::Tree::IfNode

@see Sass::Tree
each {IfNode} has a link ({#else}) to the next {IfNode}.
This is done as a linked list:
{IfNode}s are a little odd, in that they also represent ‘@else` and `@else if`s.
A dynamic node representing a Sass `@if` statement.

def _after_load

Other tags:
    See: Node#_after_load -
def _after_load
  super
  @else = Sass::Util.load(@else)
  @last_else = (@last_else ? Sass::Util.load(@last_else) : self)
end

def _around_dump

Other tags:
    See: Node#_around_dump -
def _around_dump
  old_else = @else
  old_last_else = @last_else
  @else = Sass::Util.dump(@else)
  @last_else = (self == @last_else ? nil : Sass::Util.dump(@last_else))
  super
ensure
  @else = old_else
  @last_else = old_last_else
end

def add_else(node)

Parameters:
  • node (IfNode) -- The `@else` node to append
def add_else(node)
  @last_else.else = node
  @last_else = node
end

def initialize(expr)

Parameters:
  • expr (Script::Expr) -- See \{#expr}
def initialize(expr)
  @expr = expr
  @last_else = self
  super()
end

def options=(options)

Other tags:
    See: Node#options= -
def options=(options)
  super
  self.else.options = options if self.else
end