Value

The abstract base class of Sass's value types.

This is passed to and returned by CustomFunctions, which are passed into the Sass implementation using functions.

Hierarchy

Implements

Constructors

Accessors

  • get hasBrackets(): boolean
  • Whether this value as a list has brackets.

    All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.

    Returns boolean

  • get isTruthy(): boolean
  • Whether the value counts as true in an @if statement and other contexts.

    Returns boolean

Methods

  • Throws if this isn't a SassBoolean.

    ⚠️ Heads up!

    Functions should generally use isTruthy rather than requiring a literal boolean.

    Parameters

    • Optional name: string

      The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

    Returns SassBoolean

  • Throws if this isn't a SassMap.

    Parameters

    • Optional name: string

      The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

    Returns SassMap

  • Returns whether this represents the same value as other.

    Parameters

    Returns boolean

  • Returns the value at index index in this value as a list, or undefined if index isn't valid for this list.

    All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.

    This is a shorthand for this.asList.get(index), although it may be more efficient in some cases.

    ⚠️ Heads up!

    This method uses the same indexing conventions as the immutable package: unlike Sass the index of the first element is 0, but like Sass negative numbers index from the end of the list.

    Parameters

    • index: number

    Returns undefined | Value

  • Returns a hash code that can be used to store this in a hash map.

    Returns number

  • Converts sassIndex into a JavaScript-style index into the list returned by asList.

    Sass indexes are one-based, while JavaScript indexes are zero-based. Sass indexes may also be negative in order to index from the end of the list.

    Throws

    Error If sassIndex isn't a number, if that number isn't an integer, or if that integer isn't a valid index for asList.

    Parameters

    • sassIndex: Value

      The Sass-style index into this as a list.

    • Optional name: string

      The name of the function argument sassIndex came from (without the $) if it came from an argument. Used for error reporting.

    Returns number