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 self._load(data)
def self._load(data) expr, else_, children = Marshal.load(data) node = IfNode.new(expr) node.else = else_ node.children = children node.instance_variable_set('@last_else', node.else ? node.else.instance_variable_get('@last_else') : node) node end
def _dump(f)
def _dump(f) Marshal.dump([expr, self.else, children]) end
def add_else(node)
-
node
(IfNode
) -- The `@else` node to append
def add_else(node) @last_else.else = node @last_else = node end
def initialize(expr)
-
expr
(Script::Expr
) -- See \{#expr}
def initialize(expr) @expr = expr @last_else = self super() end