.declare
не входит в стандартную библиотеку Ruby. Кажется, он существует в камне Сасса.
Он объявлен в модуле Sass :: Script :: Функции: here
Вот соответствующий documentation:
DECLARE (METHOD_NAME, арг, опции = {})
Объявите подпись Sass для функции, определенной в Ruby. Сюда входят имена аргументов, независимо от того, принимает ли функция переменное количество аргументов и выполняет ли функция произвольный набор аргументов ключевого слова.
Нет необходимости объявлять подпись для функции. Однако без подписи он не будет поддерживать аргументы ключевых слов.
Одна функция может содержать несколько подписей, если каждая из них принимает различное количество аргументов. Также можно объявить несколько подписей, что все принимают одинаковое количество аргументов, но ни один из них, кроме первого, не будет использоваться, если пользователь не использует аргументы ключевого слова.
Примеры:
declare :rgba, [:hex, :alpha]
declare :rgba, [:red, :green, :blue, :alpha]
declare :accepts_anything, [], :var_args => true, :var_kwargs => true
declare :some_func, [:foo, :bar, :baz], :var_kwargs => true
Параметры:
method_name (Symbol) —
The name of the method whose signature is being declared.
args (Array<Symbol>) —
The names of the arguments for the function signature.
options (Hash) (defaults to: {}) —
a customizable set of options
Опции Hash (опции):
:var_args (Boolean) — default: false —
Whether the function accepts a variable number of (unnamed) arguments in addition to the named arguments.
:var_kwargs (Boolean) — default: false —
Whether the function accepts other keyword arguments in addition to those in :args. If this is true, the Ruby function will be passed a hash from strings to Literals as the last argument. In addition, if this is true and :var_args is not, Sass will ensure that the last argument passed is a hash.
Где найти этот код, направьте нам ссылку также .. –
Какие драгоценные камни участвуют? –
Хороший вопрос. Вот Gemfile: источник: Gemcutter камень 'грабли' и Gemfile.lock: источник: Gemcutter камень 'грабли' – user2653980