الفرق بين المراجعتين ل"Sass/declare"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط (مراجعة الصفحة وتدقيقها.)
ط (تصحيح بعض المصطلحات.)
سطر 28: سطر 28:
  
 
=== <code>‎:‎var_kwargs‎</code> ===
 
=== <code>‎:‎var_kwargs‎</code> ===
هذا الخيار هو قيمة منطقية يحدّد ما إذا كانت الدالة ستقبل وسائط مُسمّاةٍ أخرى إضافةً إلى تلك الموجودة في ‏‏<code>‎:args</code>. إذا كانت قيمته <code>true</code>، فسيُمرّر لدالة روبي قاموسًا يربط بين سلاسل نصّية وقيم كوسيطٍ أخيرٍ. أمّا إن كانت قيمته <code>true</code> وقيمةُ الخيار  ‎<code>:var_args</code> تساوي <code>false</code>، فستحرص [[Sass]] على أن يكون الوسيط الأخير قاموسًا. قيمته الافتراضية هي <code>false</code>.
+
هذا الخيار هو قيمة منطقية يحدّد ما إذا كانت الدالة ستقبل وسائط مُسمّاةٍ أخرى إضافةً إلى تلك الموجودة في ‏‏<code>‎:args</code>. إذا كانت قيمته <code>true</code>، فسيُمرّر لدالة روبي [[Sass/SassScript#.D8.A7.D9.84.D8.AE.D8.B1.D8.A7.D8.A6.D8.B7 .28Maps.29|خريطة]] تربط بين سلاسل نصّية وقيم كوسيطٍ أخيرٍ. أمّا إن كانت قيمته <code>true</code> وقيمةُ الخيار  ‎<code>:var_args</code> تساوي <code>false</code>، فستحرص [[Sass]] على أن يكون الوسيط الأخير [[Sass/SassScript#.D8.A7.D9.84.D8.AE.D8.B1.D8.A7.D8.A6.D8.B7 .28Maps.29|خريطة]]. قيمته الافتراضية هي <code>false</code>.
  
 
== أمثلة ==
 
== أمثلة ==

مراجعة 07:57، 2 مايو 2018

تُصرّح بتوقيع (signature) خاص بلغة Sass لأجل دوال روبي. يتضمن التوقيع أسماءَ الوسائط، وهل ستأخذ الدالة عددًا متغيرًا من الوسائط، وما إن كانت الدالة ستقبل مجموعة عشوائيةً من الوسائط المُسمّاة (keyword arguments).

التصريح بالتوقيع ليس ضروريًا ولكن لن تدعم الدالةُ بدونه الوسائط المُسمّاة.

يمكن أن يكون لدالةٍ واحدةٍ أكثر من توقيع واحدٍ طالما أنّ كلَّ توقيع يأخذ عددًا مختلفًا من الوسائط. من الممكن أيضًا التصريح بعدة تواقيع تقبل جميعُها نفس العدد من الوسائط، ولكن لن يُستخدم في تلك الحالة سوى التوقيع الأول إلّا إذا استعمل المُستخدم الوسائط المُسمّاة.

البنية العامة

declare(method_name, args, options = {})

المعاملات

method_name

اسم الدالة التي سيُصرَّح بتوقيعها.

args

مصفوفة تضم أسماء الوسائط الموجودة في توقيع الدالة.

option

مجموعة من الخيارات القابلة للتخصيص، وقيمته الافتراضية هي {}.

الخيارات (options)

‎:var_args

هذا الخيار هو قيمة منطقية (Boolean) يحدّد ما إذا كانت الدالة ستقبل عددًا متغيرًا من الوسائط (غير المسماة) إضافةً إلى الوسائط المسماة. قيمته الافتراضية هي false.

‎:‎var_kwargs‎

هذا الخيار هو قيمة منطقية يحدّد ما إذا كانت الدالة ستقبل وسائط مُسمّاةٍ أخرى إضافةً إلى تلك الموجودة في ‏‏‎:args. إذا كانت قيمته true، فسيُمرّر لدالة روبي خريطة تربط بين سلاسل نصّية وقيم كوسيطٍ أخيرٍ. أمّا إن كانت قيمته true وقيمةُ الخيار ‎:var_args تساوي false، فستحرص Sass على أن يكون الوسيط الأخير خريطة. قيمته الافتراضية هي false.

أمثلة

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

مصادر