当调用PP
sub时,会创建此sub的CX
通过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
对 id
bin_015 0 1 2 3 4 5
bin_01
0 5339604.0 NaN NaN NaN NaN NaN
1 377342.0 122580.0 85688.0 9501.0 1095.0 156.0
2 NaN 235426.0 313317.0 17025.0 456.0 33.0
3 NaN 16581.0 10759.0 40005.0 3422.0 84.0
4 NaN 1712.0 387.0 1851.0 8746.0 756.0
5 NaN 239.0 40.0 50.0 353.0 2197.0
进行同样的检查,那会没关系吗?