gems.sass-3.2.8.lib.sass.tree.supports_node.rb Maven / Gradle / Ivy
Go to download
Sass makes CSS fun again. Sass is an extension of CSS3, adding nested rules, variables, mixins, selector
inheritance, and more. It's translated to well-formatted, standard CSS using the command line tool or a
web-framework plugin.
This is a repackaged GEM in a JAR format of the sass-lang.gem package. The sass-gems package version
follows the sass-lang.gem versions located http://rubyforge.org/frs/?group_id=9702. Simply change
the version of this package to download and repackage the same GEM version.
module Sass::Tree
# A static node representing a `@supports` rule.
# `@supports` rules behave differently from other directives
# in that when they're nested within rules,
# they bubble up to top-level.
#
# @see Sass::Tree
class SupportsNode < DirectiveNode
# The name, which may include a browser prefix.
#
# @return [String]
attr_accessor :name
# The supports condition.
#
# @return [Sass::Supports::Condition]
attr_accessor :condition
# @see RuleNode#tabs
attr_accessor :tabs
# @see RuleNode#group_end
attr_accessor :group_end
# @param condition [Sass::Supports::Condition] See \{#condition}
def initialize(name, condition)
@name = name
@condition = condition
@tabs = 0
super('')
end
# @see DirectiveNode#value
def value; raise NotImplementedError; end
# @see DirectiveNode#resolved_value
def resolved_value
@resolved_value ||= "@#{name} #{condition.to_css}"
end
# True when the directive has no visible children.
#
# @return [Boolean]
def invisible?
children.all? {|c| c.invisible?}
end
# @see Node#bubbles?
def bubbles?; true; end
end
end