修改函数#

modify-argument#

函数修改由包含在 modify-functionadd-functiondeclare-function 节点中的 modify-argument 节点列表组成。使用 remove-argumentreplace-default-expressionremove-default-expressionreplace-typereference-countdefine-ownership 节点来指定修改的细节。

<modify-function>
    <modify-argument index="return | this | 1 ..." rename="..."
     invalidate-after-use = "true | false" pyi-type="...">
        // modifications
    </modify-argument>
</modify-function>

index 属性设置为“1”代表第一个参数,“2”代表第二个参数,依此类推。如果您想修改函数的返回值或函数所调用的对象,可以将它设置为数““return”或“this”。

可选的 rename 属性用于重命名参数并使用新的名称在生成的代码中。此属性可用于启用 keyword arguments 的使用。

可选的 pyi-type 属性用于指定出现在签名字符串和 .pyi 文件中的类型。类型字符串由检查此属性值、 replace-type 修改和 C++ 类型来决定。属性可用于例如将指针返回值包围在 Optional[] 中,以表示可以发生 None

有关可选的 invalidate-after-use 属性,请参阅 Invalidation after use