Від автора: ви можете розширити функціонал SASS, щоб надати користувачам додаткові можливості і налаштування. Щоб використовувати ці функції, користувач повинен знати Ruby.
Визначення користувальницьких функцій SASS
Ви можете визначити власні функції SASS, використовуючи Ruby API. Користувальницькі функції можна ввести, додавши їх в методи Ruby, як показано в наведеному нижче коді:
module Sass::Script::Functions
def reverse(string)
assert_type string, :String
Sass::Script::Value::String.new(string.value.reverse)
end
declare :reverse, [:string]
end
В даному коді ви можете бачити оголошення Функції та зазначення імен аргументів для неї. Якщо сталася помилка, функція не приймає ніяких аргументів, навіть якщо вона працює, а також приймає довільні аргументи ключового слова. Ви можете отримати значення Ruby, використовуючи атрибут value, доступ до об’єктів квітів здійснюється з допомогою ключових слів rgb (red, green чи blue.
Зберігання кешу
SASS зберігає кеш проаналізованих документів, який можна повторно використовувати без обробки. SASS використовує: cache_location для запису файлів кешу у файловій системі. Це дозволяє швидше компілювати файли SASS, і якщо ви видаляєте кешовані файли, вони будуть знову згенеровані при наступній компіляції. Ви можете визначити власне сховище кешу, встановивши параметр :cache_store. Таким чином можна записувати файли кеша в файлову систему або обмінюватися кеш-файлами, процесами або машинами ruby. Для зберігання і отримання результатів кеша SASS використовує примірник підкласу Sass::CacheStores::Base.
Користувальницькі імпортери
SASS використовує @import для імпорту файлів SCSS і SASS і передає шляху правило @import, щоб знайти відповідний код шляхи для зазначених шляхів. Імпортери SASS використовують файлову систему для завантаження коду і додаються до процесу завантаження з використанням бази даних або іншої структури файлів.
Один імпортер може виконувати завантаження по одному файлу, його можна помістити в масив load_paths разом з шляхами файлової системи. При використанні @import SASS шукає шляхи завантажені, які надають шлях для імпортера. Коли шлях знайдений, використовується імпортований файл. Користувач може успадковувати імпортери з Sass::Importers::Base.