gems.sass-3.2.8.lib.sass.tree.directive_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 an unproccessed Sass `@`-directive.
# Directives known to Sass, like `@for` and `@debug`,
# are handled by their own nodes;
# only CSS directives like `@media` and `@font-face` become {DirectiveNode}s.
#
# `@import` and `@charset` are special cases;
# they become {ImportNode}s and {CharsetNode}s, respectively.
#
# @see Sass::Tree
class DirectiveNode < Node
# The text of the directive, `@` and all, with interpolation included.
#
# @return [Array]
attr_accessor :value
# The text of the directive after any interpolated SassScript has been resolved.
# Only set once \{Tree::Visitors::Perform} has been run.
#
# @return [String]
attr_accessor :resolved_value
# @param value [Array] See \{#value}
def initialize(value)
@value = value
super()
end
# @param value [String] See \{#resolved_value}
# @return [DirectiveNode]
def self.resolved(value)
node = new([value])
node.resolved_value = value
node
end
# @return [String] The name of the directive, including `@`.
def name
value.first.gsub(/ .*$/, '')
end
end
end