当PP
sub 被调用时CX
,这个 sub 被创建。
通过访问这个上下文,CxHASARGS(CX_CUR())
我们可以检查这个子hasargs
是否。
但是对于XSUB
上下文没有创建,所以我们不能使用这个技巧。
是否有可能知道使用或不XSUB
调用?&sub
UPD在何时
查看来源。我们可以看到代码如何处理. 它访问然后稍后调用目标:pp_entersub
cv
XSUB
hasargs
PL_op->op_flags & OPf_STACKED
XSUB
if( PL_op->op_flags & OPf_STACKED ...
...
CvXSUB(cv)(aTHX_ cv);
如果我在我XSUB
做同样的检查可以PL_op->op_flags & OPf_STACKED
吗?