Class: Sass::Script::Variable

Inherits:
Node show all
Defined in:
/var/www/sass-pages/.haml/lib/sass/script/variable.rb

Overview

A SassScript parse node representing a variable.

Instance Attribute Summary

Instance Method Summary

Methods inherited from Node

#dasherize, #perform

Constructor Details

- (Variable) initialize(name)

A new instance of Variable

Parameters:



11
12
13
14
# File '/var/www/sass-pages/.haml/lib/sass/script/variable.rb', line 11

def initialize(name)
  @name = name
  super()
end

Instance Attribute Details

- (String) name (readonly)

The name of the variable.

Returns:



8
9
10
# File '/var/www/sass-pages/.haml/lib/sass/script/variable.rb', line 8

def name
  @name
end

Instance Method Details

- (Literal) _perform(environment) (protected)

Evaluates the variable.

Parameters:

  • (Sass::Environment) environment — The environment in which to evaluate the SassScript

Returns:

  • (Literal) — The SassScript object that is the value of the variable

Raises:



38
39
40
41
42
43
44
45
# File '/var/www/sass-pages/.haml/lib/sass/script/variable.rb', line 38

def _perform(environment)
  raise SyntaxError.new("Undefined variable: \"$#{name}\".") unless val = environment.var(name)
  if val.is_a?(Number)
    val = val.dup
    val.original = nil
  end
  return val
end

- (Array<Node>) children

Returns an empty array.

Returns:

  • (Array<Node>) — empty

See Also:



27
28
29
# File '/var/www/sass-pages/.haml/lib/sass/script/variable.rb', line 27

def children
  []
end

- (String) inspect(opts = {}) Also known as: to_sass

A string representation of the variable

Returns:

  • (String) — A string representation of the variable


17
18
19
20
# File '/var/www/sass-pages/.haml/lib/sass/script/variable.rb', line 17

def inspect(opts = {})
  return "!important" if name == "important"
  "$#{dasherize(name, opts)}"
end