Module: Sass::Features

Included in:
Sass
Defined in:
lib/sass/features.rb

Overview

Provides Sass.has_feature? which allows for simple feature detection by providing a feature name.

Constant Summary collapse

KNOWN_FEATURES =

This is the set of features that can be detected.

When this is updated, the documentation of feature-exists() should be updated as well.

Set[*%w{
  global-variable-shadowing
  extend-selector-pseudoclass
  units-level-3
  at-error
}]

Instance Method Summary collapse

Instance Method Details

#add_feature(feature_name)

Add a feature to Sass. Plugins can use this to easily expose their availability to end users. Plugins must prefix their feature names with a dash to distinguish them from official features.

Examples:

Sass.add_feature("-import-globbing")
Sass.add_feature("-math-cos")


38
39
40
41
42
43
# File 'lib/sass/features.rb', line 38

def add_feature(feature_name)
  unless feature_name[0] == ?-
    raise ArgumentError.new("Plugin feature names must begin with a dash")
  end
  KNOWN_FEATURES << feature_name
end

#has_feature?(feature_name) ⇒ Boolean

Check if a feature exists by name. This is used to implement the Sass function feature-exists($feature)



23
24
25
# File 'lib/sass/features.rb', line 23

def has_feature?(feature_name)
  KNOWN_FEATURES.include?(feature_name)
end