Module: Compass::ImportOnce
- Defined in:
- lib/compass/import-once.rb,
lib/compass/import-once/engine.rb,
lib/compass/import-once/version.rb,
lib/compass/import-once/importer.rb
Overview
although this is part of the compass suite of gems, it doesn’t depend on compass, so any sass-based project can use to to get import-once behavior for all of their importers.
Defined Under Namespace
Constant Summary collapse
- VERSION =
File.read(File.join(File.dirname(__FILE__), "..", "..", "..", "VERSION")).strip
Class Method Summary collapse
- .activate! ⇒ Object
-
.import_tracker ⇒ Object
A map of css filenames to a set of engine cache keys that uniquely identify what has been imported.
Class Method Details
.activate! ⇒ Object
23 24 25 |
# File 'lib/compass/import-once.rb', line 23 def activate! require 'compass/import-once/activate' end |
.import_tracker ⇒ Object
A map of css filenames to a set of engine cache keys that uniquely identify what has been imported. The lifecycle of each key is handled by code wrapped around Sass’s render, to_css and render_with_sourcemap methods on the Sass::Engine.
Ideally, Sass would provide a place in it’s public API to put information that persists for only the duration of a single compile and would be accessible for all sass engines and sass functions written in ruby.
19 20 21 |
# File 'lib/compass/import-once.rb', line 19 def import_tracker Thread.current[:import_once_tracker] ||= {} end |