在 expl3 中,\str_case:Nn
和\str_case:Vn
变体都是预先生成的。在 interface3 文档中,变体似乎\str_case:Vn
是从变体自动生成的\str_case:nn
,而\str_case:Nn
变体似乎是其自己的单独实现。这两个变体在语义或速度上有什么区别吗?
答案1
让我来做
latexdef str_case:Nn str_case:Vn
输出为
\str_case:Nn:
\long macro:->\exp_args:NV \str_case:nn
\str_case:Vn:
\long macro:->\exp_args:NV \str_case:nn
所以两个功能完全相同。
Nn
为了保持一致性,最近添加了变体。