التابع Proc.arity
في روبي
يُعيد التابع arity
عدد الوسائط الإلزاميَّة في الكائن proc
الذي استدعي معه. إذا عُرِّفت الكتلة (block) من دون وسائط، فسيُعيد التابع القيمة 0
. إذا عُرِّفت الكتلة مع عدد محدَّد n
من الوسائط، فسيُعيد التابع ذلك العدد n
. إذا كان للكتلة وسائط اختيارية، فسيُعيد التابع 1-n-
، إذ يمثِّل n
عدد الوسائط الإلزامية، باستثناء الكتل التي ليست من النوع lambda
والتي تمتلك عددًا محدودًا من الوسائط الاختيارية؛ في هذه الحالة الأخيرة، يُعيد التابع العدد n
. تُعتبر وسائط الكلمة المفتاحية (keyword argument) وسيطًا إضافيًّا واحدًا، ويصبح ذلك الوسيط إلزاميًّا إذا كان أيٌّ من وسائط الكلمة المفتاحية إلزاميًّا. تعريف كتلة proc
من دون وسائط مشابه لتعريف كتلة على أنَّ ||
هي وسائطها.
البنية العامة
arity → integer
القيم المعادة
تُعاد القيمة 0
إذا عُرِّفت الكتلة من دون وسائط، أو يُعاد العدد n
إذا عُرِّفت الكتلة مع عدد محدَّد n
من الوسائط، أو يُعاد العدد 1-n-
إذا كان للكتلة وسائط اختيارية، إذ يمثِّل n
عدد الوسائط الإلزامية. باستثناء الكتل التي ليست من النوع lambda
والتي تمتلك عدد محدود من الوسائط الاختيارية، يُعاد عندها العدد n
.
أمثلة
مثالٌ عن استخدام التابع arity
:
proc {}.arity #=> 0
proc { || }.arity #=> 0
proc { |a| }.arity #=> 1
proc { |a, b| }.arity #=> 2
proc { |a, b, c| }.arity #=> 3
proc { |*a| }.arity #=> -1
proc { |a, *b| }.arity #=> -2
proc { |a, *b, c| }.arity #=> -3
proc { |x:, y:, z:0| }.arity #=> 1
proc { |*a, x:, y:0| }.arity #=> -2
proc { |a=0| }.arity #=> 0
lambda { |a=0| }.arity #=> -1
proc { |a=0, b| }.arity #=> 1
lambda { |a=0, b| }.arity #=> -2
proc { |a=0, b=0| }.arity #=> 0
lambda { |a=0, b=0| }.arity #=> -1
proc { |a, b=0| }.arity #=> 1
lambda { |a, b=0| }.arity #=> -2
proc { |(a, b), c=0| }.arity #=> 1
lambda { |(a, b), c=0| }.arity #=> -2
proc { |a, x:0, y:0| }.arity #=> 1
lambda { |a, x:0, y:0| }.arity #=> -2
انظر أيضًا
- التابع
binding
: يُعيد الرَّبط الموافق للكائنProc
الذي استدعي معه. - التابع
curry
: يُعيد كتلةproc
مقسَّمة. - التابع
to_s
: يُعيد المُعرِّف الفريد لكتلةproc
محدّدة بالتزامن مع إشارة لمكان تعريف هذه الكتلة. - التابع
parameters
: يُعيد معلوماتٍ عن معاملات كتلة محدَّدة من النوعproc
. - التابع
source_location
: يُعيد اسم ملف روبي المصدري ورقم السَّطر الحاوي على كتلةproc
محدَّدة.