Sha256: 95750ece01bcb7e86a16f6ddad5fe1e95f5ccfd170464ffad34891787cff396c

Contents?: true

Size: 1 KB

Versions: 31

Compression:

Stored size: 1 KB

Contents

module Sass
  module Script
    # A SassScript parse node representing a variable.
    class Variable < Node
      # The name of the variable.
      #
      # @return [String]
      attr_reader :name

      # @param name [String] See \{#name}
      def initialize(name)
        @name = name
      end

      # @return [String] A string representation of the variable
      def inspect
        "!#{name}"
      end

      # Evaluates the variable.
      #
      # @param environment [Sass::Environment] The environment in which to evaluate the SassScript
      # @return [Literal] The SassScript object that is the value of the variable
      # @raise [Sass::SyntaxError] if the variable is undefined
      def perform(environment)
        (val = environment.var(name)) && (return val)
        raise SyntaxError.new("Undefined variable: \"!#{name}\".")
      end

      # Returns an empty array.
      #
      # @return [Array<Node>] empty
      # @see Node#children
      def children
        []
      end
    end
  end
end

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
haml-edge-2.3.179 lib/sass/script/variable.rb
haml-edge-2.3.178 lib/sass/script/variable.rb
haml-edge-2.3.177 lib/sass/script/variable.rb
haml-edge-2.3.176 lib/sass/script/variable.rb
haml-edge-2.3.175 lib/sass/script/variable.rb
haml-edge-2.3.174 lib/sass/script/variable.rb
haml-edge-2.3.173 lib/sass/script/variable.rb
haml-edge-2.3.172 lib/sass/script/variable.rb
haml-edge-2.3.171 lib/sass/script/variable.rb
haml-edge-2.3.170 lib/sass/script/variable.rb
haml-edge-2.3.169 lib/sass/script/variable.rb
haml-edge-2.3.168 lib/sass/script/variable.rb
haml-edge-2.3.167 lib/sass/script/variable.rb
haml-edge-2.3.166 lib/sass/script/variable.rb
haml-edge-2.3.165 lib/sass/script/variable.rb
haml-edge-2.3.164 lib/sass/script/variable.rb
haml-edge-2.3.163 lib/sass/script/variable.rb
haml-edge-2.3.162 lib/sass/script/variable.rb
haml-edge-2.3.161 lib/sass/script/variable.rb
haml-edge-2.3.160 lib/sass/script/variable.rb