On Feb 6, 2008 5:03 PM, chromatic <[EMAIL PROTECTED]> wrote: > On Wednesday 06 February 2008 16:33:11 [EMAIL PROTECTED] wrote: > > + if (PARROT_ARG_SLURPY_ARRAY_ISSET(sig_item)){ > > + if (PARROT_ARG_NAME_ISSET(sig_item)) > > + sub->arg_info->named_slurpy = 1; > > + else > > + sub->arg_info->pos_slurpy = 1; > > + } > > + else if (PARROT_ARG_OPTIONAL_ISSET(sig_item)) { > > + if (PARROT_ARG_NAME_ISSET(sig_item)) > > + sub->arg_info->named_optional++; > > + else > > + sub->arg_info->pos_optional++; > > + } > > + else if (!PARROT_ARG_OPT_FLAG_ISSET(sig_item)) { > > + if (PARROT_ARG_NAME_ISSET(sig_item)) > > + sub->arg_info->named_required++; > > + else > > + sub->arg_info->pos_required++; > > + } > > This logic confuses me slightly. What's the difference between OPTIONAL and > OPT_FLAG? >
.sub 'lol' .param pmc cheezburger :optional .param int i_can_haz_cheezburger :opt_flag unless i_can_haz_cheezburger goto frowny_face print "yay! i haz a " say cheezburger .return () frowny_face: say ":(" .end so, you see, we don't really care about opt_flag for arity purposes, however, we may decide to add it to inspect for completeness in the future. ~jerry