Class Sass::Environment
In: lib/sass/environment.rb
Parent: Object

The lexical environment for SassScript. This keeps track of variable, mixin, and function definitions.

A new environment is created for each level of Sass nesting. This allows variables to be lexically scoped. The new environment refers to the environment in the upper scope, so it has access to variables defined in enclosing scopes, but new variables are defined locally.

Environment also keeps track of the {Engine} options so that they can be made available to {Sass::Script::Functions}.

Methods

caller   content   new  

Constants

DASH = '_', '-'

Attributes

caller  [W] 
content  [W] 
options  [R] 
parent  [R]  The enclosing environment, or nil if this is the global environment.

@return [Environment]

Public Class methods

@param options [{Symbol => Object}] The options hash. See

  {file:SASS_REFERENCE.md#sass_options the Sass options documentation}.

@param parent [Environment] See \{parent}

Public Instance methods

The environment of the caller of this environment‘s mixin or function. @return {Environment?}

The content passed to this environmnet. This is naturally only set for mixin body environments with content passed in. @return {Environment?}

[Validate]